WebAssembly: Import spec tests
https://bugs.webkit.org/show_bug.cgi?id=166395
Rubber stamped by Keith Miller.
JSTests:
This patch implements the Wasm spec's tests found here:
https://github.com/WebAssembly/spec/tree/master/interpreter/test
These tests are in .wast s-epxression format. To convert
them to JS, I use a script from the wabt library, found here:
https://github.com/WebAssembly/wabt/blob/master/test/run-gen-spec-js.py
I also added a script that automatically imports the tests as
JS files. The inputs to the script is the path to the Wasm spec
git repo and the path to the wabt git repo. This will make importing
new tests easy in the future.
The wasm spec imported is at commit: b055d01ea1dfdd7a5231ae779095435f836de97f
The wabt used to do the import is at commit: 622b42dced6d793e9d49e9b1fd1d1524defd1387
* wasm.yaml:
* wasm/import-spec-tests.rb: Added.
* wasm/spec-tests: Added.
* wasm/spec-tests/address.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/binary.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/block.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/br.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/br_if.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/br_table.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/break-drop.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/call.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/call_indirect.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/comments.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/conversions.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/custom_section.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/endianness.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/exports.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/f32.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/f32_cmp.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/f64.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/f64_cmp.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/fac.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/float_exprs.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/float_literals.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/float_memory.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/float_misc.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/forward.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/func.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/func_ptrs.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/get_local.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/globals.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/i32.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/i64.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/imports.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/int_exprs.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/int_literals.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/left-to-right.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/linking.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/loop.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/memory.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/memory_redundancy.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/memory_trap.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/names.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/nop.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/resizing.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/return.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/select.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/set_local.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/skip-stack-guard-page.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/stack.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/start.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/store_retval.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/switch.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/tee_local.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/traps.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/typecheck.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/unreachable.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
* wasm/spec-tests/unwind.wast.js: Added.
(register):
(module):
(instance):
(assert_malformed):
(assert_invalid):
(assert_soft_invalid):
(assert_unlinkable):
(assert_uninstantiable):
(assert_trap):
(assert_return):
(assert_return_nan):
Tools:
* Scripts/run-jsc-stress-tests:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@210087 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/JSTests/ChangeLog b/JSTests/ChangeLog
index d94d98b..b23b5b6 100644
--- a/JSTests/ChangeLog
+++ b/JSTests/ChangeLog
@@ -1,36 +1,688 @@
-2016-12-21 Keith Miller <keith_miller@apple.com>
+2016-12-21 Saam Barati <sbarati@apple.com>
- Unreviewed, mark passing test as passing.
+ WebAssembly: Import spec tests
+ https://bugs.webkit.org/show_bug.cgi?id=166395
- * es6.yaml:
+ Rubber stamped by Keith Miller.
-2016-12-21 JF Bastien <jfbastien@apple.com>
+ This patch implements the Wasm spec's tests found here:
+ https://github.com/WebAssembly/spec/tree/master/interpreter/test
+
+ These tests are in .wast s-epxression format. To convert
+ them to JS, I use a script from the wabt library, found here:
+ https://github.com/WebAssembly/wabt/blob/master/test/run-gen-spec-js.py
+
+ I also added a script that automatically imports the tests as
+ JS files. The inputs to the script is the path to the Wasm spec
+ git repo and the path to the wabt git repo. This will make importing
+ new tests easy in the future.
- WebAssembly JS API: cleanup & pass VM around to {Compile/Runtime}Error
- https://bugs.webkit.org/show_bug.cgi?id=166295
- <rdar://problem/29762017>
+ The wasm spec imported is at commit: b055d01ea1dfdd7a5231ae779095435f836de97f
+ The wabt used to do the import is at commit: 622b42dced6d793e9d49e9b1fd1d1524defd1387
- Reviewed by Mark Lam.
-
- Update tests to generate new error messages. Adapt some to use the
- assert.js module.
-
- * wasm/assert.js: allow filtering out sometimes-useless source
- location information. Return the exception so that further
- processing can occur on it as desired.
- * wasm/function-tests/exceptions.js:
- * wasm/function-tests/trap-load-2.js:
- (assert): Deleted.
- (i.catch): Deleted.
- * wasm/function-tests/trap-load.js:
- (assert): Deleted.
- (i.catch): Deleted.
- * wasm/function-tests/trap-store-2.js:
- (import.Builder.from.string_appeared_here.assert): Deleted.
- (i.catch): Deleted.
- * wasm/function-tests/trap-store.js:
- (import.Builder.from.string_appeared_here.assert): Deleted.
- (i.catch): Deleted.
+ * wasm.yaml:
+ * wasm/import-spec-tests.rb: Added.
+ * wasm/spec-tests: Added.
+ * wasm/spec-tests/address.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/binary.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/block.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/br.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/br_if.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/br_table.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/break-drop.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/call.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/call_indirect.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/comments.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/conversions.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/custom_section.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/endianness.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/exports.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/f32.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/f32_cmp.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/f64.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/f64_cmp.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/fac.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/float_exprs.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/float_literals.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/float_memory.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/float_misc.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/forward.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/func.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/func_ptrs.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/get_local.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/globals.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/i32.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/i64.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/imports.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/int_exprs.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/int_literals.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/left-to-right.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/linking.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/loop.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/memory.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/memory_redundancy.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/memory_trap.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/names.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/nop.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/resizing.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/return.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/select.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/set_local.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/skip-stack-guard-page.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/stack.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/start.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/store_retval.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/switch.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/tee_local.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/traps.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/typecheck.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/unreachable.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
+ * wasm/spec-tests/unwind.wast.js: Added.
+ (register):
+ (module):
+ (instance):
+ (assert_malformed):
+ (assert_invalid):
+ (assert_soft_invalid):
+ (assert_unlinkable):
+ (assert_uninstantiable):
+ (assert_trap):
+ (assert_return):
+ (assert_return_nan):
2016-12-20 Keith Miller <keith_miller@apple.com>
diff --git a/JSTests/wasm.yaml b/JSTests/wasm.yaml
index 725fe45..e533af1 100644
--- a/JSTests/wasm.yaml
+++ b/JSTests/wasm.yaml
@@ -26,4 +26,170 @@
- path: wasm/js-api/
cmd: runWebAssembly
- path: wasm/function-tests
- cmd: runWebAssembly
\ No newline at end of file
+ cmd: runWebAssembly
+
+- path: wasm/spec-tests/address.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/binary.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/block.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/br.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/br_if.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/br_table.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/break-drop.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/call.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/call_indirect.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/comments.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/conversions.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/custom_section.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/endianness.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/exports.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/f32.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/f32_cmp.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/f64.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/f64_cmp.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/fac.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/float_exprs.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/float_literals.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/float_memory.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/float_misc.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/forward.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/func.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/func_ptrs.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/get_local.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/globals.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/i32.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/i64.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/imports.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/int_exprs.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/int_literals.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/left-to-right.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/linking.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/loop.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/memory.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/memory_redundancy.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/memory_trap.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/names.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/nop.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/resizing.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/return.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/select.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/set_local.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/skip-stack-guard-page.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/stack.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/start.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/store_retval.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/switch.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/tee_local.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/traps.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/typecheck.wast.js
+ cmd: runWebAssemblySpecTest :normal
+
+- path: wasm/spec-tests/unreachable.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
+- path: wasm/spec-tests/unwind.wast.js
+ cmd: runWebAssemblySpecTest :skip
+
diff --git a/JSTests/wasm/import-spec-tests.rb b/JSTests/wasm/import-spec-tests.rb
new file mode 100644
index 0000000..e70ac22
--- /dev/null
+++ b/JSTests/wasm/import-spec-tests.rb
@@ -0,0 +1,101 @@
+#!/usr/bin/env ruby
+
+# Copyright (C) 2016 Apple Inc. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+# DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+require 'fileutils'
+require 'getoptlong'
+require 'pathname'
+require 'rbconfig'
+require 'open3'
+
+THIS_SCRIPT_PATH = Pathname.new(__FILE__).realpath
+WASM_PATH = THIS_SCRIPT_PATH.dirname
+raise unless WASM_PATH.basename.to_s == "wasm"
+raise unless WASM_PATH.dirname.basename.to_s == "JSTests"
+
+def usage
+ puts ""
+ puts "usage:"
+ puts " import-spec-tests.rb --spec <path-to-wasm-spec-git-repo> --wabt <path-to-wabt-git-repo> [-v]"
+ puts ""
+ puts " wabt's git repo can be found here: https://github.com/WebAssembly/wabt"
+ puts " the wasm spec's git repo can be found here: https://github.com/WebAssembly/spec"
+ puts ""
+ exit 1
+end
+
+$specDirectory = nil
+$wabtDirectory = nil
+$verbose = false
+
+GetoptLong.new(['--spec',GetoptLong::REQUIRED_ARGUMENT],
+ ['--wabt', GetoptLong::REQUIRED_ARGUMENT],
+ ['-v', GetoptLong::OPTIONAL_ARGUMENT],
+ ['--help', GetoptLong::OPTIONAL_ARGUMENT],
+ ).each {
+ | opt, arg |
+ case opt
+ when '--help'
+ usage
+ when '--spec'
+ $specDirectory = arg
+ when '--wabt'
+ $wabtDirectory = arg
+ when '-v'
+ $verbose = true
+ end
+}
+
+raise unless $specDirectory
+raise unless $wabtDirectory
+
+$resultDirectory = File.join(WASM_PATH, "spec-tests")
+
+begin
+ FileUtils.remove_dir($resultDirectory)
+rescue
+ puts "No directroy: #{$resultDirectory}" if $verbose
+end
+
+FileUtils.mkdir($resultDirectory)
+
+$wabtScript = File.join($wabtDirectory, "test", "run-gen-spec-js.py")
+
+Dir.entries(File.join($specDirectory, "interpreter", "test")).each {
+ | wast |
+
+ next if File.extname(wast) != ".wast"
+
+ stdout, stderr, status = Open3.capture3("#{$wabtScript} #{File.join($specDirectory, "interpreter", "test", wast)}")
+ if stderr != ""
+ puts "Skipping making test for file: #{wast} because of a wabt error"
+ puts "The error is:\n--------------\n #{stderr}\n--------------\n" if $verbose
+ else
+ resultFile = wast + ".js"
+ puts "Creating imported JS file: #{File.join($resultDirectory, resultFile)}"
+ File.open(File.join($resultDirectory, resultFile), "w") {
+ |f| f.write(stdout)
+ }
+ end
+}
diff --git a/JSTests/wasm/spec-tests/address.wast.js b/JSTests/wasm/spec-tests/address.wast.js
new file mode 100644
index 0000000..7986e00
--- /dev/null
+++ b/JSTests/wasm/spec-tests/address.wast.js
@@ -0,0 +1,100 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x03\x03\x02\x00\x00\x05\x03\x01\x00\x01\x07\x0e\x02\x04\x67\x6f\x6f\x64\x00\x01\x03\x62\x61\x64\x00\x02\x0a\x6c\x02\x5d\x00\x20\x00\x2d\x00\x00\x10\x00\x20\x00\x2d\x00\x01\x10\x00\x20\x00\x2d\x00\x02\x10\x00\x20\x00\x2d\x00\x19\x10\x00\x20\x00\x2f\x01\x00\x10\x00\x20\x00\x2f\x00\x00\x10\x00\x20\x00\x2f\x00\x01\x10\x00\x20\x00\x2f\x01\x02\x10\x00\x20\x00\x2f\x00\x19\x10\x00\x20\x00\x28\x02\x00\x10\x00\x20\x00\x28\x00\x01\x10\x00\x20\x00\x28\x01\x02\x10\x00\x20\x00\x28\x00\x19\x10\x00\x0b\x0c\x00\x20\x00\x28\x02\xff\xff\xff\xff\x0f\x1a\x0b\x0b\x20\x01\x00\x41\x00\x0b\x1a\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a");
+$$.exports["good"](0);
+$$.exports["good"](65507);
+assert_trap(() => $$.exports["good"](65508));
+assert_trap(() => $$.exports["bad"](0));
+assert_trap(() => $$.exports["bad"](1));
diff --git a/JSTests/wasm/spec-tests/binary.wast.js b/JSTests/wasm/spec-tests/binary.wast.js
new file mode 100644
index 0000000..6fb8e44
--- /dev/null
+++ b/JSTests/wasm/spec-tests/binary.wast.js
@@ -0,0 +1,110 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+let $M1 = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+let $M2 = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+assert_malformed("");
+assert_malformed("\x01");
+assert_malformed("\x00\x61\x73");
+assert_malformed("\x61\x73\x6d\x00");
+assert_malformed("\x6d\x73\x61\x00");
+assert_malformed("\x6d\x73\x61\x00\x0d\x00\x00\x00");
+assert_malformed("\x6d\x73\x61\x00\x00\x00\x00\x0d");
+assert_malformed("\x00\x61\x73\x6d");
+assert_malformed("\x00\x61\x73\x6d\x0d");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00");
+assert_malformed("\x00\x61\x73\x6d\x0e\x00\x00\x00");
+assert_malformed("\x00\x61\x73\x6d\x00\x00\x00\x0d");
diff --git a/JSTests/wasm/spec-tests/block.wast.js b/JSTests/wasm/spec-tests/block.wast.js
new file mode 100644
index 0000000..795099c
--- /dev/null
+++ b/JSTests/wasm/spec-tests/block.wast.js
@@ -0,0 +1,129 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x00\x60\x00\x01\x7f\x03\x10\x0f\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x07\xbe\x01\x0e\x05\x65\x6d\x70\x74\x79\x00\x01\x08\x73\x69\x6e\x67\x75\x6c\x61\x72\x00\x02\x05\x6d\x75\x6c\x74\x69\x00\x03\x06\x6e\x65\x73\x74\x65\x64\x00\x04\x04\x64\x65\x65\x70\x00\x05\x10\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x06\x11\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x07\x0f\x61\x73\x2d\x74\x65\x73\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x08\x12\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x09\x0a\x62\x72\x65\x61\x6b\x2d\x62\x61\x72\x65\x00\x0a\x0b\x62\x72\x65\x61\x6b\x2d\x76\x61\x6c\x75\x65\x00\x0b\x0e\x62\x72\x65\x61\x6b\x2d\x72\x65\x70\x65\x61\x74\x65\x64\x00\x0c\x0b\x62\x72\x65\x61\x6b\x2d\x69\x6e\x6e\x65\x72\x00\x0d\x07\x65\x66\x66\x65\x63\x74\x73\x00\x0e\x0a\xdd\x03\x0f\x02\x00\x0b\x08\x00\x02\x40\x0b\x02\x40\x0b\x0b\x0b\x00\x02\x40\x01\x0b\x02\x7f\x41\x07\x0b\x0b\x18\x00\x02\x40\x10\x00\x10\x00\x10\x00\x10\x00\x0b\x02\x7f\x10\x00\x10\x00\x10\x00\x41\x08\x0b\x0b\x15\x00\x02\x7f\x02\x40\x10\x00\x02\x40\x0b\x01\x0b\x02\x7f\x10\x00\x41\x09\x0b\x0b\x0b\x79\x00\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x10\x00\x41\x96\x01\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0a\x00\x02\x7f\x10\x00\x41\x0d\x0b\x68\x0b\x11\x00\x02\x7f\x10\x00\x41\x03\x0b\x02\x7f\x10\x00\x41\x04\x0b\x6c\x0b\x0a\x00\x02\x7f\x10\x00\x41\x0d\x0b\x45\x0b\x17\x00\x02\x7d\x10\x00\x43\x00\x00\x40\x40\x0b\x02\x7d\x10\x00\x43\x00\x00\x40\x40\x0b\x5e\x0b\x26\x00\x02\x40\x0c\x00\x00\x0b\x02\x40\x41\x01\x0d\x00\x00\x0b\x02\x40\x41\x00\x0e\x00\x00\x00\x0b\x02\x40\x41\x01\x0e\x02\x00\x00\x00\x00\x0b\x41\x13\x0b\x0b\x00\x02\x7f\x41\x12\x0c\x00\x41\x13\x0b\x0b\x31\x00\x02\x7f\x41\x12\x0c\x00\x41\x13\x0c\x00\x41\x14\x41\x00\x0d\x00\x1a\x41\x14\x41\x01\x0d\x00\x1a\x41\x15\x0c\x00\x41\x16\x41\x04\x0e\x00\x00\x41\x17\x41\x01\x0e\x02\x00\x00\x00\x41\x15\x0b\x0b\x45\x01\x01\x7f\x41\x00\x21\x00\x20\x00\x02\x7f\x02\x7f\x41\x01\x0c\x01\x0b\x0b\x6a\x21\x00\x20\x00\x02\x7f\x02\x40\x0c\x00\x0b\x41\x02\x0b\x6a\x21\x00\x20\x00\x02\x7f\x41\x04\x0c\x00\x68\x0b\x6a\x21\x00\x20\x00\x02\x7f\x02\x7f\x41\x08\x0c\x01\x0b\x68\x0b\x6a\x21\x00\x20\x00\x0b\x2f\x01\x01\x7f\x02\x40\x41\x01\x21\x00\x20\x00\x41\x03\x6c\x21\x00\x20\x00\x41\x05\x6b\x21\x00\x20\x00\x41\x07\x6c\x21\x00\x0c\x00\x20\x00\x41\xe4\x00\x6c\x21\x00\x0b\x20\x00\x41\x72\x46\x0b");
+assert_return(() => $$.exports["empty"]());
+assert_return(() => $$.exports["singular"](), 7);
+assert_return(() => $$.exports["multi"](), 8);
+assert_return(() => $$.exports["nested"](), 9);
+assert_return(() => $$.exports["deep"](), 150);
+assert_return(() => $$.exports["as-unary-operand"](), 0);
+assert_return(() => $$.exports["as-binary-operand"](), 12);
+assert_return(() => $$.exports["as-test-operand"](), 0);
+assert_return(() => $$.exports["as-compare-operand"](), 0);
+assert_return(() => $$.exports["break-bare"](), 19);
+assert_return(() => $$.exports["break-value"](), 18);
+assert_return(() => $$.exports["break-repeated"](), 18);
+assert_return(() => $$.exports["break-inner"](), 15);
+assert_return(() => $$.exports["effects"](), 1);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x02\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x02\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x02\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x02\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x02\x40\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x02\x40\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x43\x00\x00\x00\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x02\x7f\x0c\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x02\x7f\x0c\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x01\x0c\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x42\x01\x0c\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x40\x01\x0c\x00\x41\x01\x0c\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x02\x40\x42\x01\x0c\x00\x41\x01\x0c\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x02\x7f\x02\x7f\x41\x01\x0c\x01\x0b\x0c\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x02\x40\x02\x40\x0c\x01\x0b\x41\x01\x0c\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x11\x01\x0f\x00\x02\x40\x02\x40\x01\x0c\x01\x0b\x41\x01\x0c\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x12\x01\x10\x00\x02\x40\x02\x40\x42\x01\x0c\x01\x0b\x41\x01\x0c\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x02\x40\x0c\x00\x0b\x68\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x02\x40\x01\x0c\x00\x0b\x7a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x42\x09\x0c\x00\x0b\x7a\x0b");
diff --git a/JSTests/wasm/spec-tests/br.wast.js b/JSTests/wasm/spec-tests/br.wast.js
new file mode 100644
index 0000000..5e334c7
--- /dev/null
+++ b/JSTests/wasm/spec-tests/br.wast.js
@@ -0,0 +1,162 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x28\x08\x60\x00\x00\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x02\x7f\x7f\x01\x7f\x60\x03\x7f\x7f\x7f\x01\x7f\x60\x03\x7f\x7f\x7f\x01\x7f\x03\x40\x3f\x00\x00\x00\x00\x00\x01\x02\x03\x04\x00\x00\x00\x01\x01\x01\x01\x01\x00\x01\x01\x00\x01\x01\x02\x01\x05\x05\x05\x05\x01\x06\x01\x01\x01\x01\x01\x01\x01\x01\x03\x02\x01\x01\x01\x01\x03\x01\x02\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x04\x05\x01\x70\x01\x01\x01\x05\x03\x01\x00\x01\x07\xb6\x08\x3d\x08\x74\x79\x70\x65\x2d\x69\x33\x32\x00\x01\x08\x74\x79\x70\x65\x2d\x69\x36\x34\x00\x02\x08\x74\x79\x70\x65\x2d\x66\x33\x32\x00\x03\x08\x74\x79\x70\x65\x2d\x66\x36\x34\x00\x04\x0e\x74\x79\x70\x65\x2d\x69\x33\x32\x2d\x76\x61\x6c\x75\x65\x00\x05\x0e\x74\x79\x70\x65\x2d\x69\x36\x34\x2d\x76\x61\x6c\x75\x65\x00\x06\x0e\x74\x79\x70\x65\x2d\x66\x33\x32\x2d\x76\x61\x6c\x75\x65\x00\x07\x0e\x74\x79\x70\x65\x2d\x66\x36\x34\x2d\x76\x61\x6c\x75\x65\x00\x08\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x66\x69\x72\x73\x74\x00\x09\x0c\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6d\x69\x64\x00\x0a\x0d\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6c\x61\x73\x74\x00\x0b\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x00\x0c\x0d\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x66\x69\x72\x73\x74\x00\x0d\x0b\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6d\x69\x64\x00\x0e\x0c\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6c\x61\x73\x74\x00\x0f\x0b\x61\x73\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x10\x0d\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x63\x6f\x6e\x64\x00\x11\x0e\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x00\x12\x13\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x2d\x63\x6f\x6e\x64\x00\x13\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x69\x6e\x64\x65\x78\x00\x14\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x15\x17\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x2d\x69\x6e\x64\x65\x78\x00\x16\x0f\x61\x73\x2d\x72\x65\x74\x75\x72\x6e\x2d\x76\x61\x6c\x75\x65\x00\x17\x0a\x61\x73\x2d\x69\x66\x2d\x63\x6f\x6e\x64\x00\x18\x0a\x61\x73\x2d\x69\x66\x2d\x74\x68\x65\x6e\x00\x19\x0a\x61\x73\x2d\x69\x66\x2d\x65\x6c\x73\x65\x00\x1a\x0f\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x1b\x10\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x73\x65\x63\x6f\x6e\x64\x00\x1c\x0e\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x63\x6f\x6e\x64\x00\x1d\x0d\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x66\x69\x72\x73\x74\x00\x1f\x0b\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6d\x69\x64\x00\x20\x0c\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6c\x61\x73\x74\x00\x21\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x75\x6e\x63\x00\x22\x16\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x23\x14\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6d\x69\x64\x00\x24\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6c\x61\x73\x74\x00\x25\x12\x61\x73\x2d\x73\x65\x74\x5f\x6c\x6f\x63\x61\x6c\x2d\x76\x61\x6c\x75\x65\x00\x26\x0f\x61\x73\x2d\x6c\x6f\x61\x64\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x27\x10\x61\x73\x2d\x6c\x6f\x61\x64\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x28\x10\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x29\x0e\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x76\x61\x6c\x75\x65\x00\x2a\x11\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2b\x0f\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x76\x61\x6c\x75\x65\x00\x2c\x10\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x2d\x0e\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6c\x65\x66\x74\x00\x2e\x0f\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x72\x69\x67\x68\x74\x00\x2f\x0f\x61\x73\x2d\x74\x65\x73\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x30\x0f\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6c\x65\x66\x74\x00\x31\x10\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x72\x69\x67\x68\x74\x00\x32\x12\x61\x73\x2d\x63\x6f\x6e\x76\x65\x72\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x33\x13\x61\x73\x2d\x67\x72\x6f\x77\x5f\x6d\x65\x6d\x6f\x72\x79\x2d\x73\x69\x7a\x65\x00\x34\x12\x6e\x65\x73\x74\x65\x64\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x00\x35\x0f\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x36\x12\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x00\x37\x17\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x2d\x63\x6f\x6e\x64\x00\x38\x15\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x39\x1b\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x2d\x69\x6e\x64\x65\x78\x00\x3a\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x3b\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x3c\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x3d\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x3e\x09\x07\x01\x00\x41\x00\x0b\x01\x1e\x0a\xd8\x07\x3f\x02\x00\x0b\x09\x00\x02\x40\x0c\x00\x68\x1a\x0b\x0b\x09\x00\x02\x40\x0c\x00\x7a\x1a\x0b\x0b\x09\x00\x02\x40\x0c\x00\x8c\x1a\x0b\x0b\x09\x00\x02\x40\x0c\x00\x9a\x1a\x0b\x0b\x0a\x00\x02\x7f\x41\x01\x0c\x00\x68\x0b\x0b\x0a\x00\x02\x7e\x42\x02\x0c\x00\x7a\x0b\x0b\x0d\x00\x02\x7d\x43\x00\x00\x40\x40\x0c\x00\x8c\x0b\x0b\x11\x00\x02\x7c\x44\x00\x00\x00\x00\x00\x00\x10\x40\x0c\x00\x9a\x0b\x0b\x09\x00\x02\x40\x0c\x00\x10\x00\x0b\x0b\x0b\x00\x02\x40\x10\x00\x0c\x00\x10\x00\x0b\x0b\x0a\x00\x02\x40\x01\x10\x00\x0c\x00\x0b\x0b\x0c\x00\x02\x7f\x01\x10\x00\x41\x02\x0c\x00\x0b\x0b\x0e\x00\x02\x7f\x03\x7f\x41\x03\x0c\x01\x41\x02\x0b\x0b\x0b\x10\x00\x02\x7f\x03\x7f\x10\x00\x41\x04\x0c\x01\x41\x02\x0b\x0b\x0b\x0f\x00\x02\x7f\x03\x7f\x01\x10\x00\x41\x05\x0c\x01\x0b\x0b\x0b\x0b\x00\x02\x7f\x41\x09\x0c\x00\x0c\x00\x0b\x0b\x09\x00\x02\x40\x0c\x00\x0d\x00\x0b\x0b\x10\x00\x02\x7f\x41\x08\x0c\x00\x41\x01\x0d\x00\x1a\x41\x07\x0b\x0b\x10\x00\x02\x7f\x41\x06\x41\x09\x0c\x00\x0d\x00\x1a\x41\x07\x0b\x0b\x0c\x00\x02\x40\x0c\x00\x0e\x02\x00\x00\x00\x0b\x0b\x12\x00\x02\x7f\x41\x0a\x0c\x00\x41\x01\x0e\x02\x00\x00\x00\x41\x07\x0b\x0b\x11\x00\x02\x7f\x41\x06\x41\x0b\x0c\x00\x0e\x01\x00\x00\x41\x07\x0b\x0b\x0a\x00\x02\x7e\x42\x07\x0c\x00\x0f\x0b\x0b\x11\x00\x02\x7f\x41\x02\x0c\x00\x04\x7f\x41\x00\x05\x41\x01\x0b\x0b\x0b\x11\x00\x02\x7f\x20\x00\x04\x7f\x41\x03\x0c\x01\x05\x20\x01\x0b\x0b\x0b\x11\x00\x02\x7f\x20\x00\x04\x7f\x20\x01\x05\x41\x04\x0c\x01\x0b\x0b\x0b\x0e\x00\x02\x7f\x41\x05\x0c\x00\x20\x00\x20\x01\x1b\x0b\x0b\x0e\x00\x02\x7f\x20\x00\x41\x06\x0c\x00\x20\x01\x1b\x0b\x0b\x0e\x00\x02\x7f\x41\x00\x41\x01\x41\x07\x0c\x00\x1b\x0b\x0b\x04\x00\x41\x7f\x0b\x0f\x00\x02\x7f\x41\x0c\x0c\x00\x41\x02\x41\x03\x10\x1e\x0b\x0b\x0f\x00\x02\x7f\x41\x01\x41\x0d\x0c\x00\x41\x03\x10\x1e\x0b\x0b\x0f\x00\x02\x7f\x41\x01\x41\x02\x41\x0e\x0c\x00\x10\x1e\x0b\x0b\x12\x00\x02\x7f\x41\x14\x0c\x00\x41\x01\x41\x02\x41\x03\x11\x07\x00\x0b\x0b\x12\x00\x02\x7f\x41\x00\x41\x15\x0c\x00\x41\x02\x41\x03\x11\x07\x00\x0b\x0b\x12\x00\x02\x7f\x41\x00\x41\x01\x41\x16\x0c\x00\x41\x03\x11\x07\x00\x0b\x0b\x12\x00\x02\x7f\x41\x00\x41\x01\x41\x02\x41\x17\x0c\x00\x11\x07\x00\x0b\x0b\x0f\x01\x01\x7d\x02\x7f\x41\x11\x0c\x00\x21\x00\x41\x7f\x0b\x0b\x0f\x00\x02\x7d\x43\x9a\x99\xd9\x3f\x0c\x00\x2a\x02\x00\x0b\x0b\x0c\x00\x02\x7e\x42\x1e\x0c\x00\x30\x00\x00\x0b\x0b\x17\x00\x02\x7f\x41\x1e\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x1c\x40\x39\x03\x00\x41\x7f\x0b\x0b\x10\x00\x02\x7f\x41\x02\x41\x1f\x0c\x00\x37\x03\x00\x41\x7f\x0b\x0b\x10\x00\x02\x7f\x41\x20\x0c\x00\x41\x07\x3a\x00\x00\x41\x7f\x0b\x0b\x10\x00\x02\x7f\x41\x02\x41\x21\x0c\x00\x3d\x01\x00\x41\x7f\x0b\x0b\x0d\x00\x02\x7d\x43\x9a\x99\x59\x40\x0c\x00\x8c\x0b\x0b\x0c\x00\x02\x7f\x41\x03\x0c\x00\x41\x0a\x6a\x0b\x0b\x0c\x00\x02\x7e\x42\x0a\x42\x2d\x0c\x00\x7d\x0b\x0b\x0a\x00\x02\x7f\x41\x2c\x0c\x00\x45\x0b\x0b\x13\x00\x02\x7f\x41\x2b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x24\x40\x65\x0b\x0b\x0f\x00\x02\x7f\x43\x00\x00\x20\x41\x41\x2a\x0c\x00\x5c\x0b\x0b\x0a\x00\x02\x7f\x41\x29\x0c\x00\xa7\x0b\x0b\x0b\x00\x02\x7f\x41\x28\x0c\x00\x40\x00\x0b\x0b\x11\x00\x41\x01\x02\x7f\x10\x00\x41\x04\x41\x08\x0c\x00\x6a\x0b\x6a\x0b\x1a\x00\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x04\x1a\x41\x08\x0c\x01\x0c\x00\x0b\x1a\x41\x10\x0b\x6a\x0b\x1f\x00\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x04\x1a\x41\x08\x0c\x01\x41\x01\x0d\x00\x1a\x41\x20\x0b\x1a\x41\x10\x0b\x6a\x0b\x16\x00\x41\x01\x02\x7f\x41\x02\x1a\x41\x04\x41\x08\x0c\x00\x0d\x00\x1a\x41\x10\x0b\x6a\x0b\x1d\x00\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x04\x1a\x41\x08\x0c\x01\x41\x01\x0e\x00\x00\x0b\x1a\x41\x10\x0b\x6a\x0b\x16\x00\x41\x01\x02\x7f\x41\x02\x1a\x41\x04\x41\x08\x0c\x00\x0e\x00\x00\x41\x10\x0b\x6a\x0b\x0f\x00\x02\x40\x10\x06\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x17\x42\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x28\x42\x1e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x2f\x42\x2d\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-i32"]());
+assert_return(() => $$.exports["type-i64"]());
+assert_return(() => $$.exports["type-f32"]());
+assert_return(() => $$.exports["type-f64"]());
+assert_return(() => $$.exports["type-i32-value"](), 1);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["type-f32-value"](), f32(3.0));
+assert_return(() => $$.exports["type-f64-value"](), 4.0);
+assert_return(() => $$.exports["as-block-first"]());
+assert_return(() => $$.exports["as-block-mid"]());
+assert_return(() => $$.exports["as-block-last"]());
+assert_return(() => $$.exports["as-block-value"](), 2);
+assert_return(() => $$.exports["as-loop-first"](), 3);
+assert_return(() => $$.exports["as-loop-mid"](), 4);
+assert_return(() => $$.exports["as-loop-last"](), 5);
+assert_return(() => $$.exports["as-br-value"](), 9);
+assert_return(() => $$.exports["as-br_if-cond"]());
+assert_return(() => $$.exports["as-br_if-value"](), 8);
+assert_return(() => $$.exports["as-br_if-value-cond"](), 9);
+assert_return(() => $$.exports["as-br_table-index"]());
+assert_return(() => $$.exports["as-br_table-value"](), 10);
+assert_return(() => $$.exports["as-br_table-value-index"](), 11);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["as-if-cond"](), 2);
+assert_return(() => $$.exports["as-if-then"](1, 6), 3);
+assert_return(() => $$.exports["as-if-then"](0, 6), 6);
+assert_return(() => $$.exports["as-if-else"](0, 6), 4);
+assert_return(() => $$.exports["as-if-else"](1, 6), 6);
+assert_return(() => $$.exports["as-select-first"](0, 6), 5);
+assert_return(() => $$.exports["as-select-first"](1, 6), 5);
+assert_return(() => $$.exports["as-select-second"](0, 6), 6);
+assert_return(() => $$.exports["as-select-second"](1, 6), 6);
+assert_return(() => $$.exports["as-select-cond"](), 7);
+assert_return(() => $$.exports["as-call-first"](), 12);
+assert_return(() => $$.exports["as-call-mid"](), 13);
+assert_return(() => $$.exports["as-call-last"](), 14);
+assert_return(() => $$.exports["as-call_indirect-func"](), 20);
+assert_return(() => $$.exports["as-call_indirect-first"](), 21);
+assert_return(() => $$.exports["as-call_indirect-mid"](), 22);
+assert_return(() => $$.exports["as-call_indirect-last"](), 23);
+assert_return(() => $$.exports["as-set_local-value"](), 17);
+assert_return(() => $$.exports["as-load-address"](), f32(1.70000004768));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["as-store-address"](), 30);
+assert_return(() => $$.exports["as-store-value"](), 31);
+assert_return(() => $$.exports["as-storeN-address"](), 32);
+assert_return(() => $$.exports["as-storeN-value"](), 33);
+assert_return(() => $$.exports["as-unary-operand"](), f32(3.40000009537));
+assert_return(() => $$.exports["as-binary-left"](), 3);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["as-test-operand"](), 44);
+assert_return(() => $$.exports["as-compare-left"](), 43);
+assert_return(() => $$.exports["as-compare-right"](), 42);
+assert_return(() => $$.exports["as-convert-operand"](), 41);
+assert_return(() => $$.exports["as-grow_memory-size"](), 40);
+assert_return(() => $$.exports["nested-block-value"](), 9);
+assert_return(() => $$.exports["nested-br-value"](), 9);
+assert_return(() => $$.exports["nested-br_if-value"](), 9);
+assert_return(() => $$.exports["nested-br_if-value-cond"](), 9);
+assert_return(() => $$.exports["nested-br_table-value"](), 9);
+assert_return(() => $$.exports["nested-br_table-value-index"](), 9);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x02\x40\x0c\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x01\x0c\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x42\x01\x0c\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x0c\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x02\x40\x0c\x05\x0b\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x0c\x81\x80\x80\x80\x01\x0b");
diff --git a/JSTests/wasm/spec-tests/br_if.wast.js b/JSTests/wasm/spec-tests/br_if.wast.js
new file mode 100644
index 0000000..5014f65
--- /dev/null
+++ b/JSTests/wasm/spec-tests/br_if.wast.js
@@ -0,0 +1,152 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x12\x04\x60\x00\x00\x60\x01\x7f\x01\x7f\x60\x01\x7f\x00\x60\x02\x7f\x7f\x00\x03\x13\x12\x00\x01\x01\x02\x01\x01\x01\x01\x01\x02\x03\x03\x01\x01\x01\x01\x01\x01\x07\xc6\x02\x11\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x66\x69\x72\x73\x74\x00\x01\x0c\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6d\x69\x64\x00\x02\x0d\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6c\x61\x73\x74\x00\x03\x14\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x66\x69\x72\x73\x74\x2d\x76\x61\x6c\x75\x65\x00\x04\x12\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6d\x69\x64\x2d\x76\x61\x6c\x75\x65\x00\x05\x13\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6c\x61\x73\x74\x2d\x76\x61\x6c\x75\x65\x00\x06\x0d\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x66\x69\x72\x73\x74\x00\x07\x0b\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6d\x69\x64\x00\x08\x0c\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6c\x61\x73\x74\x00\x09\x0a\x61\x73\x2d\x69\x66\x2d\x74\x68\x65\x6e\x00\x0a\x0a\x61\x73\x2d\x69\x66\x2d\x65\x6c\x73\x65\x00\x0b\x12\x6e\x65\x73\x74\x65\x64\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x00\x0c\x0f\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x0d\x12\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x00\x0e\x17\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x2d\x63\x6f\x6e\x64\x00\x0f\x15\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x10\x1b\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x2d\x69\x6e\x64\x65\x78\x00\x11\x0a\xed\x02\x12\x02\x00\x0b\x0e\x00\x02\x40\x20\x00\x0d\x00\x41\x02\x0f\x0b\x41\x03\x0b\x10\x00\x02\x40\x10\x00\x20\x00\x0d\x00\x41\x02\x0f\x0b\x41\x03\x0b\x0d\x00\x02\x40\x10\x00\x10\x00\x20\x00\x0d\x00\x0b\x0b\x0f\x00\x02\x7f\x41\x0a\x20\x00\x0d\x00\x1a\x41\x0b\x0f\x0b\x0b\x11\x00\x02\x7f\x10\x00\x41\x14\x20\x00\x0d\x00\x1a\x41\x15\x0f\x0b\x0b\x0f\x00\x02\x7f\x10\x00\x10\x00\x41\x0b\x20\x00\x0d\x00\x0b\x0b\x11\x00\x02\x40\x03\x40\x20\x00\x0d\x01\x41\x02\x0f\x0b\x0b\x41\x03\x0b\x13\x00\x02\x40\x03\x40\x10\x00\x20\x00\x0d\x01\x41\x02\x0f\x0b\x0b\x41\x04\x0b\x0b\x00\x03\x40\x10\x00\x20\x00\x0d\x01\x0b\x0b\x11\x00\x02\x40\x20\x00\x04\x40\x20\x01\x0d\x01\x05\x10\x00\x0b\x0b\x0b\x11\x00\x02\x40\x20\x00\x04\x40\x10\x00\x05\x20\x01\x0d\x01\x0b\x0b\x0b\x1a\x00\x41\x01\x02\x7f\x41\x02\x1a\x41\x04\x02\x7f\x41\x08\x20\x00\x0d\x01\x1a\x41\x10\x0b\x6a\x0b\x6a\x0b\x1b\x00\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x08\x20\x00\x0d\x01\x1a\x41\x04\x0b\x0c\x00\x41\x10\x0b\x6a\x0b\x1e\x00\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x08\x20\x00\x0d\x01\x1a\x41\x04\x0b\x41\x01\x0d\x00\x1a\x41\x10\x0b\x6a\x0b\x1e\x00\x41\x01\x02\x7f\x41\x02\x1a\x41\x04\x02\x7f\x41\x08\x20\x00\x0d\x01\x1a\x41\x01\x0b\x0d\x00\x1a\x41\x10\x0b\x6a\x0b\x1e\x00\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x08\x20\x00\x0d\x01\x1a\x41\x04\x0b\x41\x01\x0e\x00\x00\x41\x10\x0b\x6a\x0b\x1e\x00\x41\x01\x02\x7f\x41\x02\x1a\x41\x04\x02\x7f\x41\x08\x20\x00\x0d\x01\x1a\x41\x01\x0b\x0e\x00\x00\x41\x10\x0b\x6a\x0b");
+assert_return(() => $$.exports["as-block-first"](0), 2);
+assert_return(() => $$.exports["as-block-first"](1), 3);
+assert_return(() => $$.exports["as-block-mid"](0), 2);
+assert_return(() => $$.exports["as-block-mid"](1), 3);
+assert_return(() => $$.exports["as-block-last"](0));
+assert_return(() => $$.exports["as-block-last"](1));
+assert_return(() => $$.exports["as-block-last-value"](0), 11);
+assert_return(() => $$.exports["as-block-last-value"](1), 11);
+assert_return(() => $$.exports["as-loop-first"](0), 2);
+assert_return(() => $$.exports["as-loop-first"](1), 3);
+assert_return(() => $$.exports["as-loop-mid"](0), 2);
+assert_return(() => $$.exports["as-loop-mid"](1), 4);
+assert_return(() => $$.exports["as-loop-last"](0));
+assert_return(() => $$.exports["as-loop-last"](1));
+assert_return(() => $$.exports["as-if-then"](0, 0));
+assert_return(() => $$.exports["as-if-then"](4, 0));
+assert_return(() => $$.exports["as-if-then"](0, 1));
+assert_return(() => $$.exports["as-if-then"](4, 1));
+assert_return(() => $$.exports["as-if-else"](0, 0));
+assert_return(() => $$.exports["as-if-else"](3, 0));
+assert_return(() => $$.exports["as-if-else"](0, 1));
+assert_return(() => $$.exports["as-if-else"](3, 1));
+assert_return(() => $$.exports["nested-block-value"](0), 21);
+assert_return(() => $$.exports["nested-block-value"](1), 9);
+assert_return(() => $$.exports["nested-br-value"](0), 5);
+assert_return(() => $$.exports["nested-br-value"](1), 9);
+assert_return(() => $$.exports["nested-br_if-value"](0), 5);
+assert_return(() => $$.exports["nested-br_if-value"](1), 9);
+assert_return(() => $$.exports["nested-br_if-value-cond"](0), 5);
+assert_return(() => $$.exports["nested-br_if-value-cond"](1), 9);
+assert_return(() => $$.exports["nested-br_table-value"](0), 5);
+assert_return(() => $$.exports["nested-br_table-value"](1), 9);
+assert_return(() => $$.exports["nested-br_table-value-index"](0), 5);
+assert_return(() => $$.exports["nested-br_table-value-index"](1), 9);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x41\x00\x0d\x00\x68\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x41\x00\x0d\x00\x7a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x41\x00\x0d\x00\x8c\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x41\x00\x0d\x00\x9a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x41\x01\x0d\x00\x68\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x42\x01\x0d\x00\x7a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x02\x40\x43\x00\x00\x80\x3f\x0d\x00\x8c\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x42\x01\x0d\x00\x9a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x7f\x41\x00\x0d\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x7f\x41\x01\x0d\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x41\x00\x41\x00\x0d\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x41\x00\x41\x01\x0d\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x7f\x01\x41\x00\x0d\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x7f\x01\x41\x01\x0d\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x02\x7f\x42\x01\x41\x00\x0d\x00\x1a\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x02\x7f\x42\x01\x41\x00\x0d\x00\x1a\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x02\x40\x01\x0d\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x02\x40\x42\x00\x0d\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x7f\x41\x00\x01\x0d\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x02\x7f\x41\x00\x42\x00\x0d\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x41\x01\x0d\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x40\x02\x40\x41\x01\x0d\x05\x0b\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x01\x0d\x81\x80\x80\x80\x01\x0b");
diff --git a/JSTests/wasm/spec-tests/br_table.wast.js b/JSTests/wasm/spec-tests/br_table.wast.js
new file mode 100644
index 0000000..71bb8f5
--- /dev/null
+++ b/JSTests/wasm/spec-tests/br_table.wast.js
@@ -0,0 +1,251 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x2d\x09\x60\x00\x00\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x01\x7f\x01\x7f\x60\x02\x7f\x7f\x01\x7f\x60\x03\x7f\x7f\x7f\x01\x7f\x60\x03\x7f\x7f\x7f\x01\x7f\x03\x47\x46\x00\x00\x00\x00\x00\x01\x02\x03\x04\x05\x05\x05\x05\x05\x05\x05\x00\x00\x00\x01\x01\x01\x01\x01\x00\x01\x01\x00\x01\x01\x02\x01\x06\x06\x06\x06\x01\x07\x01\x01\x01\x01\x01\x01\x01\x01\x03\x02\x01\x01\x01\x01\x03\x01\x02\x01\x01\x01\x01\x01\x05\x05\x05\x05\x05\x05\x00\x00\x00\x00\x04\x05\x01\x70\x01\x01\x01\x05\x03\x01\x00\x01\x07\x8e\x09\x44\x08\x74\x79\x70\x65\x2d\x69\x33\x32\x00\x01\x08\x74\x79\x70\x65\x2d\x69\x36\x34\x00\x02\x08\x74\x79\x70\x65\x2d\x66\x33\x32\x00\x03\x08\x74\x79\x70\x65\x2d\x66\x36\x34\x00\x04\x0e\x74\x79\x70\x65\x2d\x69\x33\x32\x2d\x76\x61\x6c\x75\x65\x00\x05\x0e\x74\x79\x70\x65\x2d\x69\x36\x34\x2d\x76\x61\x6c\x75\x65\x00\x06\x0e\x74\x79\x70\x65\x2d\x66\x33\x32\x2d\x76\x61\x6c\x75\x65\x00\x07\x0e\x74\x79\x70\x65\x2d\x66\x36\x34\x2d\x76\x61\x6c\x75\x65\x00\x08\x05\x65\x6d\x70\x74\x79\x00\x09\x0b\x65\x6d\x70\x74\x79\x2d\x76\x61\x6c\x75\x65\x00\x0a\x09\x73\x69\x6e\x67\x6c\x65\x74\x6f\x6e\x00\x0b\x0f\x73\x69\x6e\x67\x6c\x65\x74\x6f\x6e\x2d\x76\x61\x6c\x75\x65\x00\x0c\x08\x6d\x75\x6c\x74\x69\x70\x6c\x65\x00\x0d\x0e\x6d\x75\x6c\x74\x69\x70\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x0e\x05\x6c\x61\x72\x67\x65\x00\x0f\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x66\x69\x72\x73\x74\x00\x10\x0c\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6d\x69\x64\x00\x11\x0d\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6c\x61\x73\x74\x00\x12\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x00\x13\x0d\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x66\x69\x72\x73\x74\x00\x14\x0b\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6d\x69\x64\x00\x15\x0c\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6c\x61\x73\x74\x00\x16\x0b\x61\x73\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x17\x0d\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x63\x6f\x6e\x64\x00\x18\x0e\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x00\x19\x13\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x2d\x63\x6f\x6e\x64\x00\x1a\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x69\x6e\x64\x65\x78\x00\x1b\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x1c\x17\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x2d\x69\x6e\x64\x65\x78\x00\x1d\x0f\x61\x73\x2d\x72\x65\x74\x75\x72\x6e\x2d\x76\x61\x6c\x75\x65\x00\x1e\x0a\x61\x73\x2d\x69\x66\x2d\x63\x6f\x6e\x64\x00\x1f\x0a\x61\x73\x2d\x69\x66\x2d\x74\x68\x65\x6e\x00\x20\x0a\x61\x73\x2d\x69\x66\x2d\x65\x6c\x73\x65\x00\x21\x0f\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x22\x10\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x73\x65\x63\x6f\x6e\x64\x00\x23\x0e\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x63\x6f\x6e\x64\x00\x24\x0d\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x66\x69\x72\x73\x74\x00\x26\x0b\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6d\x69\x64\x00\x27\x0c\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6c\x61\x73\x74\x00\x28\x16\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x29\x14\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6d\x69\x64\x00\x2a\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6c\x61\x73\x74\x00\x2b\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x75\x6e\x63\x00\x2c\x12\x61\x73\x2d\x73\x65\x74\x5f\x6c\x6f\x63\x61\x6c\x2d\x76\x61\x6c\x75\x65\x00\x2d\x0f\x61\x73\x2d\x6c\x6f\x61\x64\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2e\x10\x61\x73\x2d\x6c\x6f\x61\x64\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2f\x10\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x30\x0e\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x76\x61\x6c\x75\x65\x00\x31\x11\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x32\x0f\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x76\x61\x6c\x75\x65\x00\x33\x10\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x34\x0e\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6c\x65\x66\x74\x00\x35\x0f\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x72\x69\x67\x68\x74\x00\x36\x0f\x61\x73\x2d\x74\x65\x73\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x37\x0f\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6c\x65\x66\x74\x00\x38\x10\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x72\x69\x67\x68\x74\x00\x39\x12\x61\x73\x2d\x63\x6f\x6e\x76\x65\x72\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x3a\x13\x61\x73\x2d\x67\x72\x6f\x77\x5f\x6d\x65\x6d\x6f\x72\x79\x2d\x73\x69\x7a\x65\x00\x3b\x12\x6e\x65\x73\x74\x65\x64\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x00\x3c\x0f\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x3d\x12\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x00\x3e\x17\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x2d\x63\x6f\x6e\x64\x00\x3f\x15\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x40\x1b\x6e\x65\x73\x74\x65\x64\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x2d\x69\x6e\x64\x65\x78\x00\x41\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x42\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x43\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x44\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x45\x09\x07\x01\x00\x41\x00\x0b\x01\x25\x0a\xcb\xcb\x01\x46\x02\x00\x0b\x0d\x00\x02\x40\x41\x00\x0e\x01\x00\x00\x68\x1a\x0b\x0b\x0d\x00\x02\x40\x41\x00\x0e\x01\x00\x00\x7a\x1a\x0b\x0b\x0d\x00\x02\x40\x41\x00\x0e\x01\x00\x00\x8c\x1a\x0b\x0b\x0d\x00\x02\x40\x41\x00\x0e\x01\x00\x00\x9a\x1a\x0b\x0b\x0e\x00\x02\x7f\x41\x01\x41\x00\x0e\x01\x00\x00\x68\x0b\x0b\x0e\x00\x02\x7e\x42\x02\x41\x00\x0e\x01\x00\x00\x7a\x0b\x0b\x11\x00\x02\x7d\x43\x00\x00\x40\x40\x41\x00\x0e\x01\x00\x00\x8c\x0b\x0b\x15\x00\x02\x7c\x44\x00\x00\x00\x00\x00\x00\x10\x40\x41\x00\x0e\x01\x00\x00\x9a\x0b\x0b\x0f\x00\x02\x40\x20\x00\x0e\x00\x00\x41\x15\x0f\x0b\x41\x16\x0b\x0e\x00\x02\x7f\x41\x21\x20\x00\x0e\x00\x00\x41\x1f\x0b\x0b\x16\x00\x02\x40\x02\x40\x20\x00\x0e\x01\x01\x00\x41\x15\x0f\x0b\x41\x14\x0f\x0b\x41\x16\x0b\x16\x00\x02\x7f\x02\x7f\x41\x21\x20\x00\x0e\x01\x00\x01\x41\x1f\x0f\x0b\x1a\x41\x20\x0b\x0b\x31\x00\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x20\x00\x0e\x04\x03\x02\x01\x00\x04\x41\xe3\x00\x0f\x0b\x41\xe4\x00\x0f\x0b\x41\xe5\x00\x0f\x0b\x41\xe6\x00\x0f\x0b\x41\xe7\x00\x0f\x0b\x41\xe8\x00\x0b\x4d\x01\x01\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x02\x7f\x41\xc8\x01\x20\x00\x0e\x04\x03\x02\x01\x00\x04\x20\x01\x41\xe3\x00\x6a\x0f\x0b\x21\x01\x20\x01\x41\x0a\x6a\x0f\x0b\x21\x01\x20\x01\x41\x0b\x6a\x0f\x0b\x21\x01\x20\x01\x41\x0c\x6a\x0f\x0b\x21\x01\x20\x01\x41\x0d\x6a\x0f\x0b\x21\x01\x20\x01\x41\x0e\x6a\x0b\xbf\xc0\x01\x00\x02\x40\x02\x40\x20\x00\x0e\xa7\xc0\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x41\x7f\x0f\x0b\x41\x00\x0f\x0b\x41\x01\x0f\x0b\x0e\x00\x02\x40\x41\x00\x0e\x02\x00\x00\x00\x10\x00\x0b\x0b\x10\x00\x02\x40\x10\x00\x41\x00\x0e\x02\x00\x00\x00\x10\x00\x0b\x0b\x0f\x00\x02\x40\x01\x10\x00\x41\x00\x0e\x02\x00\x00\x00\x0b\x0b\x11\x00\x02\x7f\x01\x10\x00\x41\x02\x41\x00\x0e\x02\x00\x00\x00\x0b\x0b\x0f\x00\x03\x7f\x41\x03\x41\x00\x0e\x01\x01\x01\x41\x01\x0b\x0b\x12\x00\x03\x7f\x10\x00\x41\x04\x41\x7f\x0e\x02\x01\x01\x01\x41\x02\x0b\x0b\x11\x00\x03\x7f\x01\x10\x00\x41\x05\x41\x01\x0e\x02\x01\x01\x01\x0b\x0b\x0b\x00\x02\x7f\x41\x09\x0c\x00\x0c\x00\x0b\x0b\x0e\x00\x02\x40\x41\x01\x0e\x02\x00\x00\x00\x0d\x00\x0b\x0b\x13\x00\x02\x7f\x41\x08\x41\x00\x0e\x00\x00\x41\x01\x0d\x00\x1a\x41\x07\x0b\x0b\x14\x00\x02\x7f\x41\x06\x41\x09\x41\x00\x0e\x01\x00\x00\x0d\x00\x1a\x41\x07\x0b\x0b\x0f\x00\x02\x40\x41\x01\x0e\x00\x00\x0e\x02\x00\x00\x00\x0b\x0b\x15\x00\x02\x7f\x41\x0a\x41\x00\x0e\x00\x00\x41\x01\x0e\x02\x00\x00\x00\x41\x07\x0b\x0b\x14\x00\x02\x7f\x41\x06\x41\x0b\x41\x01\x0e\x00\x00\x0e\x01\x00\x00\x41\x07\x0b\x0b\x0d\x00\x02\x7e\x42\x07\x41\x00\x0e\x00\x00\x0f\x0b\x0b\x14\x00\x02\x7f\x41\x02\x41\x00\x0e\x00\x00\x04\x7f\x41\x00\x05\x41\x01\x0b\x0b\x0b\x14\x00\x02\x7f\x20\x00\x04\x7f\x41\x03\x41\x00\x0e\x00\x01\x05\x20\x01\x0b\x0b\x0b\x15\x00\x02\x7f\x20\x00\x04\x7f\x20\x01\x05\x41\x04\x41\x00\x0e\x01\x01\x00\x0b\x0b\x0b\x11\x00\x02\x7f\x41\x05\x41\x00\x0e\x00\x00\x20\x00\x20\x01\x1b\x0b\x0b\x11\x00\x02\x7f\x20\x00\x41\x06\x41\x01\x0e\x00\x00\x20\x01\x1b\x0b\x0b\x11\x00\x02\x7f\x41\x00\x41\x01\x41\x07\x41\x01\x0e\x00\x00\x1b\x0b\x0b\x04\x00\x41\x7f\x0b\x12\x00\x02\x7f\x41\x0c\x41\x01\x0e\x00\x00\x41\x02\x41\x03\x10\x25\x0b\x0b\x12\x00\x02\x7f\x41\x01\x41\x0d\x41\x01\x0e\x00\x00\x41\x03\x10\x25\x0b\x0b\x12\x00\x02\x7f\x41\x01\x41\x02\x41\x0e\x41\x01\x0e\x00\x00\x10\x25\x0b\x0b\x15\x00\x02\x7f\x41\x14\x41\x01\x0e\x00\x00\x41\x01\x41\x02\x41\x03\x11\x08\x00\x0b\x0b\x15\x00\x02\x7f\x41\x00\x41\x15\x41\x01\x0e\x00\x00\x41\x02\x41\x03\x11\x08\x00\x0b\x0b\x15\x00\x02\x7f\x41\x00\x41\x01\x41\x16\x41\x01\x0e\x00\x00\x41\x03\x11\x08\x00\x0b\x0b\x15\x00\x02\x7f\x41\x00\x41\x01\x41\x02\x41\x17\x41\x01\x0e\x00\x00\x11\x08\x00\x0b\x0b\x12\x01\x01\x7d\x02\x7f\x41\x11\x41\x01\x0e\x00\x00\x21\x00\x41\x7f\x0b\x0b\x12\x00\x02\x7d\x43\x9a\x99\xd9\x3f\x41\x01\x0e\x00\x00\x2a\x02\x00\x0b\x0b\x0f\x00\x02\x7e\x42\x1e\x41\x01\x0e\x00\x00\x30\x00\x00\x0b\x0b\x1a\x00\x02\x7f\x41\x1e\x41\x01\x0e\x00\x00\x44\x00\x00\x00\x00\x00\x00\x1c\x40\x39\x03\x00\x41\x7f\x0b\x0b\x13\x00\x02\x7f\x41\x02\x41\x1f\x41\x01\x0e\x00\x00\x37\x03\x00\x41\x7f\x0b\x0b\x13\x00\x02\x7f\x41\x20\x41\x00\x0e\x00\x00\x41\x07\x3a\x00\x00\x41\x7f\x0b\x0b\x13\x00\x02\x7f\x41\x02\x41\x21\x41\x00\x0e\x00\x00\x3d\x01\x00\x41\x7f\x0b\x0b\x10\x00\x02\x7d\x43\x9a\x99\x59\x40\x41\x00\x0e\x00\x00\x8c\x0b\x0b\x10\x00\x02\x7f\x41\x03\x41\x00\x0e\x01\x00\x00\x41\x0a\x6a\x0b\x0b\x0f\x00\x02\x7e\x42\x0a\x42\x2d\x41\x00\x0e\x00\x00\x7d\x0b\x0b\x0d\x00\x02\x7f\x41\x2c\x41\x00\x0e\x00\x00\x45\x0b\x0b\x17\x00\x02\x7f\x41\x2b\x41\x00\x0e\x01\x00\x00\x44\x00\x00\x00\x00\x00\x00\x24\x40\x65\x0b\x0b\x12\x00\x02\x7f\x43\x00\x00\x20\x41\x41\x2a\x41\x00\x0e\x00\x00\x5c\x0b\x0b\x0d\x00\x02\x7f\x41\x29\x41\x00\x0e\x00\x00\xa7\x0b\x0b\x0e\x00\x02\x7f\x41\x28\x41\x00\x0e\x00\x00\x40\x00\x0b\x0b\x23\x00\x02\x7f\x41\x7f\x1a\x41\x01\x02\x7f\x41\x02\x02\x7f\x41\x04\x1a\x41\x08\x41\x10\x20\x00\x0e\x02\x00\x01\x02\x6a\x0b\x6a\x0b\x6a\x0b\x0b\x22\x00\x02\x7f\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x04\x1a\x41\x08\x20\x00\x0e\x02\x02\x01\x00\x0c\x00\x0b\x1a\x41\x10\x0b\x6a\x0b\x0b\x27\x00\x02\x7f\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x04\x1a\x41\x08\x20\x00\x0e\x02\x00\x01\x02\x41\x01\x0d\x00\x1a\x41\x20\x0b\x1a\x41\x10\x0b\x6a\x0b\x0b\x1e\x00\x02\x7f\x41\x01\x02\x7f\x41\x02\x1a\x41\x04\x41\x08\x20\x00\x0e\x02\x00\x01\x00\x0d\x00\x1a\x41\x10\x0b\x6a\x0b\x0b\x27\x00\x02\x7f\x41\x01\x02\x7f\x41\x02\x1a\x02\x7f\x41\x04\x1a\x41\x08\x20\x00\x0e\x02\x00\x01\x02\x41\x01\x0e\x00\x00\x41\x20\x0b\x1a\x41\x10\x0b\x6a\x0b\x0b\x1e\x00\x02\x7f\x41\x01\x02\x7f\x41\x02\x1a\x41\x04\x41\x08\x20\x00\x0e\x02\x00\x01\x00\x0e\x00\x00\x41\x10\x0b\x6a\x0b\x0b\x0f\x00\x02\x40\x10\x06\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x1e\x42\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x2f\x42\x1e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x36\x42\x2d\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-i32"]());
+assert_return(() => $$.exports["type-i64"]());
+assert_return(() => $$.exports["type-f32"]());
+assert_return(() => $$.exports["type-f64"]());
+assert_return(() => $$.exports["type-i32-value"](), 1);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["type-f32-value"](), f32(3.0));
+assert_return(() => $$.exports["type-f64-value"](), 4.0);
+assert_return(() => $$.exports["empty"](0), 22);
+assert_return(() => $$.exports["empty"](1), 22);
+assert_return(() => $$.exports["empty"](11), 22);
+assert_return(() => $$.exports["empty"](-1), 22);
+assert_return(() => $$.exports["empty"](-100), 22);
+assert_return(() => $$.exports["empty"](-1), 22);
+assert_return(() => $$.exports["empty-value"](0), 33);
+assert_return(() => $$.exports["empty-value"](1), 33);
+assert_return(() => $$.exports["empty-value"](11), 33);
+assert_return(() => $$.exports["empty-value"](-1), 33);
+assert_return(() => $$.exports["empty-value"](-100), 33);
+assert_return(() => $$.exports["empty-value"](-1), 33);
+assert_return(() => $$.exports["singleton"](0), 22);
+assert_return(() => $$.exports["singleton"](1), 20);
+assert_return(() => $$.exports["singleton"](11), 20);
+assert_return(() => $$.exports["singleton"](-1), 20);
+assert_return(() => $$.exports["singleton"](-100), 20);
+assert_return(() => $$.exports["singleton"](-1), 20);
+assert_return(() => $$.exports["singleton-value"](0), 32);
+assert_return(() => $$.exports["singleton-value"](1), 33);
+assert_return(() => $$.exports["singleton-value"](11), 33);
+assert_return(() => $$.exports["singleton-value"](-1), 33);
+assert_return(() => $$.exports["singleton-value"](-100), 33);
+assert_return(() => $$.exports["singleton-value"](-1), 33);
+assert_return(() => $$.exports["multiple"](0), 103);
+assert_return(() => $$.exports["multiple"](1), 102);
+assert_return(() => $$.exports["multiple"](2), 101);
+assert_return(() => $$.exports["multiple"](3), 100);
+assert_return(() => $$.exports["multiple"](4), 104);
+assert_return(() => $$.exports["multiple"](5), 104);
+assert_return(() => $$.exports["multiple"](6), 104);
+assert_return(() => $$.exports["multiple"](10), 104);
+assert_return(() => $$.exports["multiple"](-1), 104);
+assert_return(() => $$.exports["multiple"](-1), 104);
+assert_return(() => $$.exports["multiple-value"](0), 213);
+assert_return(() => $$.exports["multiple-value"](1), 212);
+assert_return(() => $$.exports["multiple-value"](2), 211);
+assert_return(() => $$.exports["multiple-value"](3), 210);
+assert_return(() => $$.exports["multiple-value"](4), 214);
+assert_return(() => $$.exports["multiple-value"](5), 214);
+assert_return(() => $$.exports["multiple-value"](6), 214);
+assert_return(() => $$.exports["multiple-value"](10), 214);
+assert_return(() => $$.exports["multiple-value"](-1), 214);
+assert_return(() => $$.exports["multiple-value"](-1), 214);
+assert_return(() => $$.exports["large"](0), 0);
+assert_return(() => $$.exports["large"](1), 1);
+assert_return(() => $$.exports["large"](100), 0);
+assert_return(() => $$.exports["large"](101), 1);
+assert_return(() => $$.exports["large"](10000), 0);
+assert_return(() => $$.exports["large"](10001), 1);
+assert_return(() => $$.exports["large"](1000000), 1);
+assert_return(() => $$.exports["large"](1000001), 1);
+assert_return(() => $$.exports["as-block-first"]());
+assert_return(() => $$.exports["as-block-mid"]());
+assert_return(() => $$.exports["as-block-last"]());
+assert_return(() => $$.exports["as-block-value"](), 2);
+assert_return(() => $$.exports["as-loop-first"](), 3);
+assert_return(() => $$.exports["as-loop-mid"](), 4);
+assert_return(() => $$.exports["as-loop-last"](), 5);
+assert_return(() => $$.exports["as-br-value"](), 9);
+assert_return(() => $$.exports["as-br_if-cond"]());
+assert_return(() => $$.exports["as-br_if-value"](), 8);
+assert_return(() => $$.exports["as-br_if-value-cond"](), 9);
+assert_return(() => $$.exports["as-br_table-index"]());
+assert_return(() => $$.exports["as-br_table-value"](), 10);
+assert_return(() => $$.exports["as-br_table-value-index"](), 11);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["as-if-cond"](), 2);
+assert_return(() => $$.exports["as-if-then"](1, 6), 3);
+assert_return(() => $$.exports["as-if-then"](0, 6), 6);
+assert_return(() => $$.exports["as-if-else"](0, 6), 4);
+assert_return(() => $$.exports["as-if-else"](1, 6), 6);
+assert_return(() => $$.exports["as-select-first"](0, 6), 5);
+assert_return(() => $$.exports["as-select-first"](1, 6), 5);
+assert_return(() => $$.exports["as-select-second"](0, 6), 6);
+assert_return(() => $$.exports["as-select-second"](1, 6), 6);
+assert_return(() => $$.exports["as-select-cond"](), 7);
+assert_return(() => $$.exports["as-call-first"](), 12);
+assert_return(() => $$.exports["as-call-mid"](), 13);
+assert_return(() => $$.exports["as-call-last"](), 14);
+assert_return(() => $$.exports["as-call_indirect-first"](), 20);
+assert_return(() => $$.exports["as-call_indirect-mid"](), 21);
+assert_return(() => $$.exports["as-call_indirect-last"](), 22);
+assert_return(() => $$.exports["as-call_indirect-func"](), 23);
+assert_return(() => $$.exports["as-set_local-value"](), 17);
+assert_return(() => $$.exports["as-load-address"](), f32(1.70000004768));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["as-store-address"](), 30);
+assert_return(() => $$.exports["as-store-value"](), 31);
+assert_return(() => $$.exports["as-storeN-address"](), 32);
+assert_return(() => $$.exports["as-storeN-value"](), 33);
+assert_return(() => $$.exports["as-unary-operand"](), f32(3.40000009537));
+assert_return(() => $$.exports["as-binary-left"](), 3);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["as-test-operand"](), 44);
+assert_return(() => $$.exports["as-compare-left"](), 43);
+assert_return(() => $$.exports["as-compare-right"](), 42);
+assert_return(() => $$.exports["as-convert-operand"](), 41);
+assert_return(() => $$.exports["as-grow_memory-size"](), 40);
+assert_return(() => $$.exports["nested-block-value"](0), 19);
+assert_return(() => $$.exports["nested-block-value"](1), 17);
+assert_return(() => $$.exports["nested-block-value"](2), 16);
+assert_return(() => $$.exports["nested-block-value"](10), 16);
+assert_return(() => $$.exports["nested-block-value"](-1), 16);
+assert_return(() => $$.exports["nested-block-value"](100000), 16);
+assert_return(() => $$.exports["nested-br-value"](0), 8);
+assert_return(() => $$.exports["nested-br-value"](1), 9);
+assert_return(() => $$.exports["nested-br-value"](2), 17);
+assert_return(() => $$.exports["nested-br-value"](11), 17);
+assert_return(() => $$.exports["nested-br-value"](-4), 17);
+assert_return(() => $$.exports["nested-br-value"](10213210), 17);
+assert_return(() => $$.exports["nested-br_if-value"](0), 17);
+assert_return(() => $$.exports["nested-br_if-value"](1), 9);
+assert_return(() => $$.exports["nested-br_if-value"](2), 8);
+assert_return(() => $$.exports["nested-br_if-value"](9), 8);
+assert_return(() => $$.exports["nested-br_if-value"](-9), 8);
+assert_return(() => $$.exports["nested-br_if-value"](999999), 8);
+assert_return(() => $$.exports["nested-br_if-value-cond"](0), 9);
+assert_return(() => $$.exports["nested-br_if-value-cond"](1), 8);
+assert_return(() => $$.exports["nested-br_if-value-cond"](2), 9);
+assert_return(() => $$.exports["nested-br_if-value-cond"](3), 9);
+assert_return(() => $$.exports["nested-br_if-value-cond"](-1000000), 9);
+assert_return(() => $$.exports["nested-br_if-value-cond"](9423975), 9);
+assert_return(() => $$.exports["nested-br_table-value"](0), 17);
+assert_return(() => $$.exports["nested-br_table-value"](1), 9);
+assert_return(() => $$.exports["nested-br_table-value"](2), 8);
+assert_return(() => $$.exports["nested-br_table-value"](9), 8);
+assert_return(() => $$.exports["nested-br_table-value"](-9), 8);
+assert_return(() => $$.exports["nested-br_table-value"](999999), 8);
+assert_return(() => $$.exports["nested-br_table-value-index"](0), 9);
+assert_return(() => $$.exports["nested-br_table-value-index"](1), 8);
+assert_return(() => $$.exports["nested-br_table-value-index"](2), 9);
+assert_return(() => $$.exports["nested-br_table-value-index"](3), 9);
+assert_return(() => $$.exports["nested-br_table-value-index"](-1000000), 9);
+assert_return(() => $$.exports["nested-br_table-value-index"](9423975), 9);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x40\x41\x01\x0e\x00\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x02\x7f\x01\x41\x01\x0e\x00\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x12\x01\x10\x00\x02\x7f\x42\x01\x41\x01\x0e\x02\x00\x00\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x01\x0e\x02\x00\x00\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x02\x40\x42\x00\x0e\x00\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x02\x7f\x41\x00\x01\x0e\x01\x00\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x11\x01\x0f\x00\x02\x7f\x41\x00\x42\x00\x0e\x01\x00\x00\x41\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x41\x01\x0e\x01\x02\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x02\x40\x02\x40\x41\x01\x0e\x01\x00\x05\x0b\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x12\x01\x10\x00\x02\x40\x41\x01\x0e\x02\x00\x81\x80\x80\x80\x01\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x41\x01\x0e\x01\x01\x02\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x02\x40\x02\x40\x41\x01\x0e\x01\x00\x05\x0b\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x12\x01\x10\x00\x02\x40\x41\x01\x0e\x02\x00\x00\x81\x80\x80\x80\x01\x0b\x0b");
diff --git a/JSTests/wasm/spec-tests/break-drop.wast.js b/JSTests/wasm/spec-tests/break-drop.wast.js
new file mode 100644
index 0000000..bbae49c
--- /dev/null
+++ b/JSTests/wasm/spec-tests/break-drop.wast.js
@@ -0,0 +1,98 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x04\x03\x00\x00\x00\x07\x19\x03\x02\x62\x72\x00\x00\x05\x62\x72\x5f\x69\x66\x00\x01\x08\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x02\x0a\x1e\x03\x07\x00\x02\x40\x0c\x00\x0b\x0b\x09\x00\x02\x40\x41\x01\x0d\x00\x0b\x0b\x0a\x00\x02\x40\x41\x00\x0e\x00\x00\x0b\x0b");
+assert_return(() => $$.exports["br"]());
+assert_return(() => $$.exports["br_if"]());
+assert_return(() => $$.exports["br_table"]());
diff --git a/JSTests/wasm/spec-tests/call.wast.js b/JSTests/wasm/spec-tests/call.wast.js
new file mode 100644
index 0000000..0eb04ab
--- /dev/null
+++ b/JSTests/wasm/spec-tests/call.wast.js
@@ -0,0 +1,142 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x4b\x0f\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x02\x7d\x7f\x01\x7f\x60\x02\x7f\x7e\x01\x7e\x60\x02\x7c\x7d\x01\x7d\x60\x02\x7e\x7c\x01\x7c\x60\x02\x7e\x7e\x01\x7e\x60\x01\x7e\x01\x7f\x60\x00\x00\x03\x39\x38\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x00\x01\x02\x03\x00\x01\x02\x03\x00\x01\x02\x03\x05\x0c\x05\x0d\x0d\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x07\x8d\x04\x2b\x08\x74\x79\x70\x65\x2d\x69\x33\x32\x00\x0c\x08\x74\x79\x70\x65\x2d\x69\x36\x34\x00\x0d\x08\x74\x79\x70\x65\x2d\x66\x33\x32\x00\x0e\x08\x74\x79\x70\x65\x2d\x66\x36\x34\x00\x0f\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x69\x33\x32\x00\x10\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x69\x36\x34\x00\x11\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x66\x33\x32\x00\x12\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x66\x36\x34\x00\x13\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x33\x32\x00\x14\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x36\x34\x00\x15\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x33\x32\x00\x16\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x36\x34\x00\x17\x03\x66\x61\x63\x00\x18\x07\x66\x61\x63\x2d\x61\x63\x63\x00\x19\x03\x66\x69\x62\x00\x1a\x04\x65\x76\x65\x6e\x00\x1b\x03\x6f\x64\x64\x00\x1c\x07\x72\x75\x6e\x61\x77\x61\x79\x00\x1d\x0e\x6d\x75\x74\x75\x61\x6c\x2d\x72\x75\x6e\x61\x77\x61\x79\x00\x1e\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x20\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x21\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x22\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x23\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x24\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x25\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x26\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x27\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x28\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x37\x0a\x92\x06\x38\x05\x00\x41\xb2\x02\x0b\x05\x00\x42\xe4\x02\x0b\x07\x00\x43\x00\x20\x73\x45\x0b\x0b\x00\x44\x00\x00\x00\x00\x00\xc8\xae\x40\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x10\x00\x0b\x04\x00\x10\x01\x0b\x04\x00\x10\x02\x0b\x04\x00\x10\x03\x0b\x06\x00\x41\x20\x10\x04\x0b\x07\x00\x42\xc0\x00\x10\x05\x0b\x09\x00\x43\xc3\xf5\xa8\x3f\x10\x06\x0b\x0d\x00\x44\x3d\x0a\xd7\xa3\x70\x3d\xfa\x3f\x10\x07\x0b\x0b\x00\x43\x66\x66\x00\x42\x41\x20\x10\x08\x0b\x09\x00\x41\x20\x42\xc0\x00\x10\x09\x0b\x12\x00\x44\x00\x00\x00\x00\x00\x00\x50\x40\x43\x00\x00\x00\x42\x10\x0a\x0b\x10\x00\x42\xc0\x00\x44\x66\x66\x66\x66\x66\x06\x50\x40\x10\x0b\x0b\x15\x00\x20\x00\x50\x04\x7e\x42\x01\x05\x20\x00\x20\x00\x42\x01\x7d\x10\x18\x7e\x0b\x0b\x17\x00\x20\x00\x50\x04\x7e\x20\x01\x05\x20\x00\x42\x01\x7d\x20\x00\x20\x01\x7e\x10\x19\x0b\x0b\x1c\x00\x20\x00\x42\x01\x58\x04\x7e\x42\x01\x05\x20\x00\x42\x02\x7d\x10\x1a\x20\x00\x42\x01\x7d\x10\x1a\x7c\x0b\x0b\x12\x00\x20\x00\x50\x04\x7f\x41\x2c\x05\x20\x00\x42\x01\x7d\x10\x1c\x0b\x0b\x13\x00\x20\x00\x50\x04\x7f\x41\xe3\x00\x05\x20\x00\x42\x01\x7d\x10\x1b\x0b\x0b\x04\x00\x10\x1d\x0b\x04\x00\x10\x1f\x0b\x04\x00\x10\x1e\x0b\x10\x00\x02\x40\x10\x0d\x42\xe4\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x11\x42\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x15\x42\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x18\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x18\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x05\x10\x18\x42\xf8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x18\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x19\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x19\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x05\x42\x01\x10\x19\x42\xf8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x19\x42\x01\x10\x19\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x1a\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x1a\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x02\x10\x1a\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x05\x10\x1a\x42\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x14\x10\x1a\x42\xc2\xd5\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x1b\x41\x2c\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x01\x10\x1b\x41\xe3\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xe4\x00\x10\x1b\x41\x2c\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\xcd\x00\x10\x1b\x41\xe3\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x00\x10\x1c\x41\xe3\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x1c\x41\x2c\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\xc8\x01\x10\x1c\x41\xe3\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xcd\x00\x10\x1c\x41\x2c\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-i32"](), 306);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["type-f32"](), f32(3890.0));
+assert_return(() => $$.exports["type-f64"](), 3940.0);
+assert_return(() => $$.exports["type-first-i32"](), 32);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["type-first-f32"](), f32(1.32000005245));
+assert_return(() => $$.exports["type-first-f64"](), 1.64);
+assert_return(() => $$.exports["type-second-i32"](), 32);
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["type-second-f32"](), f32(32.0));
+assert_return(() => $$.exports["type-second-f64"](), 64.1);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_trap(() => $$.exports["runaway"]());
+assert_trap(() => $$.exports["mutual-runaway"]());
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x03\x02\x00\x00\x0a\x0a\x02\x05\x00\x10\x01\x45\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x00\x60\x00\x01\x7e\x03\x03\x02\x00\x01\x0a\x0c\x02\x05\x00\x10\x01\x45\x0b\x04\x00\x42\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x00\x60\x01\x7f\x00\x03\x03\x02\x00\x01\x0a\x09\x02\x04\x00\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x00\x00\x60\x02\x7c\x7f\x00\x03\x03\x02\x00\x01\x0a\x09\x02\x04\x00\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x03\x02\x00\x00\x0a\x0b\x02\x06\x00\x41\x01\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x03\x02\x00\x00\x0a\x14\x02\x0f\x00\x44\x00\x00\x00\x00\x00\x00\x00\x40\x41\x01\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x00\x00\x60\x02\x7f\x7f\x00\x03\x03\x02\x00\x01\x0a\x0c\x02\x07\x00\x01\x41\x01\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x00\x00\x60\x02\x7f\x7f\x00\x03\x03\x02\x00\x01\x0a\x0c\x02\x07\x00\x41\x01\x01\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x00\x00\x60\x02\x7f\x7c\x00\x03\x03\x02\x00\x01\x0a\x14\x02\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x01\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x00\x00\x60\x02\x7c\x7f\x00\x03\x03\x02\x00\x01\x0a\x14\x02\x0f\x00\x41\x01\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x01\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x10\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x10\x94\x98\xdb\xe2\x03\x0b");
diff --git a/JSTests/wasm/spec-tests/call_indirect.wast.js b/JSTests/wasm/spec-tests/call_indirect.wast.js
new file mode 100644
index 0000000..60aeda8
--- /dev/null
+++ b/JSTests/wasm/spec-tests/call_indirect.wast.js
@@ -0,0 +1,158 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x59\x12\x60\x00\x00\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x02\x7d\x7f\x01\x7f\x60\x02\x7f\x7e\x01\x7e\x60\x02\x7c\x7d\x01\x7d\x60\x02\x7e\x7c\x01\x7c\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x01\x7f\x01\x7e\x03\x42\x41\x01\x02\x03\x04\x05\x06\x07\x08\x0a\x0c\x09\x0b\x0d\x0e\x0f\x10\x01\x02\x03\x04\x02\x01\x02\x03\x04\x01\x02\x03\x04\x0a\x11\x06\x06\x05\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x05\x01\x70\x01\x17\x17\x07\xd5\x04\x30\x08\x74\x79\x70\x65\x2d\x69\x33\x32\x00\x10\x08\x74\x79\x70\x65\x2d\x69\x36\x34\x00\x11\x08\x74\x79\x70\x65\x2d\x66\x33\x32\x00\x12\x08\x74\x79\x70\x65\x2d\x66\x36\x34\x00\x13\x0a\x74\x79\x70\x65\x2d\x69\x6e\x64\x65\x78\x00\x14\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x69\x33\x32\x00\x15\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x69\x36\x34\x00\x16\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x66\x33\x32\x00\x17\x0e\x74\x79\x70\x65\x2d\x66\x69\x72\x73\x74\x2d\x66\x36\x34\x00\x18\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x33\x32\x00\x19\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x36\x34\x00\x1a\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x33\x32\x00\x1b\x0f\x74\x79\x70\x65\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x36\x34\x00\x1c\x08\x64\x69\x73\x70\x61\x74\x63\x68\x00\x1d\x13\x64\x69\x73\x70\x61\x74\x63\x68\x2d\x73\x74\x72\x75\x63\x74\x75\x72\x61\x6c\x00\x1e\x03\x66\x61\x63\x00\x1f\x03\x66\x69\x62\x00\x20\x04\x65\x76\x65\x6e\x00\x21\x03\x6f\x64\x64\x00\x22\x07\x72\x75\x6e\x61\x77\x61\x79\x00\x23\x0e\x6d\x75\x74\x75\x61\x6c\x2d\x72\x75\x6e\x61\x77\x61\x79\x00\x24\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x26\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x27\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x28\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x29\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x2a\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x2b\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x2c\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x2d\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x2e\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x3d\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x3e\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x3f\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x40\x09\x1d\x01\x00\x41\x00\x0b\x17\x00\x01\x02\x03\x04\x05\x06\x07\x0a\x08\x0b\x09\x1f\x20\x21\x22\x23\x24\x25\x0c\x0d\x0e\x0f\x0a\xf2\x06\x41\x05\x00\x41\xb2\x02\x0b\x05\x00\x42\xe4\x02\x0b\x07\x00\x43\x00\x20\x73\x45\x0b\x0b\x00\x44\x00\x00\x00\x00\x00\xc8\xae\x40\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x07\x00\x41\x00\x11\x01\x00\x0b\x07\x00\x41\x01\x11\x02\x00\x0b\x07\x00\x41\x02\x11\x03\x00\x0b\x07\x00\x41\x03\x11\x04\x00\x0b\x0a\x00\x42\xe4\x00\x41\x05\x11\x06\x00\x0b\x09\x00\x41\x20\x41\x04\x11\x05\x00\x0b\x0a\x00\x42\xc0\x00\x41\x05\x11\x06\x00\x0b\x0c\x00\x43\xc3\xf5\xa8\x3f\x41\x06\x11\x07\x00\x0b\x10\x00\x44\x3d\x0a\xd7\xa3\x70\x3d\xfa\x3f\x41\x07\x11\x08\x00\x0b\x0e\x00\x43\x66\x66\x00\x42\x41\x20\x41\x08\x11\x09\x00\x0b\x0c\x00\x41\x20\x42\xc0\x00\x41\x09\x11\x0a\x00\x0b\x15\x00\x44\x00\x00\x00\x00\x00\x00\x50\x40\x43\x00\x00\x00\x42\x41\x0a\x11\x0b\x00\x0b\x13\x00\x42\xc0\x00\x44\x66\x66\x66\x66\x66\x06\x50\x40\x41\x0b\x11\x0c\x00\x0b\x09\x00\x20\x01\x20\x00\x11\x06\x00\x0b\x09\x00\x42\x09\x20\x00\x11\x0e\x00\x0b\x18\x00\x20\x00\x50\x04\x7e\x42\x01\x05\x20\x00\x20\x00\x42\x01\x7d\x41\x0c\x11\x06\x00\x7e\x0b\x0b\x22\x00\x20\x00\x42\x01\x58\x04\x7e\x42\x01\x05\x20\x00\x42\x02\x7d\x41\x0d\x11\x06\x00\x20\x00\x42\x01\x7d\x41\x0d\x11\x06\x00\x7c\x0b\x0b\x15\x00\x20\x00\x45\x04\x7f\x41\x2c\x05\x20\x00\x41\x01\x6b\x41\x0f\x11\x05\x00\x0b\x0b\x16\x00\x20\x00\x45\x04\x7f\x41\xe3\x00\x05\x20\x00\x41\x01\x6b\x41\x0e\x11\x05\x00\x0b\x0b\x07\x00\x41\x10\x11\x00\x00\x0b\x07\x00\x41\x12\x11\x00\x00\x0b\x07\x00\x41\x11\x11\x00\x00\x0b\x10\x00\x02\x40\x10\x11\x42\xe4\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x14\x42\xe4\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x16\x42\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x1a\x42\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x41\x05\x42\x02\x10\x1d\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x41\x05\x42\x05\x10\x1d\x42\x05\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x41\x0c\x42\x05\x10\x1d\x42\xf8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x41\x0d\x42\x05\x10\x1d\x42\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x41\x14\x42\x02\x10\x1d\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0a\x00\x41\x00\x42\x02\x10\x1d\x0c\x00\x0b\x0a\x00\x41\x0f\x42\x02\x10\x1d\x0c\x00\x0b\x0a\x00\x41\x17\x42\x02\x10\x1d\x0c\x00\x0b\x0a\x00\x41\x7f\x42\x02\x10\x1d\x0c\x00\x0b\x0e\x00\x41\xe7\x84\xce\xc2\x04\x42\x02\x10\x1d\x0c\x00\x0b\x11\x00\x02\x40\x41\x05\x10\x1e\x42\x09\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x41\x05\x10\x1e\x42\x09\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x41\x0c\x10\x1e\x42\x80\x93\x16\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x41\x14\x10\x1e\x42\x09\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x1f\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x1f\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x05\x10\x1f\x42\xf8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x1f\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x20\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x20\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x02\x10\x20\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x05\x10\x20\x42\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x14\x10\x20\x42\xc2\xd5\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-i32"](), 306);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["type-f32"](), f32(3890.0));
+assert_return(() => $$.exports["type-f64"](), 3940.0);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["type-first-i32"](), 32);
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["type-first-f32"](), f32(1.32000005245));
+assert_return(() => $$.exports["type-first-f64"](), 1.64);
+assert_return(() => $$.exports["type-second-i32"](), 32);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["type-second-f32"](), f32(32.0));
+assert_return(() => $$.exports["type-second-f64"](), 64.1);
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_trap(() => $$.exports["assert_9"]());
+assert_trap(() => $$.exports["assert_10"]());
+assert_trap(() => $$.exports["assert_11"]());
+assert_trap(() => $$.exports["assert_12"]());
+assert_trap(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_trap(() => $$.exports["dispatch-structural"](11));
+assert_trap(() => $$.exports["dispatch-structural"](22));
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["even"](0), 44);
+assert_return(() => $$.exports["even"](1), 99);
+assert_return(() => $$.exports["even"](100), 44);
+assert_return(() => $$.exports["even"](77), 99);
+assert_return(() => $$.exports["odd"](0), 99);
+assert_return(() => $$.exports["odd"](1), 44);
+assert_return(() => $$.exports["odd"](200), 99);
+assert_return(() => $$.exports["odd"](77), 44);
+assert_trap(() => $$.exports["runaway"]());
+assert_trap(() => $$.exports["mutual-runaway"]());
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x04\x04\x01\x70\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x11\x00\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x01\x7e\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x11\x00\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x09\x01\x07\x00\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x02\x7c\x7f\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x09\x01\x07\x00\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x04\x04\x01\x70\x00\x00\x0a\x0b\x01\x09\x00\x41\x01\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x04\x04\x01\x70\x00\x00\x0a\x14\x01\x12\x00\x44\x00\x00\x00\x00\x00\x00\x00\x40\x41\x01\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x0a\x01\x08\x00\x41\x01\x01\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x0b\x01\x09\x00\x41\x00\x42\x01\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x02\x7f\x7f\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x0c\x01\x0a\x00\x01\x41\x01\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x02\x7f\x7f\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x0c\x01\x0a\x00\x41\x01\x01\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x02\x7f\x7c\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x14\x01\x12\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x01\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x02\x7c\x7f\x00\x60\x00\x00\x03\x02\x01\x01\x04\x04\x01\x70\x00\x00\x0a\x14\x01\x12\x00\x41\x01\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x04\x04\x01\x70\x00\x00\x0a\x09\x01\x07\x00\x41\x00\x11\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x04\x04\x01\x70\x00\x00\x0a\x0d\x01\x0b\x00\x41\x00\x11\x94\x98\xdb\xe2\x03\x00\x0b");
diff --git a/JSTests/wasm/spec-tests/comments.wast.js b/JSTests/wasm/spec-tests/comments.wast.js
new file mode 100644
index 0000000..b184e01
--- /dev/null
+++ b/JSTests/wasm/spec-tests/comments.wast.js
@@ -0,0 +1,98 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
diff --git a/JSTests/wasm/spec-tests/conversions.wast.js b/JSTests/wasm/spec-tests/conversions.wast.js
new file mode 100644
index 0000000..52a19c5
--- /dev/null
+++ b/JSTests/wasm/spec-tests/conversions.wast.js
@@ -0,0 +1,454 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x40\x0d\x60\x01\x7f\x01\x7e\x60\x01\x7e\x01\x7f\x60\x01\x7d\x01\x7f\x60\x01\x7c\x01\x7f\x60\x01\x7d\x01\x7e\x60\x01\x7c\x01\x7e\x60\x01\x7f\x01\x7d\x60\x01\x7e\x01\x7d\x60\x01\x7f\x01\x7c\x60\x01\x7e\x01\x7c\x60\x01\x7d\x01\x7c\x60\x01\x7c\x01\x7d\x60\x00\x00\x03\xbe\x01\xbc\x01\x00\x00\x01\x02\x02\x03\x03\x04\x04\x05\x05\x06\x07\x08\x09\x06\x07\x08\x09\x0a\x0b\x06\x09\x02\x05\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x07\xf7\x13\xbc\x01\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x73\x5f\x69\x33\x32\x00\x00\x10\x69\x36\x34\x2e\x65\x78\x74\x65\x6e\x64\x5f\x75\x5f\x69\x33\x32\x00\x01\x0c\x69\x33\x32\x2e\x77\x72\x61\x70\x5f\x69\x36\x34\x00\x02\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x33\x32\x00\x03\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x33\x32\x00\x04\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x36\x34\x00\x05\x0f\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x36\x34\x00\x06\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x33\x32\x00\x07\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x33\x32\x00\x08\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x36\x34\x00\x09\x0f\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x36\x34\x00\x0a\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x5f\x69\x33\x32\x00\x0b\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x5f\x69\x36\x34\x00\x0c\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x5f\x69\x33\x32\x00\x0d\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x5f\x69\x36\x34\x00\x0e\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x5f\x69\x33\x32\x00\x0f\x11\x66\x33\x32\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x5f\x69\x36\x34\x00\x10\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x5f\x69\x33\x32\x00\x11\x11\x66\x36\x34\x2e\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x5f\x69\x36\x34\x00\x12\x0f\x66\x36\x34\x2e\x70\x72\x6f\x6d\x6f\x74\x65\x5f\x66\x33\x32\x00\x13\x0e\x66\x33\x32\x2e\x64\x65\x6d\x6f\x74\x65\x5f\x66\x36\x34\x00\x14\x13\x66\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x33\x32\x00\x15\x13\x66\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x69\x36\x34\x00\x16\x13\x69\x33\x32\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x33\x32\x00\x17\x13\x69\x36\x34\x2e\x72\x65\x69\x6e\x74\x65\x72\x70\x72\x65\x74\x5f\x66\x36\x34\x00\x18\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x19\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x1a\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x1b\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x1c\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x1d\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x1e\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x1f\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x20\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x21\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x22\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x23\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x24\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x25\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x00\x3d\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x00\x3e\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x00\x3f\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x00\x40\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x00\x41\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x00\x42\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x00\x43\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x00\x44\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x00\x45\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x00\x46\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x00\x47\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x00\x48\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x00\x49\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x39\x00\x4a\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x30\x00\x4b\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x31\x00\x4c\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x32\x00\x4d\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x33\x00\x4e\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x34\x00\x4f\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x35\x00\x50\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x36\x00\x51\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x37\x00\x52\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x38\x00\x53\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x39\x00\x54\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x30\x00\x55\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x31\x00\x56\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x32\x00\x57\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x33\x00\x58\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x34\x00\x59\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x35\x00\x5a\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x36\x00\x5b\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x37\x00\x5c\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x38\x00\x5d\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x39\x00\x5e\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x30\x00\x5f\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x31\x00\x60\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x32\x00\x61\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x33\x00\x62\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x34\x00\x63\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x35\x00\x64\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x36\x00\x65\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x37\x00\x66\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x38\x00\x67\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x39\x00\x68\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x30\x00\x69\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x31\x00\x6a\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x32\x00\x6b\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x33\x00\x6c\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x34\x00\x6d\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x35\x00\x6e\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x36\x00\x6f\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x37\x00\x70\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x38\x00\x71\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x39\x00\x72\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x30\x00\x73\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x31\x00\x74\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x32\x00\x75\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x33\x00\x76\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x34\x00\x77\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x35\x00\x78\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x36\x00\x79\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x37\x00\x7a\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x38\x00\x7b\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x39\x00\x7c\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x30\x00\x7d\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x31\x00\x7e\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x32\x00\x7f\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x33\x00\x80\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x34\x00\x81\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x35\x00\x82\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x36\x00\x83\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x37\x00\x84\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x38\x00\x85\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x39\x00\x86\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x30\x00\x87\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x31\x00\x88\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x32\x00\x89\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x33\x00\x8a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x34\x00\x8b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x35\x00\x8c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x36\x00\x8d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x37\x00\x8e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x38\x00\x8f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x39\x00\x90\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x30\x00\x91\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x31\x00\x92\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x32\x00\x93\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x33\x00\x94\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x34\x00\x95\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x35\x00\x96\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x36\x00\x97\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x37\x00\x98\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x38\x00\x99\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x39\x00\x9a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x30\x00\x9b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x31\x00\x9c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x32\x00\x9d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x33\x00\x9e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x34\x00\x9f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x35\x00\xa0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x36\x00\xa1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x37\x00\xa2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x38\x00\xa3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x39\x00\xa4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x30\x00\xa5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x31\x00\xa6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x32\x00\xa7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x33\x00\xa8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x34\x00\xa9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x35\x00\xaa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x36\x00\xab\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x37\x00\xac\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x38\x00\xad\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x39\x00\xae\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x30\x00\xaf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x31\x00\xb0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x32\x00\xb1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x33\x00\xb2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x34\x00\xb3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x35\x00\xb4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x36\x00\xb5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x37\x00\xb6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x38\x00\xb7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x39\x00\xb8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x30\x00\xb9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x31\x00\xba\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x32\x00\xbb\x01\x0a\xb9\x22\xbc\x01\x05\x00\x20\x00\xac\x0b\x05\x00\x20\x00\xad\x0b\x05\x00\x20\x00\xa7\x0b\x05\x00\x20\x00\xa8\x0b\x05\x00\x20\x00\xa9\x0b\x05\x00\x20\x00\xaa\x0b\x05\x00\x20\x00\xab\x0b\x05\x00\x20\x00\xae\x0b\x05\x00\x20\x00\xaf\x0b\x05\x00\x20\x00\xb0\x0b\x05\x00\x20\x00\xb1\x0b\x05\x00\x20\x00\xb2\x0b\x05\x00\x20\x00\xb4\x0b\x05\x00\x20\x00\xb7\x0b\x05\x00\x20\x00\xb9\x0b\x05\x00\x20\x00\xb3\x0b\x05\x00\x20\x00\xb5\x0b\x05\x00\x20\x00\xb8\x0b\x05\x00\x20\x00\xba\x0b\x05\x00\x20\x00\xbb\x0b\x05\x00\x20\x00\xb6\x0b\x05\x00\x20\x00\xbe\x0b\x05\x00\x20\x00\xbf\x0b\x05\x00\x20\x00\xbc\x0b\x05\x00\x20\x00\xbd\x0b\x11\x00\x02\x40\x41\x00\x10\x00\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x41\x90\xce\x00\x10\x00\x42\x90\xce\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x41\xf0\xb1\x7f\x10\x00\x42\xf0\xb1\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x41\x7f\x10\x00\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x41\xff\xff\xff\xff\x07\x10\x00\x42\xff\xff\xff\xff\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x41\x80\x80\x80\x80\x78\x10\x00\x42\x80\x80\x80\x80\x78\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x41\x00\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x41\x90\xce\x00\x10\x01\x42\x90\xce\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x41\xf0\xb1\x7f\x10\x01\x42\xf0\xb1\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x41\x7f\x10\x01\x42\xff\xff\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x41\xff\xff\xff\xff\x07\x10\x01\x42\xff\xff\xff\xff\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x41\x80\x80\x80\x80\x78\x10\x01\x42\x80\x80\x80\x80\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x02\x41\x7f\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xe0\xf2\x79\x10\x02\x41\xe0\xf2\x79\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x80\x80\x80\x80\x08\x10\x02\x41\x80\x80\x80\x80\x78\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xff\xff\xff\xff\x77\x10\x02\x41\xff\xff\xff\xff\x07\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x80\x80\x80\x80\x70\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xff\xff\xff\xff\x6f\x10\x02\x41\x7f\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x81\x80\x80\x80\x70\x10\x02\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x42\xf0\xbd\xf3\xd5\x89\xcf\x95\x9a\x12\x10\x02\x41\xf0\xbd\xf3\xd5\x79\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xff\xff\xff\xff\x0f\x10\x02\x41\x7f\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x80\x80\x80\x80\x10\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x81\x80\x80\x80\x10\x10\x02\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x03\x0c\x00\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x04\x0c\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x0c\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x0c\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x00\x00\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x00\x80\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x01\x00\x00\x00\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x01\x00\x00\x80\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x07\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x07\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x07\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x80\xbf\x10\x07\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\xcd\xcc\x8c\xbf\x10\x07\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\xc0\xbf\x10\x07\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x33\x33\xf3\xbf\x10\x07\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x00\xc0\x10\x07\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x07\x42\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x43\x00\x00\x80\xcf\x10\x07\x42\x80\x80\x80\x80\x70\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x43\xff\xff\xff\x5e\x10\x07\x42\x80\x80\x80\x80\x80\xf0\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x43\x00\x00\x00\xdf\x10\x07\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x07\x0c\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x00\x00\x10\x08\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x00\x80\x10\x08\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x01\x00\x00\x00\x10\x08\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x01\x00\x00\x80\x10\x08\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\x80\x3f\x10\x08\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\xcd\xcc\x8c\x3f\x10\x08\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x00\x00\xc0\x3f\x10\x08\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x43\x00\x00\x80\x4f\x10\x08\x42\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x5f\x10\x08\x42\x80\x80\x80\x80\x80\x60\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\x66\x66\x66\xbf\x10\x08\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\xff\xff\x7f\xbf\x10\x08\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x08\x0c\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x09\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x09\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x09\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x09\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x09\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x09\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x09\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x09\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\xbf\x10\x09\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xbf\x10\x09\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x66\x66\x66\x66\x66\x66\xfe\xbf\x10\x09\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\xc0\x10\x09\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x09\x42\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xc1\x10\x09\x42\x80\x80\x80\x80\x70\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xdf\x43\x10\x09\x42\x80\xf8\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xc3\x10\x09\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x09\x0c\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x0a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x0a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x0a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x0a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x0a\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x9a\x99\x99\x99\x99\x99\xf1\x3f\x10\x0a\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x3f\x10\x0a\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x44\x00\x00\xe0\xff\xff\xff\xef\x41\x10\x0a\x42\xff\xff\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x41\x10\x0a\x42\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x43\x10\x0a\x42\x80\x70\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\xcd\xcc\xcc\xcc\xcc\xcc\xec\xbf\x10\x0a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xbf\x10\x0a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1b\x00\x02\x40\x44\x00\x00\x00\x00\x84\xd7\x97\x41\x10\x0a\x42\x80\xc2\xd7\x2f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x44\x00\x80\xe0\x37\x79\xc3\x41\x43\x10\x0a\x42\x80\x80\x84\xfe\xa6\xde\xe1\x11\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x43\x10\x0a\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0a\x0c\x00\x0b\x16\x00\x02\x40\x42\x01\x10\x0c\xbc\x43\x00\x00\x80\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x42\x7f\x10\x0c\xbc\x43\x00\x00\x80\xbf\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x42\x00\x10\x0c\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0c\xbc\x43\x00\x00\x00\x5f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0c\xbc\x43\x00\x00\x00\xdf\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x42\x83\xc9\xa8\xbb\x9e\xb7\xc7\x00\x10\x0c\xbc\x43\xf4\xdc\x8e\x57\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x81\x80\x80\x08\x10\x0c\xbc\x43\x00\x00\x80\x4b\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xff\xff\xff\x77\x10\x0c\xbc\x43\x00\x00\x80\xcb\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x83\x80\x80\x08\x10\x0c\xbc\x43\x02\x00\x80\x4b\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xfd\xff\xff\x77\x10\x0c\xbc\x43\x02\x00\x80\xcb\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x01\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x7f\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x00\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\xc3\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x8e\xad\xae\xba\xd3\xd3\xa5\x08\x10\x0e\xbd\x44\x8e\x96\x4b\x37\x9d\x96\x30\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x10\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\x40\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\x6f\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\x40\xc3\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x83\x80\x80\x80\x80\x80\x80\x10\x10\x0e\xbd\x44\x02\x00\x00\x00\x00\x00\x40\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\xfd\xff\xff\xff\xff\xff\xff\x6f\x10\x0e\xbd\x44\x02\x00\x00\x00\x00\x00\x40\xc3\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x42\x01\x10\x10\xbc\x43\x00\x00\x80\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x42\x00\x10\x10\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x10\xbc\x43\x00\x00\x00\x5f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x10\xbc\x43\x00\x00\x00\x5f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x42\x7f\x10\x10\xbc\x43\x00\x00\x80\x5f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x81\x80\x80\x08\x10\x10\xbc\x43\x00\x00\x80\x4b\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x83\x80\x80\x08\x10\x10\xbc\x43\x02\x00\x80\x4b\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x01\x10\x12\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x00\x10\x12\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x12\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x12\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x7f\x10\x12\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x10\x10\x12\xbd\x44\x00\x00\x00\x00\x00\x00\x40\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x83\x80\x80\x80\x80\x80\x80\x10\x10\x12\xbd\x44\x02\x00\x00\x00\x00\x00\x40\x43\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x13\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x14\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x41\x7f\x10\x15\xbc\x43\xff\xff\xff\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x41\x80\x80\x80\xfe\x07\x10\x15\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x41\x80\x80\x80\x7e\x10\x15\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x41\x80\x80\x80\xfd\x07\x10\x15\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x41\x80\x80\x80\x7d\x10\x15\xbc\x43\x00\x00\xa0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x00\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x01\x10\x16\xbd\x44\x01\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x7f\x10\x16\xbd\x44\xff\xff\xff\xff\xff\xff\xff\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x42\xd2\x85\xd8\xcc\x04\x10\x16\xbd\x44\xd2\x02\x96\x49\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x16\xbd\x44\x01\x00\x00\x00\x00\x00\x00\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\xf8\xff\x00\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x78\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\xfc\xff\x00\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x7c\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x7a\x10\x16\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x43\xff\xff\xff\xff\x10\x17\x41\x7f\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x17\x41\x80\x80\x80\xfe\x07\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x17\x41\x80\x80\x80\x7e\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x17\x41\x80\x80\x80\xfd\x07\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x43\x00\x00\xa0\xff\x10\x17\x41\x80\x80\x80\x7d\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x18\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x18\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xff\xff\x10\x18\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x18\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\xf8\x3f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x11\x2d\x44\x54\xfb\x21\x09\x40\x10\x18\x42\x91\xda\x90\xa2\xb5\xbf\xc8\x84\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x18\x42\xff\xff\xff\xff\xff\xff\xff\xf7\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x18\x42\xff\xff\xff\xff\xff\xff\xff\x77\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\xf8\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\x78\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\xfc\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\x7c\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\xff\x10\x18\x42\x80\x80\x80\x80\x80\x80\x80\x7a\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(0.0)), 0);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-0.0)), 0);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(1.0)), 1);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(1.10000002384)), 1);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(1.5)), 1);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-1.0)), -1);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-1.10000002384)), -1);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-1.5)), -1);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-1.89999997616)), -1);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-2.0)), -2);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(2147483520.0)), 2147483520);
+assert_return(() => $$.exports["i32.trunc_s_f32"](f32(-2147483648.0)), -2147483648);
+assert_trap(() => $$.exports["i32.trunc_s_f32"](f32(2147483648.0)));
+assert_trap(() => $$.exports["i32.trunc_s_f32"](f32(-2147483904.0)));
+assert_trap(() => $$.exports["i32.trunc_s_f32"](Infinity));
+assert_trap(() => $$.exports["i32.trunc_s_f32"](-Infinity));
+assert_trap(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(0.0)), 0);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(-0.0)), 0);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(1.0)), 1);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(1.10000002384)), 1);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(1.5)), 1);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(1.89999997616)), 1);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(2.0)), 2);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(2147483648.0)), -2147483648);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(4294967040.0)), -256);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(-0.899999976158)), 0);
+assert_return(() => $$.exports["i32.trunc_u_f32"](f32(-0.999999940395)), 0);
+assert_trap(() => $$.exports["i32.trunc_u_f32"](f32(4294967296.0)));
+assert_trap(() => $$.exports["i32.trunc_u_f32"](f32(-1.0)));
+assert_trap(() => $$.exports["i32.trunc_u_f32"](Infinity));
+assert_trap(() => $$.exports["i32.trunc_u_f32"](-Infinity));
+assert_trap(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["i32.trunc_s_f64"](0.0), 0);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-0.0), 0);
+assert_return(() => $$.exports["i32.trunc_s_f64"](5e-324), 0);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-5e-324), 0);
+assert_return(() => $$.exports["i32.trunc_s_f64"](1.0), 1);
+assert_return(() => $$.exports["i32.trunc_s_f64"](1.1), 1);
+assert_return(() => $$.exports["i32.trunc_s_f64"](1.5), 1);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-1.0), -1);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-1.1), -1);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-1.5), -1);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-1.9), -1);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-2.0), -2);
+assert_return(() => $$.exports["i32.trunc_s_f64"](2147483647.0), 2147483647);
+assert_return(() => $$.exports["i32.trunc_s_f64"](-2147483648.0), -2147483648);
+assert_trap(() => $$.exports["i32.trunc_s_f64"](2147483648.0));
+assert_trap(() => $$.exports["i32.trunc_s_f64"](-2147483649.0));
+assert_trap(() => $$.exports["i32.trunc_s_f64"](Infinity));
+assert_trap(() => $$.exports["i32.trunc_s_f64"](-Infinity));
+assert_trap(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["i32.trunc_u_f64"](0.0), 0);
+assert_return(() => $$.exports["i32.trunc_u_f64"](-0.0), 0);
+assert_return(() => $$.exports["i32.trunc_u_f64"](5e-324), 0);
+assert_return(() => $$.exports["i32.trunc_u_f64"](-5e-324), 0);
+assert_return(() => $$.exports["i32.trunc_u_f64"](1.0), 1);
+assert_return(() => $$.exports["i32.trunc_u_f64"](1.1), 1);
+assert_return(() => $$.exports["i32.trunc_u_f64"](1.5), 1);
+assert_return(() => $$.exports["i32.trunc_u_f64"](1.9), 1);
+assert_return(() => $$.exports["i32.trunc_u_f64"](2.0), 2);
+assert_return(() => $$.exports["i32.trunc_u_f64"](2147483648.0), -2147483648);
+assert_return(() => $$.exports["i32.trunc_u_f64"](4294967295.0), -1);
+assert_return(() => $$.exports["i32.trunc_u_f64"](-0.9), 0);
+assert_return(() => $$.exports["i32.trunc_u_f64"](-0.9999999999999999), 0);
+assert_return(() => $$.exports["i32.trunc_u_f64"](100000000.0), 100000000);
+assert_trap(() => $$.exports["i32.trunc_u_f64"](4294967296.0));
+assert_trap(() => $$.exports["i32.trunc_u_f64"](-1.0));
+assert_trap(() => $$.exports["i32.trunc_u_f64"](1e+16));
+assert_trap(() => $$.exports["i32.trunc_u_f64"](1e+30));
+assert_trap(() => $$.exports["i32.trunc_u_f64"](9.223372036854776e+18));
+assert_trap(() => $$.exports["i32.trunc_u_f64"](Infinity));
+assert_trap(() => $$.exports["i32.trunc_u_f64"](-Infinity));
+assert_trap(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["assert_32"]());
+assert_return(() => $$.exports["assert_33"]());
+assert_return(() => $$.exports["assert_34"]());
+assert_return(() => $$.exports["assert_35"]());
+assert_return(() => $$.exports["assert_36"]());
+assert_return(() => $$.exports["assert_37"]());
+assert_return(() => $$.exports["assert_38"]());
+assert_return(() => $$.exports["assert_39"]());
+assert_return(() => $$.exports["assert_40"]());
+assert_return(() => $$.exports["assert_41"]());
+assert_return(() => $$.exports["assert_42"]());
+assert_return(() => $$.exports["assert_43"]());
+assert_trap(() => $$.exports["i64.trunc_s_f32"](f32(9.22337203685e+18)));
+assert_trap(() => $$.exports["i64.trunc_s_f32"](f32(-9.22337313637e+18)));
+assert_trap(() => $$.exports["i64.trunc_s_f32"](Infinity));
+assert_trap(() => $$.exports["i64.trunc_s_f32"](-Infinity));
+assert_trap(() => $$.exports["assert_44"]());
+assert_return(() => $$.exports["assert_45"]());
+assert_return(() => $$.exports["assert_46"]());
+assert_return(() => $$.exports["assert_47"]());
+assert_return(() => $$.exports["assert_48"]());
+assert_return(() => $$.exports["assert_49"]());
+assert_return(() => $$.exports["assert_50"]());
+assert_return(() => $$.exports["assert_51"]());
+assert_return(() => $$.exports["assert_52"]());
+assert_return(() => $$.exports["assert_53"]());
+assert_return(() => $$.exports["assert_54"]());
+assert_return(() => $$.exports["assert_55"]());
+assert_trap(() => $$.exports["i64.trunc_u_f32"](f32(1.84467440737e+19)));
+assert_trap(() => $$.exports["i64.trunc_u_f32"](f32(-1.0)));
+assert_trap(() => $$.exports["i64.trunc_u_f32"](Infinity));
+assert_trap(() => $$.exports["i64.trunc_u_f32"](-Infinity));
+assert_trap(() => $$.exports["assert_56"]());
+assert_return(() => $$.exports["assert_57"]());
+assert_return(() => $$.exports["assert_58"]());
+assert_return(() => $$.exports["assert_59"]());
+assert_return(() => $$.exports["assert_60"]());
+assert_return(() => $$.exports["assert_61"]());
+assert_return(() => $$.exports["assert_62"]());
+assert_return(() => $$.exports["assert_63"]());
+assert_return(() => $$.exports["assert_64"]());
+assert_return(() => $$.exports["assert_65"]());
+assert_return(() => $$.exports["assert_66"]());
+assert_return(() => $$.exports["assert_67"]());
+assert_return(() => $$.exports["assert_68"]());
+assert_return(() => $$.exports["assert_69"]());
+assert_return(() => $$.exports["assert_70"]());
+assert_return(() => $$.exports["assert_71"]());
+assert_return(() => $$.exports["assert_72"]());
+assert_trap(() => $$.exports["i64.trunc_s_f64"](9.223372036854776e+18));
+assert_trap(() => $$.exports["i64.trunc_s_f64"](-9.223372036854778e+18));
+assert_trap(() => $$.exports["i64.trunc_s_f64"](Infinity));
+assert_trap(() => $$.exports["i64.trunc_s_f64"](-Infinity));
+assert_trap(() => $$.exports["assert_73"]());
+assert_return(() => $$.exports["assert_74"]());
+assert_return(() => $$.exports["assert_75"]());
+assert_return(() => $$.exports["assert_76"]());
+assert_return(() => $$.exports["assert_77"]());
+assert_return(() => $$.exports["assert_78"]());
+assert_return(() => $$.exports["assert_79"]());
+assert_return(() => $$.exports["assert_80"]());
+assert_return(() => $$.exports["assert_81"]());
+assert_return(() => $$.exports["assert_82"]());
+assert_return(() => $$.exports["assert_83"]());
+assert_return(() => $$.exports["assert_84"]());
+assert_return(() => $$.exports["assert_85"]());
+assert_return(() => $$.exports["assert_86"]());
+assert_return(() => $$.exports["assert_87"]());
+assert_return(() => $$.exports["assert_88"]());
+assert_trap(() => $$.exports["i64.trunc_u_f64"](1.8446744073709552e+19));
+assert_trap(() => $$.exports["i64.trunc_u_f64"](-1.0));
+assert_trap(() => $$.exports["i64.trunc_u_f64"](Infinity));
+assert_trap(() => $$.exports["i64.trunc_u_f64"](-Infinity));
+assert_trap(() => $$.exports["assert_89"]());
+assert_return(() => $$.exports["f32.convert_s_i32"](1), f32(1.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](-1), f32(-1.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](0), f32(0.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](2147483647), f32(2147483648.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](-2147483648), f32(-2147483648.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](1234567890), f32(1234567936.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](16777217), f32(16777216.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](-16777217), f32(-16777216.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](16777219), f32(16777220.0));
+assert_return(() => $$.exports["f32.convert_s_i32"](-16777219), f32(-16777220.0));
+assert_return(() => $$.exports["assert_90"]());
+assert_return(() => $$.exports["assert_91"]());
+assert_return(() => $$.exports["assert_92"]());
+assert_return(() => $$.exports["assert_93"]());
+assert_return(() => $$.exports["assert_94"]());
+assert_return(() => $$.exports["assert_95"]());
+assert_return(() => $$.exports["assert_96"]());
+assert_return(() => $$.exports["assert_97"]());
+assert_return(() => $$.exports["assert_98"]());
+assert_return(() => $$.exports["assert_99"]());
+assert_return(() => $$.exports["f64.convert_s_i32"](1), 1.0);
+assert_return(() => $$.exports["f64.convert_s_i32"](-1), -1.0);
+assert_return(() => $$.exports["f64.convert_s_i32"](0), 0.0);
+assert_return(() => $$.exports["f64.convert_s_i32"](2147483647), 2147483647.0);
+assert_return(() => $$.exports["f64.convert_s_i32"](-2147483648), -2147483648.0);
+assert_return(() => $$.exports["f64.convert_s_i32"](987654321), 987654321.0);
+assert_return(() => $$.exports["assert_100"]());
+assert_return(() => $$.exports["assert_101"]());
+assert_return(() => $$.exports["assert_102"]());
+assert_return(() => $$.exports["assert_103"]());
+assert_return(() => $$.exports["assert_104"]());
+assert_return(() => $$.exports["assert_105"]());
+assert_return(() => $$.exports["assert_106"]());
+assert_return(() => $$.exports["assert_107"]());
+assert_return(() => $$.exports["assert_108"]());
+assert_return(() => $$.exports["assert_109"]());
+assert_return(() => $$.exports["f32.convert_u_i32"](1), f32(1.0));
+assert_return(() => $$.exports["f32.convert_u_i32"](0), f32(0.0));
+assert_return(() => $$.exports["f32.convert_u_i32"](2147483647), f32(2147483648.0));
+assert_return(() => $$.exports["f32.convert_u_i32"](-2147483648), f32(2147483648.0));
+assert_return(() => $$.exports["f32.convert_u_i32"](305419896), f32(305419904.0));
+assert_return(() => $$.exports["f32.convert_u_i32"](-1), f32(4294967296.0));
+assert_return(() => $$.exports["f32.convert_u_i32"](16777217), f32(16777216.0));
+assert_return(() => $$.exports["f32.convert_u_i32"](16777219), f32(16777220.0));
+assert_return(() => $$.exports["assert_110"]());
+assert_return(() => $$.exports["assert_111"]());
+assert_return(() => $$.exports["assert_112"]());
+assert_return(() => $$.exports["assert_113"]());
+assert_return(() => $$.exports["assert_114"]());
+assert_return(() => $$.exports["assert_115"]());
+assert_return(() => $$.exports["assert_116"]());
+assert_return(() => $$.exports["f64.convert_u_i32"](1), 1.0);
+assert_return(() => $$.exports["f64.convert_u_i32"](0), 0.0);
+assert_return(() => $$.exports["f64.convert_u_i32"](2147483647), 2147483647.0);
+assert_return(() => $$.exports["f64.convert_u_i32"](-2147483648), 2147483648.0);
+assert_return(() => $$.exports["f64.convert_u_i32"](-1), 4294967295.0);
+assert_return(() => $$.exports["assert_117"]());
+assert_return(() => $$.exports["assert_118"]());
+assert_return(() => $$.exports["assert_119"]());
+assert_return(() => $$.exports["assert_120"]());
+assert_return(() => $$.exports["assert_121"]());
+assert_return(() => $$.exports["assert_122"]());
+assert_return(() => $$.exports["assert_123"]());
+assert_return(() => $$.exports["f64.promote_f32"](f32(0.0)), 0.0);
+assert_return(() => $$.exports["f64.promote_f32"](f32(-0.0)), -0.0);
+assert_return(() => $$.exports["f64.promote_f32"](f32(1.40129846432e-45)), 1.401298464324817e-45);
+assert_return(() => $$.exports["f64.promote_f32"](f32(-1.40129846432e-45)), -1.401298464324817e-45);
+assert_return(() => $$.exports["f64.promote_f32"](f32(1.0)), 1.0);
+assert_return(() => $$.exports["f64.promote_f32"](f32(-1.0)), -1.0);
+assert_return(() => $$.exports["f64.promote_f32"](f32(-3.40282346639e+38)), -3.4028234663852886e+38);
+assert_return(() => $$.exports["f64.promote_f32"](f32(3.40282346639e+38)), 3.4028234663852886e+38);
+assert_return(() => $$.exports["f64.promote_f32"](f32(1.50463276905e-36)), 1.504632769052528e-36);
+assert_return(() => $$.exports["f64.promote_f32"](f32(6.63825367101e+37)), 6.6382536710104395e+37);
+assert_return(() => $$.exports["f64.promote_f32"](Infinity), Infinity);
+assert_return(() => $$.exports["f64.promote_f32"](-Infinity), -Infinity);
+assert_return(() => $$.exports["assert_124"]());
+assert_return(() => $$.exports["f32.demote_f64"](0.0), f32(0.0));
+assert_return(() => $$.exports["f32.demote_f64"](-0.0), f32(-0.0));
+assert_return(() => $$.exports["f32.demote_f64"](5e-324), f32(0.0));
+assert_return(() => $$.exports["f32.demote_f64"](-5e-324), f32(-0.0));
+assert_return(() => $$.exports["f32.demote_f64"](1.0), f32(1.0));
+assert_return(() => $$.exports["f32.demote_f64"](-1.0), f32(-1.0));
+assert_return(() => $$.exports["f32.demote_f64"](1.1754942807573643e-38), f32(1.17549435082e-38));
+assert_return(() => $$.exports["f32.demote_f64"](-1.1754942807573643e-38), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["f32.demote_f64"](1.1754942807573642e-38), f32(1.17549421069e-38));
+assert_return(() => $$.exports["f32.demote_f64"](-1.1754942807573642e-38), f32(-1.17549421069e-38));
+assert_return(() => $$.exports["f32.demote_f64"](1.401298464324817e-45), f32(1.40129846432e-45));
+assert_return(() => $$.exports["f32.demote_f64"](-1.401298464324817e-45), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["f32.demote_f64"](3.4028233649732406e+38), f32(3.40282326356e+38));
+assert_return(() => $$.exports["f32.demote_f64"](-3.4028233649732406e+38), f32(-3.40282326356e+38));
+assert_return(() => $$.exports["f32.demote_f64"](3.402823364973241e+38), f32(3.40282346639e+38));
+assert_return(() => $$.exports["f32.demote_f64"](-3.402823364973241e+38), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["f32.demote_f64"](3.4028234663852886e+38), f32(3.40282346639e+38));
+assert_return(() => $$.exports["f32.demote_f64"](-3.4028234663852886e+38), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["f32.demote_f64"](3.4028235677973362e+38), f32(3.40282346639e+38));
+assert_return(() => $$.exports["f32.demote_f64"](-3.4028235677973362e+38), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["f32.demote_f64"](3.4028235677973366e+38), Infinity);
+assert_return(() => $$.exports["f32.demote_f64"](-3.4028235677973366e+38), -Infinity);
+assert_return(() => $$.exports["f32.demote_f64"](1.504632769052528e-36), f32(1.50463276905e-36));
+assert_return(() => $$.exports["f32.demote_f64"](6.6382536710104395e+37), f32(6.63825367101e+37));
+assert_return(() => $$.exports["f32.demote_f64"](Infinity), Infinity);
+assert_return(() => $$.exports["f32.demote_f64"](-Infinity), -Infinity);
+assert_return(() => $$.exports["f32.demote_f64"](1.0000000000000002), f32(1.0));
+assert_return(() => $$.exports["f32.demote_f64"](0.9999999999999999), f32(1.0));
+assert_return(() => $$.exports["f32.demote_f64"](1.0000000596046448), f32(1.0));
+assert_return(() => $$.exports["f32.demote_f64"](1.000000059604645), f32(1.00000011921));
+assert_return(() => $$.exports["f32.demote_f64"](1.000000178813934), f32(1.00000011921));
+assert_return(() => $$.exports["f32.demote_f64"](1.0000001788139343), f32(1.00000023842));
+assert_return(() => $$.exports["f32.demote_f64"](1.0000002980232239), f32(1.00000023842));
+assert_return(() => $$.exports["f32.demote_f64"](16777217.0), f32(16777216.0));
+assert_return(() => $$.exports["f32.demote_f64"](16777217.000000004), f32(16777218.0));
+assert_return(() => $$.exports["f32.demote_f64"](16777218.999999996), f32(16777218.0));
+assert_return(() => $$.exports["f32.demote_f64"](16777219.0), f32(16777220.0));
+assert_return(() => $$.exports["f32.demote_f64"](4.242584432991427e+32), f32(4.24258454169e+32));
+assert_return(() => $$.exports["f32.demote_f64"](1.569262107843488e-34), f32(1.56926211427e-34));
+assert_return(() => $$.exports["f32.demote_f64"](1.0551773688605172e-38), f32(1.05517732325e-38));
+assert_return(() => $$.exports["f32.demote_f64"](-2.8238128484141933), f32(-2.82381296158));
+assert_return(() => $$.exports["f32.demote_f64"](-9.063376370095757e+33), f32(-9.0633762134e+33));
+assert_return(() => $$.exports["assert_125"]());
+assert_return(() => $$.exports["f32.demote_f64"](2.2250738585072014e-308), f32(0.0));
+assert_return(() => $$.exports["f32.demote_f64"](-2.2250738585072014e-308), f32(-0.0));
+assert_return(() => $$.exports["f32.demote_f64"](7.006492321624085e-46), f32(0.0));
+assert_return(() => $$.exports["f32.demote_f64"](-7.006492321624085e-46), f32(-0.0));
+assert_return(() => $$.exports["f32.demote_f64"](7.006492321624087e-46), f32(1.40129846432e-45));
+assert_return(() => $$.exports["f32.demote_f64"](-7.006492321624087e-46), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["f32.reinterpret_i32"](0), f32(0.0));
+assert_return(() => $$.exports["f32.reinterpret_i32"](-2147483648), f32(-0.0));
+assert_return(() => $$.exports["f32.reinterpret_i32"](1), f32(1.40129846432e-45));
+assert_return(() => $$.exports["assert_126"]());
+assert_return(() => $$.exports["f32.reinterpret_i32"](123456789), f32(1.65359970134e-34));
+assert_return(() => $$.exports["f32.reinterpret_i32"](-2147483647), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["f32.reinterpret_i32"](2139095040), Infinity);
+assert_return(() => $$.exports["f32.reinterpret_i32"](-8388608), -Infinity);
+assert_return(() => $$.exports["assert_127"]());
+assert_return(() => $$.exports["assert_128"]());
+assert_return(() => $$.exports["assert_129"]());
+assert_return(() => $$.exports["assert_130"]());
+assert_return(() => $$.exports["assert_131"]());
+assert_return(() => $$.exports["assert_132"]());
+assert_return(() => $$.exports["assert_133"]());
+assert_return(() => $$.exports["assert_134"]());
+assert_return(() => $$.exports["assert_135"]());
+assert_return(() => $$.exports["assert_136"]());
+assert_return(() => $$.exports["assert_137"]());
+assert_return(() => $$.exports["assert_138"]());
+assert_return(() => $$.exports["assert_139"]());
+assert_return(() => $$.exports["assert_140"]());
+assert_return(() => $$.exports["assert_141"]());
+assert_return(() => $$.exports["assert_142"]());
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(0.0)), 0);
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(-0.0)), -2147483648);
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["assert_143"]());
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(-1.40129846432e-45)), -2147483647);
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(1.0)), 1065353216);
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(3.14159250259)), 1078530010);
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(3.40282346639e+38)), 2139095039);
+assert_return(() => $$.exports["i32.reinterpret_f32"](f32(-3.40282346639e+38)), -8388609);
+assert_return(() => $$.exports["i32.reinterpret_f32"](Infinity), 2139095040);
+assert_return(() => $$.exports["i32.reinterpret_f32"](-Infinity), -8388608);
+assert_return(() => $$.exports["assert_144"]());
+assert_return(() => $$.exports["assert_145"]());
+assert_return(() => $$.exports["assert_146"]());
+assert_return(() => $$.exports["assert_147"]());
+assert_return(() => $$.exports["assert_148"]());
+assert_return(() => $$.exports["assert_149"]());
+assert_return(() => $$.exports["assert_150"]());
+assert_return(() => $$.exports["assert_151"]());
+assert_return(() => $$.exports["assert_152"]());
+assert_return(() => $$.exports["assert_153"]());
+assert_return(() => $$.exports["assert_154"]());
+assert_return(() => $$.exports["assert_155"]());
+assert_return(() => $$.exports["assert_156"]());
+assert_return(() => $$.exports["assert_157"]());
+assert_return(() => $$.exports["assert_158"]());
+assert_return(() => $$.exports["assert_159"]());
+assert_return(() => $$.exports["assert_160"]());
+assert_return(() => $$.exports["assert_161"]());
+assert_return(() => $$.exports["assert_162"]());
diff --git a/JSTests/wasm/spec-tests/custom_section.wast.js b/JSTests/wasm/spec-tests/custom_section.wast.js
new file mode 100644
index 0000000..1e48ed3
--- /dev/null
+++ b/JSTests/wasm/spec-tests/custom_section.wast.js
@@ -0,0 +1,101 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x07\x01\x60\x02\x7f\x7f\x01\x7f\x03\x02\x01\x00\x07\x0a\x01\x06\x61\x64\x64\x54\x77\x6f\x00\x00\x0a\x09\x01\x07\x00\x20\x00\x20\x01\x6a\x0b");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x00\x00");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x00\x26\x10\x61\x20\x63\x75\x73\x74\x6f\x6d\x20\x73\x65\x63\x74\x69\x6f\x6e\x74\x68\x69\x73\x20\x69\x73\x20\x74\x68\x65\x20\x70\x61\x79\x6c\x6f\x61\x64");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x00\x25\x10\x61\x20\x63\x75\x73\x74\x6f\x6d\x20\x73\x65\x63\x74\x69\x6f\x6e\x74\x68\x69\x73\x20\x69\x73\x20\x74\x68\x65\x20\x70\x61\x79\x6c\x6f\x61\x64\x00\x24\x10\x61\x20\x63\x75\x73\x74\x6f\x6d\x20\x73\x65\x63\x74\x69\x6f\x6e\x74\x68\x69\x73\x20\x69\x73\x20\x74\x68\x65\x20\x70\x61\x79\x6c\x6f\x61\x64");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x07\x01\x60\x02\x7f\x7f\x01\x7f\x00\x25\x10\x61\x20\x63\x75\x73\x74\x6f\x6d\x20\x73\x65\x63\x74\x69\x6f\x6e\x74\x68\x69\x73\x20\x69\x73\x20\x74\x68\x65\x20\x70\x61\x79\x6c\x6f\x61\x64\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x20\x00\x20\x01\x6a\x0b\x00\x1b\x07\x63\x75\x73\x74\x6f\x6d\x32\x74\x68\x69\x73\x20\x69\x73\x20\x74\x68\x65\x20\x70\x61\x79\x6c\x6f\x61\x64");
diff --git a/JSTests/wasm/spec-tests/endianness.wast.js b/JSTests/wasm/spec-tests/endianness.wast.js
new file mode 100644
index 0000000..e0a8c04
--- /dev/null
+++ b/JSTests/wasm/spec-tests/endianness.wast.js
@@ -0,0 +1,163 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x27\x08\x60\x02\x7f\x7f\x00\x60\x02\x7f\x7e\x00\x60\x01\x7f\x01\x7f\x60\x01\x7f\x01\x7e\x60\x01\x7e\x01\x7e\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x38\x37\x00\x00\x01\x02\x02\x03\x02\x02\x02\x04\x04\x04\x04\x04\x05\x06\x02\x02\x04\x04\x04\x05\x06\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x05\x03\x01\x00\x01\x07\xd7\x04\x31\x0c\x69\x33\x32\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x73\x00\x06\x0c\x69\x33\x32\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x75\x00\x07\x08\x69\x33\x32\x5f\x6c\x6f\x61\x64\x00\x08\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x73\x00\x09\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x75\x00\x0a\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x33\x32\x5f\x73\x00\x0b\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x33\x32\x5f\x75\x00\x0c\x08\x69\x36\x34\x5f\x6c\x6f\x61\x64\x00\x0d\x08\x66\x33\x32\x5f\x6c\x6f\x61\x64\x00\x0e\x08\x66\x36\x34\x5f\x6c\x6f\x61\x64\x00\x0f\x0b\x69\x33\x32\x5f\x73\x74\x6f\x72\x65\x31\x36\x00\x10\x09\x69\x33\x32\x5f\x73\x74\x6f\x72\x65\x00\x11\x0b\x69\x36\x34\x5f\x73\x74\x6f\x72\x65\x31\x36\x00\x12\x0b\x69\x36\x34\x5f\x73\x74\x6f\x72\x65\x33\x32\x00\x13\x09\x69\x36\x34\x5f\x73\x74\x6f\x72\x65\x00\x14\x09\x66\x33\x32\x5f\x73\x74\x6f\x72\x65\x00\x15\x09\x66\x36\x34\x5f\x73\x74\x6f\x72\x65\x00\x16\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x17\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x18\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x19\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x1a\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x1b\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x1c\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x1d\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x1e\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x1f\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x20\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x21\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x22\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x23\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x24\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x25\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x36\x0a\xd2\x08\x37\x16\x00\x20\x00\x20\x01\x3a\x00\x00\x20\x00\x41\x01\x6a\x20\x01\x41\x08\x76\x3a\x00\x00\x0b\x14\x00\x20\x00\x20\x01\x10\x00\x20\x00\x41\x02\x6a\x20\x01\x41\x10\x76\x10\x00\x0b\x16\x00\x20\x00\x20\x01\xa7\x10\x01\x20\x00\x41\x04\x6a\x20\x01\x42\x20\x88\xa7\x10\x01\x0b\x13\x00\x20\x00\x2d\x00\x00\x20\x00\x41\x01\x6a\x2d\x00\x00\x41\x08\x74\x72\x0b\x11\x00\x20\x00\x10\x03\x20\x00\x41\x02\x6a\x10\x03\x41\x10\x74\x72\x0b\x13\x00\x20\x00\x10\x04\xad\x20\x00\x41\x04\x6a\x10\x04\xad\x42\x20\x86\x84\x0b\x0d\x00\x41\x00\x20\x00\x10\x00\x41\x00\x2e\x01\x00\x0b\x0d\x00\x41\x00\x20\x00\x10\x00\x41\x00\x2f\x01\x00\x0b\x0d\x00\x41\x00\x20\x00\x10\x01\x41\x00\x28\x02\x00\x0b\x0e\x00\x41\x00\x20\x00\xa7\x10\x00\x41\x00\x32\x01\x00\x0b\x0e\x00\x41\x00\x20\x00\xa7\x10\x00\x41\x00\x33\x01\x00\x0b\x0e\x00\x41\x00\x20\x00\xa7\x10\x01\x41\x00\x34\x02\x00\x0b\x0e\x00\x41\x00\x20\x00\xa7\x10\x01\x41\x00\x35\x02\x00\x0b\x0d\x00\x41\x00\x20\x00\x10\x02\x41\x00\x29\x03\x00\x0b\x0e\x00\x41\x00\x20\x00\xbc\x10\x01\x41\x00\x2a\x02\x00\x0b\x0e\x00\x41\x00\x20\x00\xbd\x10\x02\x41\x00\x2b\x03\x00\x0b\x0d\x00\x41\x00\x20\x00\x3b\x01\x00\x41\x00\x10\x03\x0b\x0d\x00\x41\x00\x20\x00\x36\x02\x00\x41\x00\x10\x04\x0b\x0e\x00\x41\x00\x20\x00\x3d\x01\x00\x41\x00\x10\x03\xad\x0b\x0e\x00\x41\x00\x20\x00\x3e\x02\x00\x41\x00\x10\x04\xad\x0b\x0d\x00\x41\x00\x20\x00\x37\x03\x00\x41\x00\x10\x05\x0b\x0e\x00\x41\x00\x20\x00\x38\x02\x00\x41\x00\x10\x04\xbe\x0b\x0e\x00\x41\x00\x20\x00\x39\x03\x00\x41\x00\x10\x05\xbf\x0b\x11\x00\x02\x40\x42\x7f\x10\x09\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\xee\x5e\x10\x09\x42\xee\x5e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x2a\x10\x09\x42\x2a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x90\xe4\x00\x10\x09\x42\x90\xe4\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x10\x0a\x42\xff\xff\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\xee\x5e\x10\x0a\x42\xee\xde\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x2a\x10\x0a\x42\x2a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xfe\x95\x03\x10\x0a\x42\xfe\x95\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x42\xce\xd0\xe2\x6b\x10\x0b\x42\xce\xd0\xe2\x6b\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x42\xb2\xaf\x9d\x14\x10\x0b\x42\xb2\xaf\x9d\x14\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xf8\xac\xd1\x91\x01\x10\x0b\x42\xf8\xac\xd1\x91\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x7f\x10\x0c\x42\xff\xff\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x42\xce\xd0\xe2\x6b\x10\x0c\x42\xce\xd0\xe2\xeb\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x42\xb2\xaf\x9d\x14\x10\x0c\x42\xb2\xaf\x9d\x14\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xea\xbb\xb4\xdd\x0a\x10\x0c\x42\xea\xbb\xb4\xdd\x0a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x0d\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x42\xce\xd0\xe2\x6b\x10\x0d\x42\xce\xd0\xe2\x6b\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xea\xbb\xb4\xdd\x0a\x10\x0d\x42\xea\xbb\xb4\xdd\x0a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\xea\xbb\xb4\xf5\xed\xdf\xf2\xd6\xab\x7f\x10\x0d\x42\xea\xbb\xb4\xf5\xed\xdf\xf2\xd6\xab\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x10\x12\x42\xff\xff\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\xee\x5e\x10\x12\x42\xee\xde\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x2a\x10\x12\x42\x2a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xfe\x95\x03\x10\x12\x42\xfe\x95\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x7f\x10\x13\x42\xff\xff\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x42\xee\x5e\x10\x13\x42\xee\xde\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x42\xb2\xaf\x9d\x14\x10\x13\x42\xb2\xaf\x9d\x14\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xfe\x95\xb7\xf5\x0d\x10\x13\x42\xfe\x95\xb7\xf5\x0d\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x14\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x17\x00\x02\x40\x42\xce\xd0\xe2\x6b\x10\x14\x42\xce\xd0\xe2\x6b\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xea\xbb\xb4\xdd\x0a\x10\x14\x42\xea\xbb\xb4\xdd\x0a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\xea\xbb\xb4\xf5\xed\xdf\xf2\xd6\xab\x7f\x10\x14\x42\xea\xbb\xb4\xf5\xed\xdf\xf2\xd6\xab\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32_load16_s"](-1), -1);
+assert_return(() => $$.exports["i32_load16_s"](-4242), -4242);
+assert_return(() => $$.exports["i32_load16_s"](42), 42);
+assert_return(() => $$.exports["i32_load16_s"](12816), 12816);
+assert_return(() => $$.exports["i32_load16_u"](-1), 65535);
+assert_return(() => $$.exports["i32_load16_u"](-4242), 61294);
+assert_return(() => $$.exports["i32_load16_u"](42), 42);
+assert_return(() => $$.exports["i32_load16_u"](51966), 51966);
+assert_return(() => $$.exports["i32_load"](-1), -1);
+assert_return(() => $$.exports["i32_load"](-42424242), -42424242);
+assert_return(() => $$.exports["i32_load"](42424242), 42424242);
+assert_return(() => $$.exports["i32_load"](-1414717974), -1414717974);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["f32_load"](f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["f32_load"](f32(0.0123399998993)), f32(0.0123399998993));
+assert_return(() => $$.exports["f32_load"](f32(4242.42431641)), f32(4242.42431641));
+assert_return(() => $$.exports["f32_load"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["f64_load"](-1.0), -1.0);
+assert_return(() => $$.exports["f64_load"](1234.56789), 1234.56789);
+assert_return(() => $$.exports["f64_load"](424242.424242), 424242.424242);
+assert_return(() => $$.exports["f64_load"](1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["i32_store16"](-1), 65535);
+assert_return(() => $$.exports["i32_store16"](-4242), 61294);
+assert_return(() => $$.exports["i32_store16"](42), 42);
+assert_return(() => $$.exports["i32_store16"](51966), 51966);
+assert_return(() => $$.exports["i32_store"](-1), -1);
+assert_return(() => $$.exports["i32_store"](-4242), -4242);
+assert_return(() => $$.exports["i32_store"](42424242), 42424242);
+assert_return(() => $$.exports["i32_store"](-559035650), -559035650);
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["f32_store"](f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["f32_store"](f32(0.0123399998993)), f32(0.0123399998993));
+assert_return(() => $$.exports["f32_store"](f32(4242.42431641)), f32(4242.42431641));
+assert_return(() => $$.exports["f32_store"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["f64_store"](-1.0), -1.0);
+assert_return(() => $$.exports["f64_store"](1234.56789), 1234.56789);
+assert_return(() => $$.exports["f64_store"](424242.424242), 424242.424242);
+assert_return(() => $$.exports["f64_store"](1.7976931348623157e+308), 1.7976931348623157e+308);
diff --git a/JSTests/wasm/spec-tests/exports.wast.js b/JSTests/wasm/spec-tests/exports.wast.js
new file mode 100644
index 0000000..505c9cc
--- /dev/null
+++ b/JSTests/wasm/spec-tests/exports.wast.js
@@ -0,0 +1,174 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x09\x02\x01\x61\x00\x00\x01\x62\x00\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x03\x02\x00\x00\x07\x09\x02\x01\x61\x00\x00\x01\x62\x00\x01\x0a\x07\x02\x02\x00\x0b\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+let $Func = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x07\x05\x01\x01\x65\x00\x00\x0a\x0a\x01\x08\x00\x20\x00\x41\x01\x6a\x0f\x0b");
+assert_return(() => $$.exports["e"](42), 43);
+assert_return(() => $Func.exports["e"](42), 43);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+let $Other1 = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+assert_return(() => $Func.exports["e"](42), 43);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x05\x01\x01\x61\x00\x01\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x07\x09\x02\x01\x61\x00\x00\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x03\x02\x00\x00\x07\x09\x02\x01\x61\x00\x00\x01\x61\x00\x01\x0a\x07\x02\x02\x00\x0b\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x00\x00\x01\x61\x03\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x04\x04\x01\x70\x00\x00\x07\x09\x02\x01\x61\x00\x00\x01\x61\x01\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x07\x09\x02\x01\x61\x00\x00\x01\x61\x02\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x03\x00\x01\x62\x03\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x0b\x02\x7f\x00\x41\x00\x0b\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x03\x00\x01\x62\x03\x01");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+let $Global = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x2a\x0b\x07\x05\x01\x01\x65\x03\x00");
+assert_return(() => $$.exports["e"], 42);
+assert_return(() => $Global.exports["e"], 42);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+let $Other2 = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+assert_return(() => $Global.exports["e"], 42);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x05\x01\x01\x61\x03\x01");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x03\x00\x01\x61\x03\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x0b\x02\x7f\x00\x41\x00\x0b\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x03\x00\x01\x61\x03\x01");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x03\x00\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x03\x00\x01\x61\x01\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x03\x00\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x09\x02\x01\x61\x01\x00\x01\x62\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x05\x01\x70\x01\x00\x01\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x05\x01\x70\x01\x00\x01\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x05\x01\x70\x01\x00\x01\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x05\x01\x70\x01\x00\x01\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x05\x01\x70\x01\x00\x01\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x05\x01\x70\x01\x00\x01\x07\x05\x01\x01\x61\x01\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x05\x01\x01\x61\x01\x01");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x07\x09\x02\x01\x61\x01\x00\x01\x61\x01\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x04\x04\x01\x70\x00\x00\x07\x09\x02\x01\x61\x01\x00\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x01\x00\x01\x61\x03\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x05\x03\x01\x00\x00\x07\x09\x02\x01\x61\x01\x00\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x09\x02\x01\x61\x02\x00\x01\x62\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x01\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x01\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x01\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x01\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x01\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x01\x07\x05\x01\x01\x61\x02\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x05\x01\x01\x61\x02\x01");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x07\x09\x02\x01\x61\x02\x00\x01\x61\x02\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x07\x09\x02\x01\x61\x02\x00\x01\x61\x00\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b\x07\x09\x02\x01\x61\x02\x00\x01\x61\x03\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x00\x05\x03\x01\x00\x00\x07\x09\x02\x01\x61\x02\x00\x01\x61\x01\x00");
diff --git a/JSTests/wasm/spec-tests/f32.wast.js b/JSTests/wasm/spec-tests/f32.wast.js
new file mode 100644
index 0000000..ffa5abf
--- /dev/null
+++ b/JSTests/wasm/spec-tests/f32.wast.js
@@ -0,0 +1,2489 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x03\x60\x02\x7d\x7d\x01\x7d\x60\x01\x7d\x01\x7d\x60\x00\x00\x03\xfa\x03\xf8\x03\x00\x00\x00\x00\x01\x00\x00\x01\x01\x01\x01\x01\x01\x00\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\xd1\x34\xf8\x03\x03\x61\x64\x64\x00\x00\x03\x73\x75\x62\x00\x01\x03\x6d\x75\x6c\x00\x02\x03\x64\x69\x76\x00\x03\x04\x73\x71\x72\x74\x00\x04\x03\x6d\x69\x6e\x00\x05\x03\x6d\x61\x78\x00\x06\x04\x63\x65\x69\x6c\x00\x07\x05\x66\x6c\x6f\x6f\x72\x00\x08\x05\x74\x72\x75\x6e\x63\x00\x09\x07\x6e\x65\x61\x72\x65\x73\x74\x00\x0a\x03\x61\x62\x73\x00\x0b\x03\x6e\x65\x67\x00\x0c\x08\x63\x6f\x70\x79\x73\x69\x67\x6e\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x0f\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x10\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x11\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x12\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x13\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x14\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x15\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x16\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x17\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x18\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x19\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x1a\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x1b\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x1c\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x1d\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x1e\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x1f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x20\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x21\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x22\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x23\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x24\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x25\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x00\x3d\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x00\x3e\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x39\x00\x3f\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x30\x00\x40\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x31\x00\x41\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x32\x00\x42\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x33\x00\x43\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x34\x00\x44\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x35\x00\x45\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x36\x00\x46\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x37\x00\x47\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x38\x00\x48\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x39\x00\x49\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x30\x00\x4a\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x31\x00\x4b\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x32\x00\x4c\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x33\x00\x4d\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x34\x00\x4e\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x35\x00\x4f\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x36\x00\x50\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x37\x00\x51\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x38\x00\x52\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x39\x00\x53\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x30\x00\x54\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x31\x00\x55\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x32\x00\x56\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x33\x00\x57\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x34\x00\x58\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x35\x00\x59\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x36\x00\x5a\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x37\x00\x5b\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x38\x00\x5c\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x39\x00\x5d\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x30\x00\x5e\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x31\x00\x5f\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x32\x00\x60\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x33\x00\x61\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x34\x00\x62\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x35\x00\x63\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x36\x00\x64\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x37\x00\x65\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x38\x00\x66\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x39\x00\x67\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x30\x00\x68\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x31\x00\x69\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x32\x00\x6a\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x33\x00\x6b\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x34\x00\x6c\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x35\x00\x6d\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x36\x00\x6e\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x37\x00\x6f\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x38\x00\x70\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x39\x00\x71\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x30\x00\x72\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x31\x00\x73\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x32\x00\x74\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x33\x00\x75\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x34\x00\x76\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x35\x00\x77\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x36\x00\x78\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x37\x00\x79\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x38\x00\x7a\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x39\x00\x7b\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x30\x00\x7c\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x31\x00\x7d\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x32\x00\x7e\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x33\x00\x7f\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x34\x00\x80\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x35\x00\x81\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x36\x00\x82\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x37\x00\x83\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x38\x00\x84\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x39\x00\x85\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x30\x00\x86\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x31\x00\x87\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x32\x00\x88\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x33\x00\x89\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x34\x00\x8a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x35\x00\x8b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x36\x00\x8c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x37\x00\x8d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x38\x00\x8e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x39\x00\x8f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x30\x00\x90\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x31\x00\x91\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x32\x00\x92\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x33\x00\x93\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x34\x00\x94\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x35\x00\x95\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x36\x00\x96\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x37\x00\x97\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x38\x00\x98\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x39\x00\x99\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x30\x00\x9a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x31\x00\x9b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x32\x00\x9c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x33\x00\x9d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x34\x00\x9e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x35\x00\x9f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x36\x00\xa0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x37\x00\xa1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x38\x00\xa2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x39\x00\xa3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x30\x00\xa4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x31\x00\xa5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x32\x00\xa6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x33\x00\xa7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x34\x00\xa8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x35\x00\xa9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x36\x00\xaa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x37\x00\xab\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x38\x00\xac\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x39\x00\xad\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x30\x00\xae\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x31\x00\xaf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x32\x00\xb0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x33\x00\xb1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x34\x00\xb2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x35\x00\xb3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x36\x00\xb4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x37\x00\xb5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x38\x00\xb6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x39\x00\xb7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x30\x00\xb8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x31\x00\xb9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x32\x00\xba\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x33\x00\xbb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x34\x00\xbc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x35\x00\xbd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x36\x00\xbe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x37\x00\xbf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x38\x00\xc0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x39\x00\xc1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x30\x00\xc2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x31\x00\xc3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x32\x00\xc4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x33\x00\xc5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x34\x00\xc6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x35\x00\xc7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x36\x00\xc8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x37\x00\xc9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x38\x00\xca\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x39\x00\xcb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x30\x00\xcc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x31\x00\xcd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x32\x00\xce\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x33\x00\xcf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x34\x00\xd0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x35\x00\xd1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x36\x00\xd2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x37\x00\xd3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x38\x00\xd4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x39\x00\xd5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x30\x00\xd6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x31\x00\xd7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x32\x00\xd8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x33\x00\xd9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x34\x00\xda\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x35\x00\xdb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x36\x00\xdc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x37\x00\xdd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x38\x00\xde\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x39\x00\xdf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x30\x00\xe0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x31\x00\xe1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x32\x00\xe2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x33\x00\xe3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x34\x00\xe4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x35\x00\xe5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x36\x00\xe6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x37\x00\xe7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x38\x00\xe8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x39\x00\xe9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x30\x00\xea\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x31\x00\xeb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x32\x00\xec\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x33\x00\xed\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x34\x00\xee\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x35\x00\xef\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x36\x00\xf0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x37\x00\xf1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x38\x00\xf2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x39\x00\xf3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x30\x00\xf4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x31\x00\xf5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x32\x00\xf6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x33\x00\xf7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x34\x00\xf8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x35\x00\xf9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x36\x00\xfa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x37\x00\xfb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x38\x00\xfc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x39\x00\xfd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x30\x00\xfe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x31\x00\xff\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x32\x00\x80\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x33\x00\x81\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x34\x00\x82\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x35\x00\x83\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x36\x00\x84\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x37\x00\x85\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x38\x00\x86\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x39\x00\x87\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x30\x00\x88\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x31\x00\x89\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x32\x00\x8a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x33\x00\x8b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x34\x00\x8c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x35\x00\x8d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x36\x00\x8e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x37\x00\x8f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x38\x00\x90\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x39\x00\x91\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x30\x00\x92\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x31\x00\x93\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x32\x00\x94\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x33\x00\x95\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x34\x00\x96\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x35\x00\x97\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x36\x00\x98\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x37\x00\x99\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x38\x00\x9a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x39\x00\x9b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x30\x00\x9c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x31\x00\x9d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x32\x00\x9e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x33\x00\x9f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x34\x00\xa0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x35\x00\xa1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x36\x00\xa2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x37\x00\xa3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x38\x00\xa4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x39\x00\xa5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x30\x00\xa6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x31\x00\xa7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x32\x00\xa8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x33\x00\xa9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x34\x00\xaa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x35\x00\xab\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x36\x00\xac\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x37\x00\xad\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x38\x00\xae\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x39\x00\xaf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x30\x00\xb0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x31\x00\xb1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x32\x00\xb2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x33\x00\xb3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x34\x00\xb4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x35\x00\xb5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x36\x00\xb6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x37\x00\xb7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x38\x00\xb8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x39\x00\xb9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x30\x00\xba\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x31\x00\xbb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x32\x00\xbc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x33\x00\xbd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x34\x00\xbe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x35\x00\xbf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x36\x00\xc0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x37\x00\xc1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x38\x00\xc2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x39\x00\xc3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x30\x00\xc4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x31\x00\xc5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x32\x00\xc6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x33\x00\xc7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x34\x00\xc8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x35\x00\xc9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x36\x00\xca\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x37\x00\xcb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x38\x00\xcc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x39\x00\xcd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x30\x00\xce\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x31\x00\xcf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x32\x00\xd0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x33\x00\xd1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x34\x00\xd2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x35\x00\xd3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x36\x00\xd4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x37\x00\xd5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x38\x00\xd6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x39\x00\xd7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x30\x00\xd8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x31\x00\xd9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x32\x00\xda\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x33\x00\xdb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x34\x00\xdc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x35\x00\xdd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x36\x00\xde\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x37\x00\xdf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x38\x00\xe0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x39\x00\xe1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x30\x00\xe2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x31\x00\xe3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x32\x00\xe4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x33\x00\xe5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x34\x00\xe6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x35\x00\xe7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x36\x00\xe8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x37\x00\xe9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x38\x00\xea\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x39\x00\xeb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x30\x00\xec\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x31\x00\xed\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x32\x00\xee\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x33\x00\xef\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x34\x00\xf0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x35\x00\xf1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x36\x00\xf2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x37\x00\xf3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x38\x00\xf4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x39\x00\xf5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x30\x00\xf6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x31\x00\xf7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x32\x00\xf8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x33\x00\xf9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x34\x00\xfa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x35\x00\xfb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x36\x00\xfc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x37\x00\xfd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x38\x00\xfe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x39\x00\xff\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x30\x00\x80\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x31\x00\x81\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x32\x00\x82\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x33\x00\x83\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x34\x00\x84\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x35\x00\x85\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x36\x00\x86\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x37\x00\x87\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x38\x00\x88\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x39\x00\x89\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x30\x00\x8a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x31\x00\x8b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x32\x00\x8c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x33\x00\x8d\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x34\x00\x8e\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x35\x00\x8f\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x36\x00\x90\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x37\x00\x91\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x38\x00\x92\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x39\x00\x93\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x30\x00\x94\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x31\x00\x95\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x32\x00\x96\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x33\x00\x97\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x34\x00\x98\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x35\x00\x99\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x36\x00\x9a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x37\x00\x9b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x38\x00\x9c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x39\x00\x9d\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x30\x00\x9e\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x31\x00\x9f\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x32\x00\xa0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x33\x00\xa1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x34\x00\xa2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x35\x00\xa3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x36\x00\xa4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x37\x00\xa5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x38\x00\xa6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x39\x00\xa7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x30\x00\xa8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x31\x00\xa9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x32\x00\xaa\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x33\x00\xab\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x34\x00\xac\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x35\x00\xad\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x36\x00\xae\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x37\x00\xaf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x38\x00\xb0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x39\x00\xb1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x30\x00\xb2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x31\x00\xb3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x32\x00\xb4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x33\x00\xb5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x34\x00\xb6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x35\x00\xb7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x36\x00\xb8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x37\x00\xb9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x38\x00\xba\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x39\x00\xbb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x30\x00\xbc\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x31\x00\xbd\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x32\x00\xbe\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x33\x00\xbf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x34\x00\xc0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x35\x00\xc1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x36\x00\xc2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x37\x00\xc3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x38\x00\xc4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x39\x00\xc5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x30\x00\xc6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x31\x00\xc7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x32\x00\xc8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x33\x00\xc9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x34\x00\xca\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x35\x00\xcb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x36\x00\xcc\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x37\x00\xcd\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x38\x00\xce\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x39\x00\xcf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x30\x00\xd0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x31\x00\xd1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x32\x00\xd2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x33\x00\xd3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x34\x00\xd4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x35\x00\xd5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x36\x00\xd6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x37\x00\xd7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x38\x00\xd8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x39\x00\xd9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x30\x00\xda\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x31\x00\xdb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x32\x00\xdc\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x33\x00\xdd\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x34\x00\xde\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x35\x00\xdf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x36\x00\xe0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x37\x00\xe1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x38\x00\xe2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x39\x00\xe3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x30\x00\xe4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x31\x00\xe5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x32\x00\xe6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x33\x00\xe7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x34\x00\xe8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x35\x00\xe9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x36\x00\xea\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x37\x00\xeb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x38\x00\xec\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x39\x00\xed\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x30\x00\xee\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x31\x00\xef\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x32\x00\xf0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x33\x00\xf1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x34\x00\xf2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x35\x00\xf3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x36\x00\xf4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x37\x00\xf5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x38\x00\xf6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x39\x00\xf7\x03\x0a\x84\x78\xf8\x03\x07\x00\x20\x00\x20\x01\x92\x0b\x07\x00\x20\x00\x20\x01\x93\x0b\x07\x00\x20\x00\x20\x01\x94\x0b\x07\x00\x20\x00\x20\x01\x95\x0b\x05\x00\x20\x00\x91\x0b\x07\x00\x20\x00\x20\x01\x96\x0b\x07\x00\x20\x00\x20\x01\x97\x0b\x05\x00\x20\x00\x8d\x0b\x05\x00\x20\x00\x8e\x0b\x05\x00\x20\x00\x8f\x0b\x05\x00\x20\x00\x90\x0b\x05\x00\x20\x00\x8b\x0b\x05\x00\x20\x00\x8c\x0b\x07\x00\x20\x00\x20\x01\x98\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x00\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x00\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x01\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x01\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x02\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x02\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x03\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x03\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x05\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x01\x01\x7d\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x06\x22\x00\xbc\x20\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x00\x80\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x00\x80\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x01\x00\x00\x80\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x01\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x01\x00\x00\x80\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x01\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x80\x80\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x80\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x80\x80\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x80\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x00\xbf\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x00\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x00\xbf\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x00\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x80\xbf\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x80\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x80\xbf\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x80\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\xdb\x0f\xc9\xc0\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\xdb\x0f\xc9\x40\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\xdb\x0f\xc9\xc0\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\xdb\x0f\xc9\x40\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\xff\xff\x7f\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\xff\xff\x7f\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\xff\xff\x7f\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\xff\xff\x7f\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x80\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x80\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\x80\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\x80\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x0d\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x0d\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x04\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x04\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x08\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x08\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x07\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x07\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x09\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x09\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x0a\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x0a\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x0b\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x0b\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x0c\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x0c\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["add"](f32(-0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(0.0), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(0.0), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(0.0), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(0.0), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(0.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(0.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(0.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(0.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(0.0), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(0.0), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-0.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(0.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(0.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-0.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(-0.0), Infinity), Infinity);
+assert_return(() => $$.exports["add"](f32(0.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(0.0), Infinity), Infinity);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(-0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(-0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), f32(-2.80259692865e-45));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(1.40129846432e-45)), f32(2.80259692865e-45));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.17549449095e-38));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), f32(1.17549421069e-38));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.17549421069e-38));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(1.17549435082e-38)), f32(1.17549449095e-38));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(-1.40129846432e-45), Infinity), Infinity);
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(1.40129846432e-45), Infinity), Infinity);
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(-0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(-0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), f32(-1.17549449095e-38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), f32(-1.17549421069e-38));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), f32(1.17549421069e-38));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(1.17549449095e-38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), f32(-2.35098870164e-38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(1.17549435082e-38)), f32(2.35098870164e-38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(-1.17549435082e-38), Infinity), Infinity);
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(1.17549435082e-38), Infinity), Infinity);
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["add"](f32(-0.5), f32(-0.0)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(0.0)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(-0.0)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(0.0)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(-1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(-1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(-1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(-1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(-0.5)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(0.5), f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(0.5), f32(0.5)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(-1.0)), f32(-1.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(1.0)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(-1.0)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(0.5), f32(1.0)), f32(1.5));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(-6.28318548203)), f32(-6.78318548203));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(6.28318548203)), f32(5.78318548203));
+assert_return(() => $$.exports["add"](f32(0.5), f32(-6.28318548203)), f32(-5.78318548203));
+assert_return(() => $$.exports["add"](f32(0.5), f32(6.28318548203)), f32(6.78318548203));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-0.5), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(0.5), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(0.5), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-0.5), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(-0.5), Infinity), Infinity);
+assert_return(() => $$.exports["add"](f32(0.5), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(0.5), Infinity), Infinity);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["add"](f32(-1.0), f32(-0.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(0.0)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(-0.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(0.0)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(-1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(-1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(-1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(-0.5)), f32(-1.5));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["add"](f32(1.0), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["add"](f32(1.0), f32(0.5)), f32(1.5));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(-1.0)), f32(-2.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(-1.0)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(1.0), f32(1.0)), f32(2.0));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(-6.28318548203)), f32(-7.28318548203));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(6.28318548203)), f32(5.28318548203));
+assert_return(() => $$.exports["add"](f32(1.0), f32(-6.28318548203)), f32(-5.28318548203));
+assert_return(() => $$.exports["add"](f32(1.0), f32(6.28318548203)), f32(7.28318548203));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-1.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(1.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(1.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-1.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(-1.0), Infinity), Infinity);
+assert_return(() => $$.exports["add"](f32(1.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(1.0), Infinity), Infinity);
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(-0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(-0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(-1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(-1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(-1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(-1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(-0.5)), f32(-6.78318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(0.5)), f32(-5.78318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(-0.5)), f32(5.78318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(0.5)), f32(6.78318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(-1.0)), f32(-7.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(1.0)), f32(-5.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(-1.0)), f32(5.28318548203));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(1.0)), f32(7.28318548203));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(-6.28318548203)), f32(-12.5663709641));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(-6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(6.28318548203)), f32(12.5663709641));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(6.28318548203), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-6.28318548203), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(-6.28318548203), Infinity), Infinity);
+assert_return(() => $$.exports["add"](f32(6.28318548203), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(6.28318548203), Infinity), Infinity);
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(-0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(-0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(-0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(-0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(-1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(-1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(-6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(-6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(-3.40282346639e+38), Infinity), Infinity);
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](f32(3.40282346639e+38), Infinity), Infinity);
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["add"](-Infinity, f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(0.0)), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(-0.0)), Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(0.0)), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(-1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(0.5)), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(-0.5)), Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(0.5)), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(1.0)), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(-1.0)), Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(1.0)), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(6.28318548203)), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(-6.28318548203)), Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["add"](Infinity, f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -Infinity), -Infinity);
+assert_return_nan(() => $$.exports["add"](-Infinity, Infinity));
+assert_return_nan(() => $$.exports["add"](Infinity, -Infinity));
+assert_return(() => $$.exports["add"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["assert_32"]());
+assert_return(() => $$.exports["assert_33"]());
+assert_return(() => $$.exports["assert_34"]());
+assert_return(() => $$.exports["assert_35"]());
+assert_return(() => $$.exports["assert_36"]());
+assert_return(() => $$.exports["assert_37"]());
+assert_return(() => $$.exports["assert_38"]());
+assert_return(() => $$.exports["assert_39"]());
+assert_return(() => $$.exports["assert_40"]());
+assert_return(() => $$.exports["assert_41"]());
+assert_return(() => $$.exports["assert_42"]());
+assert_return(() => $$.exports["assert_43"]());
+assert_return(() => $$.exports["assert_44"]());
+assert_return(() => $$.exports["assert_45"]());
+assert_return(() => $$.exports["assert_46"]());
+assert_return(() => $$.exports["assert_47"]());
+assert_return(() => $$.exports["assert_48"]());
+assert_return(() => $$.exports["assert_49"]());
+assert_return(() => $$.exports["assert_50"]());
+assert_return(() => $$.exports["assert_51"]());
+assert_return(() => $$.exports["assert_52"]());
+assert_return(() => $$.exports["assert_53"]());
+assert_return(() => $$.exports["assert_54"]());
+assert_return(() => $$.exports["assert_55"]());
+assert_return(() => $$.exports["assert_56"]());
+assert_return(() => $$.exports["assert_57"]());
+assert_return(() => $$.exports["assert_58"]());
+assert_return(() => $$.exports["assert_59"]());
+assert_return(() => $$.exports["assert_60"]());
+assert_return(() => $$.exports["assert_61"]());
+assert_return(() => $$.exports["assert_62"]());
+assert_return(() => $$.exports["assert_63"]());
+assert_return(() => $$.exports["assert_64"]());
+assert_return(() => $$.exports["assert_65"]());
+assert_return(() => $$.exports["assert_66"]());
+assert_return(() => $$.exports["assert_67"]());
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(-1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(-1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(-1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(-1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-0.0), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(0.0), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-0.0), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(-0.0), Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](f32(0.0), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(0.0), Infinity), -Infinity);
+assert_return(() => $$.exports["assert_68"]());
+assert_return(() => $$.exports["assert_69"]());
+assert_return(() => $$.exports["assert_70"]());
+assert_return(() => $$.exports["assert_71"]());
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(-0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(-0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), f32(-2.80259692865e-45));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), f32(2.80259692865e-45));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), f32(1.17549421069e-38));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), f32(-1.17549449095e-38));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), f32(1.17549449095e-38));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(1.17549435082e-38)), f32(-1.17549421069e-38));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(-1.40129846432e-45), Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(1.40129846432e-45), Infinity), -Infinity);
+assert_return(() => $$.exports["assert_72"]());
+assert_return(() => $$.exports["assert_73"]());
+assert_return(() => $$.exports["assert_74"]());
+assert_return(() => $$.exports["assert_75"]());
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(-0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(-0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), f32(-1.17549421069e-38));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), f32(-1.17549449095e-38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), f32(1.17549449095e-38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(1.17549421069e-38));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), f32(-2.35098870164e-38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), f32(2.35098870164e-38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(-1.17549435082e-38), Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(1.17549435082e-38), Infinity), -Infinity);
+assert_return(() => $$.exports["assert_76"]());
+assert_return(() => $$.exports["assert_77"]());
+assert_return(() => $$.exports["assert_78"]());
+assert_return(() => $$.exports["assert_79"]());
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(-0.0)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(0.0)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(-0.0)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(0.0)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(-1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(-1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(-1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(-1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(0.5)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(-0.5)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(-1.0)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(1.0)), f32(-1.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(-1.0)), f32(1.5));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(1.0)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(-6.28318548203)), f32(5.78318548203));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(6.28318548203)), f32(-6.78318548203));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(-6.28318548203)), f32(6.78318548203));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(6.28318548203)), f32(-5.78318548203));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-0.5), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(0.5), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-0.5), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(-0.5), Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](f32(0.5), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(0.5), Infinity), -Infinity);
+assert_return(() => $$.exports["assert_80"]());
+assert_return(() => $$.exports["assert_81"]());
+assert_return(() => $$.exports["assert_82"]());
+assert_return(() => $$.exports["assert_83"]());
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(-0.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(0.0)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(-0.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(0.0)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(-1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(-1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(-1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(0.5)), f32(-1.5));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(-0.5)), f32(1.5));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(-1.0)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(1.0)), f32(-2.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(-1.0)), f32(2.0));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(-6.28318548203)), f32(5.28318548203));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(6.28318548203)), f32(-7.28318548203));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(-6.28318548203)), f32(7.28318548203));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(6.28318548203)), f32(-5.28318548203));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-1.0), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(1.0), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-1.0), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(-1.0), Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](f32(1.0), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(1.0), Infinity), -Infinity);
+assert_return(() => $$.exports["assert_84"]());
+assert_return(() => $$.exports["assert_85"]());
+assert_return(() => $$.exports["assert_86"]());
+assert_return(() => $$.exports["assert_87"]());
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(-0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(-0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(-1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(-1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(-1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(-1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(-0.5)), f32(-5.78318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(0.5)), f32(-6.78318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(-0.5)), f32(6.78318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(0.5)), f32(5.78318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(-1.0)), f32(-5.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(1.0)), f32(-7.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(-1.0)), f32(7.28318548203));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(1.0)), f32(5.28318548203));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(-6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(6.28318548203)), f32(-12.5663709641));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(-6.28318548203)), f32(12.5663709641));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(6.28318548203), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(-6.28318548203), Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](f32(6.28318548203), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(6.28318548203), Infinity), -Infinity);
+assert_return(() => $$.exports["assert_88"]());
+assert_return(() => $$.exports["assert_89"]());
+assert_return(() => $$.exports["assert_90"]());
+assert_return(() => $$.exports["assert_91"]());
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(-0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(-0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(-0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(-0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(-1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(-1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(-6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(-6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(-3.40282346639e+38), Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](f32(3.40282346639e+38), Infinity), -Infinity);
+assert_return(() => $$.exports["assert_92"]());
+assert_return(() => $$.exports["assert_93"]());
+assert_return(() => $$.exports["assert_94"]());
+assert_return(() => $$.exports["assert_95"]());
+assert_return(() => $$.exports["sub"](-Infinity, f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(0.0)), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(-0.0)), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(0.0)), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(-1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(0.5)), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(-0.5)), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(0.5)), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(1.0)), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(-1.0)), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(1.0)), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(6.28318548203)), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(-6.28318548203)), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, f32(3.40282346639e+38)), Infinity);
+assert_return_nan(() => $$.exports["sub"](-Infinity, -Infinity));
+assert_return(() => $$.exports["sub"](-Infinity, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -Infinity), Infinity);
+assert_return_nan(() => $$.exports["sub"](Infinity, Infinity));
+assert_return(() => $$.exports["assert_96"]());
+assert_return(() => $$.exports["assert_97"]());
+assert_return(() => $$.exports["assert_98"]());
+assert_return(() => $$.exports["assert_99"]());
+assert_return(() => $$.exports["assert_100"]());
+assert_return(() => $$.exports["assert_101"]());
+assert_return(() => $$.exports["assert_102"]());
+assert_return(() => $$.exports["assert_103"]());
+assert_return(() => $$.exports["assert_104"]());
+assert_return(() => $$.exports["assert_105"]());
+assert_return(() => $$.exports["assert_106"]());
+assert_return(() => $$.exports["assert_107"]());
+assert_return(() => $$.exports["assert_108"]());
+assert_return(() => $$.exports["assert_109"]());
+assert_return(() => $$.exports["assert_110"]());
+assert_return(() => $$.exports["assert_111"]());
+assert_return(() => $$.exports["assert_112"]());
+assert_return(() => $$.exports["assert_113"]());
+assert_return(() => $$.exports["assert_114"]());
+assert_return(() => $$.exports["assert_115"]());
+assert_return(() => $$.exports["assert_116"]());
+assert_return(() => $$.exports["assert_117"]());
+assert_return(() => $$.exports["assert_118"]());
+assert_return(() => $$.exports["assert_119"]());
+assert_return(() => $$.exports["assert_120"]());
+assert_return(() => $$.exports["assert_121"]());
+assert_return(() => $$.exports["assert_122"]());
+assert_return(() => $$.exports["assert_123"]());
+assert_return(() => $$.exports["assert_124"]());
+assert_return(() => $$.exports["assert_125"]());
+assert_return(() => $$.exports["assert_126"]());
+assert_return(() => $$.exports["assert_127"]());
+assert_return(() => $$.exports["assert_128"]());
+assert_return(() => $$.exports["assert_129"]());
+assert_return(() => $$.exports["assert_130"]());
+assert_return(() => $$.exports["assert_131"]());
+assert_return(() => $$.exports["assert_132"]());
+assert_return(() => $$.exports["assert_133"]());
+assert_return(() => $$.exports["assert_134"]());
+assert_return(() => $$.exports["assert_135"]());
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(-1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(0.5)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(-1.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(1.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(-1.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(-6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(-6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(-3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.0), f32(3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(-3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.0), f32(3.40282346639e+38)), f32(0.0));
+assert_return_nan(() => $$.exports["mul"](f32(-0.0), -Infinity));
+assert_return_nan(() => $$.exports["mul"](f32(-0.0), Infinity));
+assert_return_nan(() => $$.exports["mul"](f32(0.0), -Infinity));
+assert_return_nan(() => $$.exports["mul"](f32(0.0), Infinity));
+assert_return(() => $$.exports["assert_136"]());
+assert_return(() => $$.exports["assert_137"]());
+assert_return(() => $$.exports["assert_138"]());
+assert_return(() => $$.exports["assert_139"]());
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(0.5)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(-1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(-1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(-6.28318548203)), f32(8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(6.28318548203)), f32(-8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(-6.28318548203)), f32(-8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(6.28318548203)), f32(8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), f32(4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), f32(-4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), f32(-4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), f32(3.40282346639e+38)), f32(4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](f32(-1.40129846432e-45), Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(1.40129846432e-45), Infinity), Infinity);
+assert_return(() => $$.exports["assert_140"]());
+assert_return(() => $$.exports["assert_141"]());
+assert_return(() => $$.exports["assert_142"]());
+assert_return(() => $$.exports["assert_143"]());
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(-0.5)), f32(5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(0.5)), f32(-5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(-0.5)), f32(-5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(0.5)), f32(5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(-1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(-1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(-6.28318548203)), f32(7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(6.28318548203)), f32(-7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(-6.28318548203)), f32(-7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(6.28318548203)), f32(7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), f32(3.99999976158));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), f32(-3.99999976158));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), f32(-3.99999976158));
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), f32(3.40282346639e+38)), f32(3.99999976158));
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](f32(-1.17549435082e-38), Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(1.17549435082e-38), Infinity), Infinity);
+assert_return(() => $$.exports["assert_144"]());
+assert_return(() => $$.exports["assert_145"]());
+assert_return(() => $$.exports["assert_146"]());
+assert_return(() => $$.exports["assert_147"]());
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(-1.17549435082e-38)), f32(5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(1.17549435082e-38)), f32(-5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(-1.17549435082e-38)), f32(-5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(1.17549435082e-38)), f32(5.87747175411e-39));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(-0.5)), f32(0.25));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(0.5)), f32(-0.25));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(-0.5)), f32(-0.25));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(0.5)), f32(0.25));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(-1.0)), f32(0.5));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(1.0)), f32(-0.5));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(-1.0)), f32(-0.5));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(1.0)), f32(0.5));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(-6.28318548203)), f32(3.14159274101));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(6.28318548203)), f32(-3.14159274101));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(-6.28318548203)), f32(-3.14159274101));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(6.28318548203)), f32(3.14159274101));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(-3.40282346639e+38)), f32(1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(-0.5), f32(3.40282346639e+38)), f32(-1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(-3.40282346639e+38)), f32(-1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(0.5), f32(3.40282346639e+38)), f32(1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(-0.5), -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](f32(-0.5), Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(0.5), -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(0.5), Infinity), Infinity);
+assert_return(() => $$.exports["assert_148"]());
+assert_return(() => $$.exports["assert_149"]());
+assert_return(() => $$.exports["assert_150"]());
+assert_return(() => $$.exports["assert_151"]());
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(-1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(-1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(-1.0), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(1.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(-1.0), -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](f32(-1.0), Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(1.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(1.0), Infinity), Infinity);
+assert_return(() => $$.exports["assert_152"]());
+assert_return(() => $$.exports["assert_153"]());
+assert_return(() => $$.exports["assert_154"]());
+assert_return(() => $$.exports["assert_155"]());
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(-1.40129846432e-45)), f32(8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(1.40129846432e-45)), f32(-8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(-1.40129846432e-45)), f32(-8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(1.40129846432e-45)), f32(8.40779078595e-45));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(-1.17549435082e-38)), f32(7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(1.17549435082e-38)), f32(-7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(-1.17549435082e-38)), f32(-7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(1.17549435082e-38)), f32(7.38584903929e-38));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(-0.5)), f32(3.14159274101));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(0.5)), f32(-3.14159274101));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(-0.5)), f32(-3.14159274101));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(0.5)), f32(3.14159274101));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(-1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(-1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(-6.28318548203)), f32(39.4784202576));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(6.28318548203)), f32(-39.4784202576));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(-6.28318548203)), f32(-39.4784202576));
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(6.28318548203)), f32(39.4784202576));
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["mul"](f32(6.28318548203), f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](f32(-6.28318548203), Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(6.28318548203), -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(6.28318548203), Infinity), Infinity);
+assert_return(() => $$.exports["assert_156"]());
+assert_return(() => $$.exports["assert_157"]());
+assert_return(() => $$.exports["assert_158"]());
+assert_return(() => $$.exports["assert_159"]());
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), f32(4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), f32(-4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), f32(-4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(1.40129846432e-45)), f32(4.76837129781e-07));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), f32(3.99999976158));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), f32(-3.99999976158));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), f32(-3.99999976158));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(1.17549435082e-38)), f32(3.99999976158));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(-0.5)), f32(1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(0.5)), f32(-1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(-0.5)), f32(-1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(0.5)), f32(1.70141173319e+38));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(-1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(-1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(-6.28318548203)), Infinity);
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(6.28318548203)), -Infinity);
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](f32(-3.40282346639e+38), Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](f32(3.40282346639e+38), Infinity), Infinity);
+assert_return(() => $$.exports["assert_160"]());
+assert_return(() => $$.exports["assert_161"]());
+assert_return(() => $$.exports["assert_162"]());
+assert_return(() => $$.exports["assert_163"]());
+assert_return_nan(() => $$.exports["mul"](-Infinity, f32(-0.0)));
+assert_return_nan(() => $$.exports["mul"](-Infinity, f32(0.0)));
+assert_return_nan(() => $$.exports["mul"](Infinity, f32(-0.0)));
+assert_return_nan(() => $$.exports["mul"](Infinity, f32(0.0)));
+assert_return(() => $$.exports["mul"](-Infinity, f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(-1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(-0.5)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(0.5)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(0.5)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(-1.0)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(1.0)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(1.0)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(-6.28318548203)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(6.28318548203)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_164"]());
+assert_return(() => $$.exports["assert_165"]());
+assert_return(() => $$.exports["assert_166"]());
+assert_return(() => $$.exports["assert_167"]());
+assert_return(() => $$.exports["assert_168"]());
+assert_return(() => $$.exports["assert_169"]());
+assert_return(() => $$.exports["assert_170"]());
+assert_return(() => $$.exports["assert_171"]());
+assert_return(() => $$.exports["assert_172"]());
+assert_return(() => $$.exports["assert_173"]());
+assert_return(() => $$.exports["assert_174"]());
+assert_return(() => $$.exports["assert_175"]());
+assert_return(() => $$.exports["assert_176"]());
+assert_return(() => $$.exports["assert_177"]());
+assert_return(() => $$.exports["assert_178"]());
+assert_return(() => $$.exports["assert_179"]());
+assert_return(() => $$.exports["assert_180"]());
+assert_return(() => $$.exports["assert_181"]());
+assert_return(() => $$.exports["assert_182"]());
+assert_return(() => $$.exports["assert_183"]());
+assert_return(() => $$.exports["assert_184"]());
+assert_return(() => $$.exports["assert_185"]());
+assert_return(() => $$.exports["assert_186"]());
+assert_return(() => $$.exports["assert_187"]());
+assert_return(() => $$.exports["assert_188"]());
+assert_return(() => $$.exports["assert_189"]());
+assert_return(() => $$.exports["assert_190"]());
+assert_return(() => $$.exports["assert_191"]());
+assert_return(() => $$.exports["assert_192"]());
+assert_return(() => $$.exports["assert_193"]());
+assert_return(() => $$.exports["assert_194"]());
+assert_return(() => $$.exports["assert_195"]());
+assert_return(() => $$.exports["assert_196"]());
+assert_return(() => $$.exports["assert_197"]());
+assert_return(() => $$.exports["assert_198"]());
+assert_return(() => $$.exports["assert_199"]());
+assert_return(() => $$.exports["assert_200"]());
+assert_return(() => $$.exports["assert_201"]());
+assert_return(() => $$.exports["assert_202"]());
+assert_return(() => $$.exports["assert_203"]());
+assert_return_nan(() => $$.exports["div"](f32(-0.0), f32(-0.0)));
+assert_return_nan(() => $$.exports["div"](f32(-0.0), f32(0.0)));
+assert_return_nan(() => $$.exports["div"](f32(0.0), f32(-0.0)));
+assert_return_nan(() => $$.exports["div"](f32(0.0), f32(0.0)));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(-1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(0.5)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(-1.0)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(1.0)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(-1.0)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(-6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(-6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(-3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), f32(3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(-3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), -Infinity), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.0), Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.0), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_204"]());
+assert_return(() => $$.exports["assert_205"]());
+assert_return(() => $$.exports["assert_206"]());
+assert_return(() => $$.exports["assert_207"]());
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(-0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), f32(1.19209289551e-07));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), f32(-1.19209289551e-07));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.19209289551e-07));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(1.17549435082e-38)), f32(1.19209289551e-07));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(-0.5)), f32(2.80259692865e-45));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(0.5)), f32(-2.80259692865e-45));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(-0.5)), f32(-2.80259692865e-45));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(0.5)), f32(2.80259692865e-45));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(-1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(-1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(-6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(-6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), -Infinity), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.40129846432e-45), Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.40129846432e-45), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_208"]());
+assert_return(() => $$.exports["assert_209"]());
+assert_return(() => $$.exports["assert_210"]());
+assert_return(() => $$.exports["assert_211"]());
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(-0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), f32(8388608.0));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), f32(-8388608.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), f32(-8388608.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(8388608.0));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(-0.5)), f32(2.35098870164e-38));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(0.5)), f32(-2.35098870164e-38));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(-0.5)), f32(-2.35098870164e-38));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(0.5)), f32(2.35098870164e-38));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(-1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(-1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(-6.28318548203)), f32(1.87085676414e-39));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(6.28318548203)), f32(-1.87085676414e-39));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(-6.28318548203)), f32(-1.87085676414e-39));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(6.28318548203)), f32(1.87085676414e-39));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), -Infinity), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.17549435082e-38), Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.17549435082e-38), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_212"]());
+assert_return(() => $$.exports["assert_213"]());
+assert_return(() => $$.exports["assert_214"]());
+assert_return(() => $$.exports["assert_215"]());
+assert_return(() => $$.exports["div"](f32(-0.5), f32(-0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-0.5), f32(0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(0.5), f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(0.5), f32(0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-0.5), f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-0.5), f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(0.5), f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(0.5), f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-0.5), f32(-1.17549435082e-38)), f32(4.25352958651e+37));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(1.17549435082e-38)), f32(-4.25352958651e+37));
+assert_return(() => $$.exports["div"](f32(0.5), f32(-1.17549435082e-38)), f32(-4.25352958651e+37));
+assert_return(() => $$.exports["div"](f32(0.5), f32(1.17549435082e-38)), f32(4.25352958651e+37));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(-0.5)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(0.5)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(0.5), f32(-0.5)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(0.5), f32(0.5)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(-1.0)), f32(0.5));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(1.0)), f32(-0.5));
+assert_return(() => $$.exports["div"](f32(0.5), f32(-1.0)), f32(-0.5));
+assert_return(() => $$.exports["div"](f32(0.5), f32(1.0)), f32(0.5));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(-6.28318548203)), f32(0.0795774683356));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(6.28318548203)), f32(-0.0795774683356));
+assert_return(() => $$.exports["div"](f32(0.5), f32(-6.28318548203)), f32(-0.0795774683356));
+assert_return(() => $$.exports["div"](f32(0.5), f32(6.28318548203)), f32(0.0795774683356));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(-3.40282346639e+38)), f32(1.46936793853e-39));
+assert_return(() => $$.exports["div"](f32(-0.5), f32(3.40282346639e+38)), f32(-1.46936793853e-39));
+assert_return(() => $$.exports["div"](f32(0.5), f32(-3.40282346639e+38)), f32(-1.46936793853e-39));
+assert_return(() => $$.exports["div"](f32(0.5), f32(3.40282346639e+38)), f32(1.46936793853e-39));
+assert_return(() => $$.exports["div"](f32(-0.5), -Infinity), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-0.5), Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.5), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(0.5), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_216"]());
+assert_return(() => $$.exports["assert_217"]());
+assert_return(() => $$.exports["assert_218"]());
+assert_return(() => $$.exports["assert_219"]());
+assert_return(() => $$.exports["div"](f32(-1.0), f32(-0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.0), f32(0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.0), f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.0), f32(0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.0), f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.0), f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.0), f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(1.0), f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-1.0), f32(-1.17549435082e-38)), f32(8.50705917302e+37));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(1.17549435082e-38)), f32(-8.50705917302e+37));
+assert_return(() => $$.exports["div"](f32(1.0), f32(-1.17549435082e-38)), f32(-8.50705917302e+37));
+assert_return(() => $$.exports["div"](f32(1.0), f32(1.17549435082e-38)), f32(8.50705917302e+37));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(-0.5)), f32(2.0));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(0.5)), f32(-2.0));
+assert_return(() => $$.exports["div"](f32(1.0), f32(-0.5)), f32(-2.0));
+assert_return(() => $$.exports["div"](f32(1.0), f32(0.5)), f32(2.0));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(1.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(-6.28318548203)), f32(0.159154936671));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(6.28318548203)), f32(-0.159154936671));
+assert_return(() => $$.exports["div"](f32(1.0), f32(-6.28318548203)), f32(-0.159154936671));
+assert_return(() => $$.exports["div"](f32(1.0), f32(6.28318548203)), f32(0.159154936671));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(-3.40282346639e+38)), f32(2.93873587706e-39));
+assert_return(() => $$.exports["div"](f32(-1.0), f32(3.40282346639e+38)), f32(-2.93873587706e-39));
+assert_return(() => $$.exports["div"](f32(1.0), f32(-3.40282346639e+38)), f32(-2.93873587706e-39));
+assert_return(() => $$.exports["div"](f32(1.0), f32(3.40282346639e+38)), f32(2.93873587706e-39));
+assert_return(() => $$.exports["div"](f32(-1.0), -Infinity), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-1.0), Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.0), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(1.0), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_220"]());
+assert_return(() => $$.exports["assert_221"]());
+assert_return(() => $$.exports["assert_222"]());
+assert_return(() => $$.exports["assert_223"]());
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(-0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(-1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(-0.5)), f32(12.5663709641));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(0.5)), f32(-12.5663709641));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(-0.5)), f32(-12.5663709641));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(0.5)), f32(12.5663709641));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(-1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(-1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(-6.28318548203)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(6.28318548203)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(-6.28318548203)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(6.28318548203)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(-3.40282346639e+38)), f32(1.84646239995e-38));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), f32(3.40282346639e+38)), f32(-1.84646239995e-38));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(-3.40282346639e+38)), f32(-1.84646239995e-38));
+assert_return(() => $$.exports["div"](f32(6.28318548203), f32(3.40282346639e+38)), f32(1.84646239995e-38));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), -Infinity), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-6.28318548203), Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(6.28318548203), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(6.28318548203), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_224"]());
+assert_return(() => $$.exports["assert_225"]());
+assert_return(() => $$.exports["assert_226"]());
+assert_return(() => $$.exports["assert_227"]());
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(-0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(0.0)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(-0.5)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(0.5)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(0.5)), Infinity);
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(-1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(-1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(-6.28318548203)), f32(5.4157613487e+37));
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(6.28318548203)), f32(-5.4157613487e+37));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(-6.28318548203)), f32(-5.4157613487e+37));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(6.28318548203)), f32(5.4157613487e+37));
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), f32(-1.0));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), f32(3.40282346639e+38)), f32(1.0));
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), -Infinity), f32(0.0));
+assert_return(() => $$.exports["div"](f32(-3.40282346639e+38), Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["div"](f32(3.40282346639e+38), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_228"]());
+assert_return(() => $$.exports["assert_229"]());
+assert_return(() => $$.exports["assert_230"]());
+assert_return(() => $$.exports["assert_231"]());
+assert_return(() => $$.exports["div"](-Infinity, f32(-0.0)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(0.0)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(0.0)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(-1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(-0.5)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(0.5)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(0.5)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(-1.0)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(1.0)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(1.0)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(-6.28318548203)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(6.28318548203)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, f32(3.40282346639e+38)), Infinity);
+assert_return_nan(() => $$.exports["div"](-Infinity, -Infinity));
+assert_return_nan(() => $$.exports["div"](-Infinity, Infinity));
+assert_return_nan(() => $$.exports["div"](Infinity, -Infinity));
+assert_return_nan(() => $$.exports["div"](Infinity, Infinity));
+assert_return(() => $$.exports["assert_232"]());
+assert_return(() => $$.exports["assert_233"]());
+assert_return(() => $$.exports["assert_234"]());
+assert_return(() => $$.exports["assert_235"]());
+assert_return(() => $$.exports["assert_236"]());
+assert_return(() => $$.exports["assert_237"]());
+assert_return(() => $$.exports["assert_238"]());
+assert_return(() => $$.exports["assert_239"]());
+assert_return(() => $$.exports["assert_240"]());
+assert_return(() => $$.exports["assert_241"]());
+assert_return(() => $$.exports["assert_242"]());
+assert_return(() => $$.exports["assert_243"]());
+assert_return(() => $$.exports["assert_244"]());
+assert_return(() => $$.exports["assert_245"]());
+assert_return(() => $$.exports["assert_246"]());
+assert_return(() => $$.exports["assert_247"]());
+assert_return(() => $$.exports["assert_248"]());
+assert_return(() => $$.exports["assert_249"]());
+assert_return(() => $$.exports["assert_250"]());
+assert_return(() => $$.exports["assert_251"]());
+assert_return(() => $$.exports["assert_252"]());
+assert_return(() => $$.exports["assert_253"]());
+assert_return(() => $$.exports["assert_254"]());
+assert_return(() => $$.exports["assert_255"]());
+assert_return(() => $$.exports["assert_256"]());
+assert_return(() => $$.exports["assert_257"]());
+assert_return(() => $$.exports["assert_258"]());
+assert_return(() => $$.exports["assert_259"]());
+assert_return(() => $$.exports["assert_260"]());
+assert_return(() => $$.exports["assert_261"]());
+assert_return(() => $$.exports["assert_262"]());
+assert_return(() => $$.exports["assert_263"]());
+assert_return(() => $$.exports["assert_264"]());
+assert_return(() => $$.exports["assert_265"]());
+assert_return(() => $$.exports["assert_266"]());
+assert_return(() => $$.exports["assert_267"]());
+assert_return(() => $$.exports["assert_268"]());
+assert_return(() => $$.exports["assert_269"]());
+assert_return(() => $$.exports["assert_270"]());
+assert_return(() => $$.exports["assert_271"]());
+assert_return(() => $$.exports["min"](f32(-0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(0.0), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(0.0), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(0.5)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.0), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(1.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(0.0), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-0.0), f32(3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(0.0), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(-0.0), Infinity), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(0.0), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_272"]());
+assert_return(() => $$.exports["assert_273"]());
+assert_return(() => $$.exports["assert_274"]());
+assert_return(() => $$.exports["assert_275"]());
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(-0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(1.17549435082e-38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(0.5)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(0.5)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(6.28318548203)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(6.28318548203)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), f32(3.40282346639e+38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(-1.40129846432e-45), Infinity), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(1.40129846432e-45), Infinity), f32(1.40129846432e-45));
+assert_return(() => $$.exports["assert_276"]());
+assert_return(() => $$.exports["assert_277"]());
+assert_return(() => $$.exports["assert_278"]());
+assert_return(() => $$.exports["assert_279"]());
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(-0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(0.5)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(0.5)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(6.28318548203)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(6.28318548203)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), f32(3.40282346639e+38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(-1.17549435082e-38), Infinity), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(1.17549435082e-38), Infinity), f32(1.17549435082e-38));
+assert_return(() => $$.exports["assert_280"]());
+assert_return(() => $$.exports["assert_281"]());
+assert_return(() => $$.exports["assert_282"]());
+assert_return(() => $$.exports["assert_283"]());
+assert_return(() => $$.exports["min"](f32(-0.5), f32(-0.0)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(0.0)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(0.5), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(-1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(0.5), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(-1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(0.5), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(1.0)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(0.5), f32(1.0)), f32(0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(6.28318548203)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(0.5), f32(6.28318548203)), f32(0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-0.5), f32(3.40282346639e+38)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(0.5), f32(3.40282346639e+38)), f32(0.5));
+assert_return(() => $$.exports["min"](f32(-0.5), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(-0.5), Infinity), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(0.5), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(0.5), Infinity), f32(0.5));
+assert_return(() => $$.exports["assert_284"]());
+assert_return(() => $$.exports["assert_285"]());
+assert_return(() => $$.exports["assert_286"]());
+assert_return(() => $$.exports["assert_287"]());
+assert_return(() => $$.exports["min"](f32(-1.0), f32(-0.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(0.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(-1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(1.0), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(1.0), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(-0.5)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(0.5)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(1.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(6.28318548203)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(1.0), f32(6.28318548203)), f32(1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-1.0), f32(3.40282346639e+38)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(1.0), f32(3.40282346639e+38)), f32(1.0));
+assert_return(() => $$.exports["min"](f32(-1.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(-1.0), Infinity), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(1.0), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(1.0), Infinity), f32(1.0));
+assert_return(() => $$.exports["assert_288"]());
+assert_return(() => $$.exports["assert_289"]());
+assert_return(() => $$.exports["assert_290"]());
+assert_return(() => $$.exports["assert_291"]());
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(-0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(-1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(-1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(-0.5)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(0.5)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(-1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), f32(3.40282346639e+38)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(6.28318548203), f32(3.40282346639e+38)), f32(6.28318548203));
+assert_return(() => $$.exports["min"](f32(-6.28318548203), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(-6.28318548203), Infinity), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(6.28318548203), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(6.28318548203), Infinity), f32(6.28318548203));
+assert_return(() => $$.exports["assert_292"]());
+assert_return(() => $$.exports["assert_293"]());
+assert_return(() => $$.exports["assert_294"]());
+assert_return(() => $$.exports["assert_295"]());
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(-0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(-0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(-1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(-6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(-3.40282346639e+38), Infinity), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](f32(3.40282346639e+38), Infinity), f32(3.40282346639e+38));
+assert_return(() => $$.exports["assert_296"]());
+assert_return(() => $$.exports["assert_297"]());
+assert_return(() => $$.exports["assert_298"]());
+assert_return(() => $$.exports["assert_299"]());
+assert_return(() => $$.exports["min"](-Infinity, f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, f32(0.0)), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["min"](Infinity, f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["min"](-Infinity, f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, f32(1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["min"](Infinity, f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["min"](-Infinity, f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, f32(1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["min"](Infinity, f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["min"](-Infinity, f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, f32(0.5)), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["min"](Infinity, f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["min"](-Infinity, f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, f32(1.0)), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["min"](Infinity, f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["min"](-Infinity, f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, f32(6.28318548203)), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["min"](Infinity, f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["min"](-Infinity, f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, f32(3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["min"](Infinity, f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["min"](-Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, Infinity), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_300"]());
+assert_return(() => $$.exports["assert_301"]());
+assert_return(() => $$.exports["assert_302"]());
+assert_return(() => $$.exports["assert_303"]());
+assert_return(() => $$.exports["assert_304"]());
+assert_return(() => $$.exports["assert_305"]());
+assert_return(() => $$.exports["assert_306"]());
+assert_return(() => $$.exports["assert_307"]());
+assert_return(() => $$.exports["assert_308"]());
+assert_return(() => $$.exports["assert_309"]());
+assert_return(() => $$.exports["assert_310"]());
+assert_return(() => $$.exports["assert_311"]());
+assert_return(() => $$.exports["assert_312"]());
+assert_return(() => $$.exports["assert_313"]());
+assert_return(() => $$.exports["assert_314"]());
+assert_return(() => $$.exports["assert_315"]());
+assert_return(() => $$.exports["assert_316"]());
+assert_return(() => $$.exports["assert_317"]());
+assert_return(() => $$.exports["assert_318"]());
+assert_return(() => $$.exports["assert_319"]());
+assert_return(() => $$.exports["assert_320"]());
+assert_return(() => $$.exports["assert_321"]());
+assert_return(() => $$.exports["assert_322"]());
+assert_return(() => $$.exports["assert_323"]());
+assert_return(() => $$.exports["assert_324"]());
+assert_return(() => $$.exports["assert_325"]());
+assert_return(() => $$.exports["assert_326"]());
+assert_return(() => $$.exports["assert_327"]());
+assert_return(() => $$.exports["assert_328"]());
+assert_return(() => $$.exports["assert_329"]());
+assert_return(() => $$.exports["assert_330"]());
+assert_return(() => $$.exports["assert_331"]());
+assert_return(() => $$.exports["assert_332"]());
+assert_return(() => $$.exports["assert_333"]());
+assert_return(() => $$.exports["assert_334"]());
+assert_return(() => $$.exports["assert_335"]());
+assert_return(() => $$.exports["assert_336"]());
+assert_return(() => $$.exports["assert_337"]());
+assert_return(() => $$.exports["assert_338"]());
+assert_return(() => $$.exports["assert_339"]());
+assert_return(() => $$.exports["max"](f32(-0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(0.0), f32(-1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(0.0), f32(-1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.0), f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(-1.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(-1.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(-6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(0.0), f32(-6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(-3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(0.0), f32(-3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-0.0), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.0), Infinity), Infinity);
+assert_return(() => $$.exports["max"](f32(0.0), -Infinity), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.0), Infinity), Infinity);
+assert_return(() => $$.exports["assert_340"]());
+assert_return(() => $$.exports["assert_341"]());
+assert_return(() => $$.exports["assert_342"]());
+assert_return(() => $$.exports["assert_343"]());
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(-0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(-0.5)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(-0.5)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(-1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(-1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(-6.28318548203)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(-6.28318548203)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), -Infinity), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.40129846432e-45), Infinity), Infinity);
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), -Infinity), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.40129846432e-45), Infinity), Infinity);
+assert_return(() => $$.exports["assert_344"]());
+assert_return(() => $$.exports["assert_345"]());
+assert_return(() => $$.exports["assert_346"]());
+assert_return(() => $$.exports["assert_347"]());
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(-0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(-0.5)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(-0.5)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(-1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(-1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(-6.28318548203)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(-6.28318548203)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), -Infinity), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.17549435082e-38), Infinity), Infinity);
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), -Infinity), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.17549435082e-38), Infinity), Infinity);
+assert_return(() => $$.exports["assert_348"]());
+assert_return(() => $$.exports["assert_349"]());
+assert_return(() => $$.exports["assert_350"]());
+assert_return(() => $$.exports["assert_351"]());
+assert_return(() => $$.exports["max"](f32(-0.5), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(0.5), f32(-0.0)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(0.0)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(0.5), f32(-1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(0.5), f32(-1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(-1.0)), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(0.5), f32(-1.0)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(-6.28318548203)), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(0.5), f32(-6.28318548203)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(-3.40282346639e+38)), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(0.5), f32(-3.40282346639e+38)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-0.5), -Infinity), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-0.5), Infinity), Infinity);
+assert_return(() => $$.exports["max"](f32(0.5), -Infinity), f32(0.5));
+assert_return(() => $$.exports["max"](f32(0.5), Infinity), Infinity);
+assert_return(() => $$.exports["assert_352"]());
+assert_return(() => $$.exports["assert_353"]());
+assert_return(() => $$.exports["assert_354"]());
+assert_return(() => $$.exports["assert_355"]());
+assert_return(() => $$.exports["max"](f32(-1.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(-0.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(0.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(1.0), f32(-1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(1.0), f32(-1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(1.0), f32(-0.5)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(0.5)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(-6.28318548203)), f32(-1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(1.0), f32(-6.28318548203)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(-3.40282346639e+38)), f32(-1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(1.0), f32(-3.40282346639e+38)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-1.0), -Infinity), f32(-1.0));
+assert_return(() => $$.exports["max"](f32(-1.0), Infinity), Infinity);
+assert_return(() => $$.exports["max"](f32(1.0), -Infinity), f32(1.0));
+assert_return(() => $$.exports["max"](f32(1.0), Infinity), Infinity);
+assert_return(() => $$.exports["assert_356"]());
+assert_return(() => $$.exports["assert_357"]());
+assert_return(() => $$.exports["assert_358"]());
+assert_return(() => $$.exports["assert_359"]());
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(-0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(-1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(-1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(-0.5)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(0.5)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(-1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(-3.40282346639e+38)), f32(-6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(-3.40282346639e+38)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), -Infinity), f32(-6.28318548203));
+assert_return(() => $$.exports["max"](f32(-6.28318548203), Infinity), Infinity);
+assert_return(() => $$.exports["max"](f32(6.28318548203), -Infinity), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(6.28318548203), Infinity), Infinity);
+assert_return(() => $$.exports["assert_360"]());
+assert_return(() => $$.exports["assert_361"]());
+assert_return(() => $$.exports["assert_362"]());
+assert_return(() => $$.exports["assert_363"]());
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(-0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(-0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(-1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(-6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), -Infinity), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(-3.40282346639e+38), Infinity), Infinity);
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), -Infinity), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](f32(3.40282346639e+38), Infinity), Infinity);
+assert_return(() => $$.exports["assert_364"]());
+assert_return(() => $$.exports["assert_365"]());
+assert_return(() => $$.exports["assert_366"]());
+assert_return(() => $$.exports["assert_367"]());
+assert_return(() => $$.exports["max"](-Infinity, f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["max"](-Infinity, f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["max"](Infinity, f32(-0.0)), Infinity);
+assert_return(() => $$.exports["max"](Infinity, f32(0.0)), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["max"](-Infinity, f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["max"](Infinity, f32(-1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["max"](Infinity, f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["max"](-Infinity, f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["max"](Infinity, f32(-1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["max"](Infinity, f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["max"](-Infinity, f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["max"](Infinity, f32(-0.5)), Infinity);
+assert_return(() => $$.exports["max"](Infinity, f32(0.5)), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["max"](-Infinity, f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["max"](Infinity, f32(-1.0)), Infinity);
+assert_return(() => $$.exports["max"](Infinity, f32(1.0)), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["max"](-Infinity, f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["max"](Infinity, f32(-6.28318548203)), Infinity);
+assert_return(() => $$.exports["max"](Infinity, f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["max"](-Infinity, f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["max"](Infinity, f32(-3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["max"](Infinity, f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["max"](-Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["max"](Infinity, -Infinity), Infinity);
+assert_return(() => $$.exports["max"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_368"]());
+assert_return(() => $$.exports["assert_369"]());
+assert_return(() => $$.exports["assert_370"]());
+assert_return(() => $$.exports["assert_371"]());
+assert_return(() => $$.exports["assert_372"]());
+assert_return(() => $$.exports["assert_373"]());
+assert_return(() => $$.exports["assert_374"]());
+assert_return(() => $$.exports["assert_375"]());
+assert_return(() => $$.exports["assert_376"]());
+assert_return(() => $$.exports["assert_377"]());
+assert_return(() => $$.exports["assert_378"]());
+assert_return(() => $$.exports["assert_379"]());
+assert_return(() => $$.exports["assert_380"]());
+assert_return(() => $$.exports["assert_381"]());
+assert_return(() => $$.exports["assert_382"]());
+assert_return(() => $$.exports["assert_383"]());
+assert_return(() => $$.exports["assert_384"]());
+assert_return(() => $$.exports["assert_385"]());
+assert_return(() => $$.exports["assert_386"]());
+assert_return(() => $$.exports["assert_387"]());
+assert_return(() => $$.exports["assert_388"]());
+assert_return(() => $$.exports["assert_389"]());
+assert_return(() => $$.exports["assert_390"]());
+assert_return(() => $$.exports["assert_391"]());
+assert_return(() => $$.exports["assert_392"]());
+assert_return(() => $$.exports["assert_393"]());
+assert_return(() => $$.exports["assert_394"]());
+assert_return(() => $$.exports["assert_395"]());
+assert_return(() => $$.exports["assert_396"]());
+assert_return(() => $$.exports["assert_397"]());
+assert_return(() => $$.exports["assert_398"]());
+assert_return(() => $$.exports["assert_399"]());
+assert_return(() => $$.exports["assert_400"]());
+assert_return(() => $$.exports["assert_401"]());
+assert_return(() => $$.exports["assert_402"]());
+assert_return(() => $$.exports["assert_403"]());
+assert_return(() => $$.exports["assert_404"]());
+assert_return(() => $$.exports["assert_405"]());
+assert_return(() => $$.exports["assert_406"]());
+assert_return(() => $$.exports["assert_407"]());
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(-1.0)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(-1.0)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(-6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(-6.28318548203)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(6.28318548203)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(-3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(-3.40282346639e+38)), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(-0.0), Infinity), f32(0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), -Infinity), f32(-0.0));
+assert_return(() => $$.exports["copysign"](f32(0.0), Infinity), f32(0.0));
+assert_return(() => $$.exports["assert_408"]());
+assert_return(() => $$.exports["assert_409"]());
+assert_return(() => $$.exports["assert_410"]());
+assert_return(() => $$.exports["assert_411"]());
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(-0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(-0.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(0.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(1.17549435082e-38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(-0.5)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(0.5)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(-0.5)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(0.5)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(-1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(-1.0)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(1.0)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(-6.28318548203)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(6.28318548203)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(-6.28318548203)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(6.28318548203)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), f32(3.40282346639e+38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), -Infinity), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(-1.40129846432e-45), Infinity), f32(1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), -Infinity), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["copysign"](f32(1.40129846432e-45), Infinity), f32(1.40129846432e-45));
+assert_return(() => $$.exports["assert_412"]());
+assert_return(() => $$.exports["assert_413"]());
+assert_return(() => $$.exports["assert_414"]());
+assert_return(() => $$.exports["assert_415"]());
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(-0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(-0.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(0.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(-0.5)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(0.5)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(-0.5)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(0.5)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(-1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(-1.0)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(1.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(-6.28318548203)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(6.28318548203)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(-6.28318548203)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(6.28318548203)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), f32(3.40282346639e+38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), -Infinity), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(-1.17549435082e-38), Infinity), f32(1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), -Infinity), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["copysign"](f32(1.17549435082e-38), Infinity), f32(1.17549435082e-38));
+assert_return(() => $$.exports["assert_416"]());
+assert_return(() => $$.exports["assert_417"]());
+assert_return(() => $$.exports["assert_418"]());
+assert_return(() => $$.exports["assert_419"]());
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(-0.0)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(0.0)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(-0.0)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(0.0)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(-1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(-1.40129846432e-45)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(1.40129846432e-45)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(-1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(-1.17549435082e-38)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(1.17549435082e-38)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(-0.5)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(-1.0)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(1.0)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(-1.0)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(1.0)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(-6.28318548203)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(6.28318548203)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(-6.28318548203)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(6.28318548203)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(-3.40282346639e+38)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), f32(3.40282346639e+38)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(-3.40282346639e+38)), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), f32(3.40282346639e+38)), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), -Infinity), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(-0.5), Infinity), f32(0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), -Infinity), f32(-0.5));
+assert_return(() => $$.exports["copysign"](f32(0.5), Infinity), f32(0.5));
+assert_return(() => $$.exports["assert_420"]());
+assert_return(() => $$.exports["assert_421"]());
+assert_return(() => $$.exports["assert_422"]());
+assert_return(() => $$.exports["assert_423"]());
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(-0.0)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(0.0)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(-0.0)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(0.0)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(-1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(-1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(-0.5)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(0.5)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(-0.5)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(0.5)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(-6.28318548203)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(6.28318548203)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(-6.28318548203)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(6.28318548203)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(-3.40282346639e+38)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), f32(3.40282346639e+38)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(-3.40282346639e+38)), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), f32(3.40282346639e+38)), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), -Infinity), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(-1.0), Infinity), f32(1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), -Infinity), f32(-1.0));
+assert_return(() => $$.exports["copysign"](f32(1.0), Infinity), f32(1.0));
+assert_return(() => $$.exports["assert_424"]());
+assert_return(() => $$.exports["assert_425"]());
+assert_return(() => $$.exports["assert_426"]());
+assert_return(() => $$.exports["assert_427"]());
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(-0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(-0.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(0.0)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(-1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(-1.40129846432e-45)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(1.40129846432e-45)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(-1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(-1.17549435082e-38)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(1.17549435082e-38)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(-0.5)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(0.5)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(-0.5)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(0.5)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(-1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(-1.0)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(1.0)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(-6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(-3.40282346639e+38)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), f32(3.40282346639e+38)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(-3.40282346639e+38)), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), f32(3.40282346639e+38)), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), -Infinity), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(-6.28318548203), Infinity), f32(6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), -Infinity), f32(-6.28318548203));
+assert_return(() => $$.exports["copysign"](f32(6.28318548203), Infinity), f32(6.28318548203));
+assert_return(() => $$.exports["assert_428"]());
+assert_return(() => $$.exports["assert_429"]());
+assert_return(() => $$.exports["assert_430"]());
+assert_return(() => $$.exports["assert_431"]());
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(-0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(-0.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(0.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(1.40129846432e-45)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(1.17549435082e-38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(-0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(-0.5)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(0.5)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(-1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(-1.0)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(1.0)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(-6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(-6.28318548203)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(6.28318548203)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), -Infinity), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(-3.40282346639e+38), Infinity), f32(3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), -Infinity), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["copysign"](f32(3.40282346639e+38), Infinity), f32(3.40282346639e+38));
+assert_return(() => $$.exports["assert_432"]());
+assert_return(() => $$.exports["assert_433"]());
+assert_return(() => $$.exports["assert_434"]());
+assert_return(() => $$.exports["assert_435"]());
+assert_return(() => $$.exports["copysign"](-Infinity, f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(0.0)), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(-0.0)), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(0.0)), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(-1.40129846432e-45)), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(1.40129846432e-45)), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(-1.17549435082e-38)), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(1.17549435082e-38)), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(0.5)), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(-0.5)), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(0.5)), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(1.0)), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(1.0)), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(-6.28318548203)), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(6.28318548203)), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(-3.40282346639e+38)), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, f32(3.40282346639e+38)), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_436"]());
+assert_return(() => $$.exports["assert_437"]());
+assert_return(() => $$.exports["assert_438"]());
+assert_return(() => $$.exports["assert_439"]());
+assert_return(() => $$.exports["assert_440"]());
+assert_return(() => $$.exports["assert_441"]());
+assert_return(() => $$.exports["assert_442"]());
+assert_return(() => $$.exports["assert_443"]());
+assert_return(() => $$.exports["assert_444"]());
+assert_return(() => $$.exports["assert_445"]());
+assert_return(() => $$.exports["assert_446"]());
+assert_return(() => $$.exports["assert_447"]());
+assert_return(() => $$.exports["assert_448"]());
+assert_return(() => $$.exports["assert_449"]());
+assert_return(() => $$.exports["assert_450"]());
+assert_return(() => $$.exports["assert_451"]());
+assert_return(() => $$.exports["assert_452"]());
+assert_return(() => $$.exports["assert_453"]());
+assert_return(() => $$.exports["assert_454"]());
+assert_return(() => $$.exports["assert_455"]());
+assert_return(() => $$.exports["assert_456"]());
+assert_return(() => $$.exports["assert_457"]());
+assert_return(() => $$.exports["assert_458"]());
+assert_return(() => $$.exports["assert_459"]());
+assert_return(() => $$.exports["assert_460"]());
+assert_return(() => $$.exports["assert_461"]());
+assert_return(() => $$.exports["assert_462"]());
+assert_return(() => $$.exports["assert_463"]());
+assert_return(() => $$.exports["assert_464"]());
+assert_return(() => $$.exports["assert_465"]());
+assert_return(() => $$.exports["assert_466"]());
+assert_return(() => $$.exports["assert_467"]());
+assert_return(() => $$.exports["assert_468"]());
+assert_return(() => $$.exports["assert_469"]());
+assert_return(() => $$.exports["assert_470"]());
+assert_return(() => $$.exports["assert_471"]());
+assert_return(() => $$.exports["assert_472"]());
+assert_return(() => $$.exports["assert_473"]());
+assert_return(() => $$.exports["assert_474"]());
+assert_return(() => $$.exports["assert_475"]());
+assert_return(() => $$.exports["sqrt"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["sqrt"](f32(0.0)), f32(0.0));
+assert_return_nan(() => $$.exports["sqrt"](f32(-1.40129846432e-45)));
+assert_return(() => $$.exports["sqrt"](f32(1.40129846432e-45)), f32(3.74339206651e-23));
+assert_return_nan(() => $$.exports["sqrt"](f32(-1.17549435082e-38)));
+assert_return(() => $$.exports["sqrt"](f32(1.17549435082e-38)), f32(1.08420217249e-19));
+assert_return_nan(() => $$.exports["sqrt"](f32(-0.5)));
+assert_return(() => $$.exports["sqrt"](f32(0.5)), f32(0.707106769085));
+assert_return_nan(() => $$.exports["sqrt"](f32(-1.0)));
+assert_return(() => $$.exports["sqrt"](f32(1.0)), f32(1.0));
+assert_return_nan(() => $$.exports["sqrt"](f32(-6.28318548203)));
+assert_return(() => $$.exports["sqrt"](f32(6.28318548203)), f32(2.50662827492));
+assert_return_nan(() => $$.exports["sqrt"](f32(-3.40282346639e+38)));
+assert_return(() => $$.exports["sqrt"](f32(3.40282346639e+38)), f32(1.84467429742e+19));
+assert_return_nan(() => $$.exports["sqrt"](-Infinity));
+assert_return(() => $$.exports["sqrt"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_476"]());
+assert_return(() => $$.exports["assert_477"]());
+assert_return(() => $$.exports["floor"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["floor"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["floor"](f32(-1.40129846432e-45)), f32(-1.0));
+assert_return(() => $$.exports["floor"](f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["floor"](f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["floor"](f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["floor"](f32(-0.5)), f32(-1.0));
+assert_return(() => $$.exports["floor"](f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["floor"](f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["floor"](f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["floor"](f32(-6.28318548203)), f32(-7.0));
+assert_return(() => $$.exports["floor"](f32(6.28318548203)), f32(6.0));
+assert_return(() => $$.exports["floor"](f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["floor"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["floor"](-Infinity), -Infinity);
+assert_return(() => $$.exports["floor"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_478"]());
+assert_return(() => $$.exports["assert_479"]());
+assert_return(() => $$.exports["ceil"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["ceil"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["ceil"](f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["ceil"](f32(1.40129846432e-45)), f32(1.0));
+assert_return(() => $$.exports["ceil"](f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["ceil"](f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["ceil"](f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["ceil"](f32(0.5)), f32(1.0));
+assert_return(() => $$.exports["ceil"](f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["ceil"](f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["ceil"](f32(-6.28318548203)), f32(-6.0));
+assert_return(() => $$.exports["ceil"](f32(6.28318548203)), f32(7.0));
+assert_return(() => $$.exports["ceil"](f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["ceil"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["ceil"](-Infinity), -Infinity);
+assert_return(() => $$.exports["ceil"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_480"]());
+assert_return(() => $$.exports["assert_481"]());
+assert_return(() => $$.exports["trunc"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["trunc"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["trunc"](f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["trunc"](f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["trunc"](f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["trunc"](f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["trunc"](f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["trunc"](f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["trunc"](f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["trunc"](f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["trunc"](f32(-6.28318548203)), f32(-6.0));
+assert_return(() => $$.exports["trunc"](f32(6.28318548203)), f32(6.0));
+assert_return(() => $$.exports["trunc"](f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["trunc"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["trunc"](-Infinity), -Infinity);
+assert_return(() => $$.exports["trunc"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_482"]());
+assert_return(() => $$.exports["assert_483"]());
+assert_return(() => $$.exports["nearest"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["nearest"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["nearest"](f32(-1.40129846432e-45)), f32(-0.0));
+assert_return(() => $$.exports["nearest"](f32(1.40129846432e-45)), f32(0.0));
+assert_return(() => $$.exports["nearest"](f32(-1.17549435082e-38)), f32(-0.0));
+assert_return(() => $$.exports["nearest"](f32(1.17549435082e-38)), f32(0.0));
+assert_return(() => $$.exports["nearest"](f32(-0.5)), f32(-0.0));
+assert_return(() => $$.exports["nearest"](f32(0.5)), f32(0.0));
+assert_return(() => $$.exports["nearest"](f32(-1.0)), f32(-1.0));
+assert_return(() => $$.exports["nearest"](f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["nearest"](f32(-6.28318548203)), f32(-6.0));
+assert_return(() => $$.exports["nearest"](f32(6.28318548203)), f32(6.0));
+assert_return(() => $$.exports["nearest"](f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["nearest"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["nearest"](-Infinity), -Infinity);
+assert_return(() => $$.exports["nearest"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_484"]());
+assert_return(() => $$.exports["assert_485"]());
+assert_return(() => $$.exports["abs"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["abs"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["abs"](f32(-1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["abs"](f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["abs"](f32(-1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["abs"](f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["abs"](f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["abs"](f32(0.5)), f32(0.5));
+assert_return(() => $$.exports["abs"](f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["abs"](f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["abs"](f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["abs"](f32(6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["abs"](f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["abs"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["abs"](-Infinity), Infinity);
+assert_return(() => $$.exports["abs"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_486"]());
+assert_return(() => $$.exports["assert_487"]());
+assert_return(() => $$.exports["neg"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["neg"](f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["neg"](f32(-1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["neg"](f32(1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["neg"](f32(-1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["neg"](f32(1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["neg"](f32(-0.5)), f32(0.5));
+assert_return(() => $$.exports["neg"](f32(0.5)), f32(-0.5));
+assert_return(() => $$.exports["neg"](f32(-1.0)), f32(1.0));
+assert_return(() => $$.exports["neg"](f32(1.0)), f32(-1.0));
+assert_return(() => $$.exports["neg"](f32(-6.28318548203)), f32(6.28318548203));
+assert_return(() => $$.exports["neg"](f32(6.28318548203)), f32(-6.28318548203));
+assert_return(() => $$.exports["neg"](f32(-3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["neg"](f32(3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["neg"](-Infinity), Infinity);
+assert_return(() => $$.exports["neg"](Infinity), -Infinity);
+assert_return(() => $$.exports["assert_488"]());
+assert_return(() => $$.exports["assert_489"]());
diff --git a/JSTests/wasm/spec-tests/f32_cmp.wast.js b/JSTests/wasm/spec-tests/f32_cmp.wast.js
new file mode 100644
index 0000000..1e223da
--- /dev/null
+++ b/JSTests/wasm/spec-tests/f32_cmp.wast.js
@@ -0,0 +1,2039 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0a\x02\x60\x02\x7d\x7d\x01\x7f\x60\x00\x00\x03\xa0\x03\x9e\x03\x00\x00\x00\x00\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x07\x88\x2b\x9e\x03\x02\x65\x71\x00\x00\x02\x6e\x65\x00\x01\x02\x6c\x74\x00\x02\x02\x6c\x65\x00\x03\x02\x67\x74\x00\x04\x02\x67\x65\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x0f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x10\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x11\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x12\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x13\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x14\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x15\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x16\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x17\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x18\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x19\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x1a\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x1b\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x1c\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x1d\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x1e\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x1f\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x20\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x21\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x22\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x23\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x24\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x25\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x39\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x30\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x31\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x32\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x33\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x34\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x35\x00\x3d\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x36\x00\x3e\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x37\x00\x3f\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x38\x00\x40\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x39\x00\x41\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x30\x00\x42\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x31\x00\x43\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x32\x00\x44\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x33\x00\x45\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x34\x00\x46\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x35\x00\x47\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x36\x00\x48\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x37\x00\x49\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x38\x00\x4a\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x39\x00\x4b\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x30\x00\x4c\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x31\x00\x4d\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x32\x00\x4e\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x33\x00\x4f\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x34\x00\x50\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x35\x00\x51\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x36\x00\x52\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x37\x00\x53\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x38\x00\x54\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x39\x00\x55\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x30\x00\x56\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x31\x00\x57\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x32\x00\x58\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x33\x00\x59\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x34\x00\x5a\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x35\x00\x5b\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x36\x00\x5c\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x37\x00\x5d\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x38\x00\x5e\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x39\x00\x5f\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x30\x00\x60\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x31\x00\x61\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x32\x00\x62\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x33\x00\x63\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x34\x00\x64\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x35\x00\x65\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x36\x00\x66\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x37\x00\x67\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x38\x00\x68\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x39\x00\x69\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x30\x00\x6a\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x31\x00\x6b\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x32\x00\x6c\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x33\x00\x6d\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x34\x00\x6e\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x35\x00\x6f\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x36\x00\x70\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x37\x00\x71\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x38\x00\x72\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x39\x00\x73\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x30\x00\x74\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x31\x00\x75\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x32\x00\x76\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x33\x00\x77\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x34\x00\x78\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x35\x00\x79\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x36\x00\x7a\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x37\x00\x7b\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x38\x00\x7c\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x39\x00\x7d\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x30\x00\x7e\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x31\x00\x7f\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x32\x00\x80\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x33\x00\x81\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x34\x00\x82\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x35\x00\x83\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x36\x00\x84\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x37\x00\x85\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x38\x00\x86\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x39\x00\x87\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x30\x00\x88\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x31\x00\x89\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x32\x00\x8a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x33\x00\x8b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x34\x00\x8c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x35\x00\x8d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x36\x00\x8e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x37\x00\x8f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x38\x00\x90\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x39\x00\x91\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x30\x00\x92\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x31\x00\x93\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x32\x00\x94\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x33\x00\x95\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x34\x00\x96\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x35\x00\x97\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x36\x00\x98\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x37\x00\x99\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x38\x00\x9a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x39\x00\x9b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x30\x00\x9c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x31\x00\x9d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x32\x00\x9e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x33\x00\x9f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x34\x00\xa0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x35\x00\xa1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x36\x00\xa2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x37\x00\xa3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x38\x00\xa4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x39\x00\xa5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x30\x00\xa6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x31\x00\xa7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x32\x00\xa8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x33\x00\xa9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x34\x00\xaa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x35\x00\xab\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x36\x00\xac\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x37\x00\xad\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x38\x00\xae\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x39\x00\xaf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x30\x00\xb0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x31\x00\xb1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x32\x00\xb2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x33\x00\xb3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x34\x00\xb4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x35\x00\xb5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x36\x00\xb6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x37\x00\xb7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x38\x00\xb8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x39\x00\xb9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x30\x00\xba\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x31\x00\xbb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x32\x00\xbc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x33\x00\xbd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x34\x00\xbe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x35\x00\xbf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x36\x00\xc0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x37\x00\xc1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x38\x00\xc2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x39\x00\xc3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x30\x00\xc4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x31\x00\xc5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x32\x00\xc6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x33\x00\xc7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x34\x00\xc8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x35\x00\xc9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x36\x00\xca\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x37\x00\xcb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x38\x00\xcc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x39\x00\xcd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x30\x00\xce\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x31\x00\xcf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x32\x00\xd0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x33\x00\xd1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x34\x00\xd2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x35\x00\xd3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x36\x00\xd4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x37\x00\xd5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x38\x00\xd6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x39\x00\xd7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x30\x00\xd8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x31\x00\xd9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x32\x00\xda\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x33\x00\xdb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x34\x00\xdc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x35\x00\xdd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x36\x00\xde\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x37\x00\xdf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x38\x00\xe0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x39\x00\xe1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x30\x00\xe2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x31\x00\xe3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x32\x00\xe4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x33\x00\xe5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x34\x00\xe6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x35\x00\xe7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x36\x00\xe8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x37\x00\xe9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x38\x00\xea\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x39\x00\xeb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x30\x00\xec\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x31\x00\xed\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x32\x00\xee\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x33\x00\xef\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x34\x00\xf0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x35\x00\xf1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x36\x00\xf2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x37\x00\xf3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x38\x00\xf4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x39\x00\xf5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x30\x00\xf6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x31\x00\xf7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x32\x00\xf8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x33\x00\xf9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x34\x00\xfa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x35\x00\xfb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x36\x00\xfc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x37\x00\xfd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x38\x00\xfe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x39\x00\xff\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x30\x00\x80\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x31\x00\x81\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x32\x00\x82\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x33\x00\x83\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x34\x00\x84\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x35\x00\x85\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x36\x00\x86\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x37\x00\x87\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x38\x00\x88\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x39\x00\x89\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x30\x00\x8a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x31\x00\x8b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x32\x00\x8c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x33\x00\x8d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x34\x00\x8e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x35\x00\x8f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x36\x00\x90\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x37\x00\x91\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x38\x00\x92\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x39\x00\x93\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x30\x00\x94\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x31\x00\x95\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x32\x00\x96\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x33\x00\x97\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x34\x00\x98\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x35\x00\x99\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x36\x00\x9a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x37\x00\x9b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x38\x00\x9c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x39\x00\x9d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x30\x00\x9e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x31\x00\x9f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x32\x00\xa0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x33\x00\xa1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x34\x00\xa2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x35\x00\xa3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x36\x00\xa4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x37\x00\xa5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x38\x00\xa6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x39\x00\xa7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x30\x00\xa8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x31\x00\xa9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x32\x00\xaa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x33\x00\xab\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x34\x00\xac\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x35\x00\xad\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x36\x00\xae\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x37\x00\xaf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x38\x00\xb0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x39\x00\xb1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x30\x00\xb2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x31\x00\xb3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x32\x00\xb4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x33\x00\xb5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x34\x00\xb6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x35\x00\xb7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x36\x00\xb8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x37\x00\xb9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x38\x00\xba\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x39\x00\xbb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x30\x00\xbc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x31\x00\xbd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x32\x00\xbe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x33\x00\xbf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x34\x00\xc0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x35\x00\xc1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x36\x00\xc2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x37\x00\xc3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x38\x00\xc4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x39\x00\xc5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x30\x00\xc6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x31\x00\xc7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x32\x00\xc8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x33\x00\xc9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x34\x00\xca\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x35\x00\xcb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x36\x00\xcc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x37\x00\xcd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x38\x00\xce\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x39\x00\xcf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x30\x00\xd0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x31\x00\xd1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x32\x00\xd2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x33\x00\xd3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x34\x00\xd4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x35\x00\xd5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x36\x00\xd6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x37\x00\xd7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x38\x00\xd8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x39\x00\xd9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x30\x00\xda\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x31\x00\xdb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x32\x00\xdc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x33\x00\xdd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x34\x00\xde\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x35\x00\xdf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x36\x00\xe0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x37\x00\xe1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x38\x00\xe2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x39\x00\xe3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x30\x00\xe4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x31\x00\xe5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x32\x00\xe6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x33\x00\xe7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x34\x00\xe8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x35\x00\xe9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x36\x00\xea\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x37\x00\xeb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x38\x00\xec\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x39\x00\xed\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x30\x00\xee\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x31\x00\xef\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x32\x00\xf0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x33\x00\xf1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x34\x00\xf2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x35\x00\xf3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x36\x00\xf4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x37\x00\xf5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x38\x00\xf6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x39\x00\xf7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x30\x00\xf8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x31\x00\xf9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x32\x00\xfa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x33\x00\xfb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x34\x00\xfc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x35\x00\xfd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x36\x00\xfe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x37\x00\xff\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x38\x00\x80\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x39\x00\x81\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x30\x00\x82\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x31\x00\x83\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x32\x00\x84\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x33\x00\x85\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x34\x00\x86\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x35\x00\x87\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x36\x00\x88\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x37\x00\x89\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x38\x00\x8a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x39\x00\x8b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x30\x00\x8c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x31\x00\x8d\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x32\x00\x8e\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x33\x00\x8f\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x34\x00\x90\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x35\x00\x91\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x36\x00\x92\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x37\x00\x93\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x38\x00\x94\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x39\x00\x95\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x30\x00\x96\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x31\x00\x97\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x32\x00\x98\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x33\x00\x99\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x34\x00\x9a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x35\x00\x9b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x36\x00\x9c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x37\x00\x9d\x03\x0a\xa2\x53\x9e\x03\x07\x00\x20\x00\x20\x01\x5b\x0b\x07\x00\x20\x00\x20\x01\x5c\x0b\x07\x00\x20\x00\x20\x01\x5d\x0b\x07\x00\x20\x00\x20\x01\x5f\x0b\x07\x00\x20\x00\x20\x01\x5e\x0b\x07\x00\x20\x00\x20\x01\x60\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x80\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x01\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x80\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x00\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\xbf\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x3f\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xbf\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x3f\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\xc0\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xdb\x0f\xc9\x40\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\xff\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xff\xff\x7f\x7f\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\xff\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x80\x7f\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x01\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x01\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x00\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\xc0\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xdb\x0f\xc9\x40\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\xc0\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xdb\x0f\xc9\x40\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\xff\xff\x7f\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\xff\xff\x7f\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\x80\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(0.0)), 1);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(0.0)), 1);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(-0.0), Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(0.0), Infinity), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(-1.40129846432e-45), Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(1.40129846432e-45), Infinity), 0);
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(-1.17549435082e-38), Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(1.17549435082e-38), Infinity), 0);
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(-0.5)), 1);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(0.5)), 1);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(-0.5), Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(0.5), Infinity), 0);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(1.0)), 1);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(-1.0), Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(1.0), Infinity), 0);
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(-6.28318548203), Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(6.28318548203), Infinity), 0);
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(-3.40282346639e+38), Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), -Infinity), 0);
+assert_return(() => $$.exports["eq"](f32(3.40282346639e+38), Infinity), 0);
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["eq"](-Infinity, f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(-0.0)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(0.0)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(-0.5)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(0.5)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(-1.0)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(1.0)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(6.28318548203)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](Infinity, f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -Infinity), 1);
+assert_return(() => $$.exports["eq"](-Infinity, Infinity), 0);
+assert_return(() => $$.exports["eq"](Infinity, -Infinity), 0);
+assert_return(() => $$.exports["eq"](Infinity, Infinity), 1);
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["assert_32"]());
+assert_return(() => $$.exports["assert_33"]());
+assert_return(() => $$.exports["assert_34"]());
+assert_return(() => $$.exports["assert_35"]());
+assert_return(() => $$.exports["assert_36"]());
+assert_return(() => $$.exports["assert_37"]());
+assert_return(() => $$.exports["assert_38"]());
+assert_return(() => $$.exports["assert_39"]());
+assert_return(() => $$.exports["assert_40"]());
+assert_return(() => $$.exports["assert_41"]());
+assert_return(() => $$.exports["assert_42"]());
+assert_return(() => $$.exports["assert_43"]());
+assert_return(() => $$.exports["assert_44"]());
+assert_return(() => $$.exports["assert_45"]());
+assert_return(() => $$.exports["assert_46"]());
+assert_return(() => $$.exports["assert_47"]());
+assert_return(() => $$.exports["assert_48"]());
+assert_return(() => $$.exports["assert_49"]());
+assert_return(() => $$.exports["assert_50"]());
+assert_return(() => $$.exports["assert_51"]());
+assert_return(() => $$.exports["assert_52"]());
+assert_return(() => $$.exports["assert_53"]());
+assert_return(() => $$.exports["assert_54"]());
+assert_return(() => $$.exports["assert_55"]());
+assert_return(() => $$.exports["assert_56"]());
+assert_return(() => $$.exports["assert_57"]());
+assert_return(() => $$.exports["assert_58"]());
+assert_return(() => $$.exports["assert_59"]());
+assert_return(() => $$.exports["assert_60"]());
+assert_return(() => $$.exports["assert_61"]());
+assert_return(() => $$.exports["assert_62"]());
+assert_return(() => $$.exports["assert_63"]());
+assert_return(() => $$.exports["assert_64"]());
+assert_return(() => $$.exports["assert_65"]());
+assert_return(() => $$.exports["assert_66"]());
+assert_return(() => $$.exports["assert_67"]());
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(0.0)), 0);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(0.0)), 0);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(-0.0), Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(0.0), Infinity), 1);
+assert_return(() => $$.exports["assert_68"]());
+assert_return(() => $$.exports["assert_69"]());
+assert_return(() => $$.exports["assert_70"]());
+assert_return(() => $$.exports["assert_71"]());
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(-1.40129846432e-45), Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(1.40129846432e-45), Infinity), 1);
+assert_return(() => $$.exports["assert_72"]());
+assert_return(() => $$.exports["assert_73"]());
+assert_return(() => $$.exports["assert_74"]());
+assert_return(() => $$.exports["assert_75"]());
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(-1.17549435082e-38), Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(1.17549435082e-38), Infinity), 1);
+assert_return(() => $$.exports["assert_76"]());
+assert_return(() => $$.exports["assert_77"]());
+assert_return(() => $$.exports["assert_78"]());
+assert_return(() => $$.exports["assert_79"]());
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(-0.5)), 0);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(0.5)), 0);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(-0.5), Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(0.5), Infinity), 1);
+assert_return(() => $$.exports["assert_80"]());
+assert_return(() => $$.exports["assert_81"]());
+assert_return(() => $$.exports["assert_82"]());
+assert_return(() => $$.exports["assert_83"]());
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(1.0)), 0);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(-1.0), Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(1.0), Infinity), 1);
+assert_return(() => $$.exports["assert_84"]());
+assert_return(() => $$.exports["assert_85"]());
+assert_return(() => $$.exports["assert_86"]());
+assert_return(() => $$.exports["assert_87"]());
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(-6.28318548203), Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(6.28318548203), Infinity), 1);
+assert_return(() => $$.exports["assert_88"]());
+assert_return(() => $$.exports["assert_89"]());
+assert_return(() => $$.exports["assert_90"]());
+assert_return(() => $$.exports["assert_91"]());
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(-3.40282346639e+38), Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), -Infinity), 1);
+assert_return(() => $$.exports["ne"](f32(3.40282346639e+38), Infinity), 1);
+assert_return(() => $$.exports["assert_92"]());
+assert_return(() => $$.exports["assert_93"]());
+assert_return(() => $$.exports["assert_94"]());
+assert_return(() => $$.exports["assert_95"]());
+assert_return(() => $$.exports["ne"](-Infinity, f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(-0.0)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(0.0)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(-0.5)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(0.5)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(-1.0)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(1.0)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](Infinity, f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -Infinity), 0);
+assert_return(() => $$.exports["ne"](-Infinity, Infinity), 1);
+assert_return(() => $$.exports["ne"](Infinity, -Infinity), 1);
+assert_return(() => $$.exports["ne"](Infinity, Infinity), 0);
+assert_return(() => $$.exports["assert_96"]());
+assert_return(() => $$.exports["assert_97"]());
+assert_return(() => $$.exports["assert_98"]());
+assert_return(() => $$.exports["assert_99"]());
+assert_return(() => $$.exports["assert_100"]());
+assert_return(() => $$.exports["assert_101"]());
+assert_return(() => $$.exports["assert_102"]());
+assert_return(() => $$.exports["assert_103"]());
+assert_return(() => $$.exports["assert_104"]());
+assert_return(() => $$.exports["assert_105"]());
+assert_return(() => $$.exports["assert_106"]());
+assert_return(() => $$.exports["assert_107"]());
+assert_return(() => $$.exports["assert_108"]());
+assert_return(() => $$.exports["assert_109"]());
+assert_return(() => $$.exports["assert_110"]());
+assert_return(() => $$.exports["assert_111"]());
+assert_return(() => $$.exports["assert_112"]());
+assert_return(() => $$.exports["assert_113"]());
+assert_return(() => $$.exports["assert_114"]());
+assert_return(() => $$.exports["assert_115"]());
+assert_return(() => $$.exports["assert_116"]());
+assert_return(() => $$.exports["assert_117"]());
+assert_return(() => $$.exports["assert_118"]());
+assert_return(() => $$.exports["assert_119"]());
+assert_return(() => $$.exports["assert_120"]());
+assert_return(() => $$.exports["assert_121"]());
+assert_return(() => $$.exports["assert_122"]());
+assert_return(() => $$.exports["assert_123"]());
+assert_return(() => $$.exports["assert_124"]());
+assert_return(() => $$.exports["assert_125"]());
+assert_return(() => $$.exports["assert_126"]());
+assert_return(() => $$.exports["assert_127"]());
+assert_return(() => $$.exports["assert_128"]());
+assert_return(() => $$.exports["assert_129"]());
+assert_return(() => $$.exports["assert_130"]());
+assert_return(() => $$.exports["assert_131"]());
+assert_return(() => $$.exports["assert_132"]());
+assert_return(() => $$.exports["assert_133"]());
+assert_return(() => $$.exports["assert_134"]());
+assert_return(() => $$.exports["assert_135"]());
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.0), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(-0.0), Infinity), 1);
+assert_return(() => $$.exports["lt"](f32(0.0), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(0.0), Infinity), 1);
+assert_return(() => $$.exports["assert_136"]());
+assert_return(() => $$.exports["assert_137"]());
+assert_return(() => $$.exports["assert_138"]());
+assert_return(() => $$.exports["assert_139"]());
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(-0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(-1.40129846432e-45), Infinity), 1);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(1.40129846432e-45), Infinity), 1);
+assert_return(() => $$.exports["assert_140"]());
+assert_return(() => $$.exports["assert_141"]());
+assert_return(() => $$.exports["assert_142"]());
+assert_return(() => $$.exports["assert_143"]());
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(-0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(-1.17549435082e-38), Infinity), 1);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(1.17549435082e-38), Infinity), 1);
+assert_return(() => $$.exports["assert_144"]());
+assert_return(() => $$.exports["assert_145"]());
+assert_return(() => $$.exports["assert_146"]());
+assert_return(() => $$.exports["assert_147"]());
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(-0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(-0.5), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(-0.5), Infinity), 1);
+assert_return(() => $$.exports["lt"](f32(0.5), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(0.5), Infinity), 1);
+assert_return(() => $$.exports["assert_148"]());
+assert_return(() => $$.exports["assert_149"]());
+assert_return(() => $$.exports["assert_150"]());
+assert_return(() => $$.exports["assert_151"]());
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(-1.0), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(-1.0), Infinity), 1);
+assert_return(() => $$.exports["lt"](f32(1.0), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(1.0), Infinity), 1);
+assert_return(() => $$.exports["assert_152"]());
+assert_return(() => $$.exports["assert_153"]());
+assert_return(() => $$.exports["assert_154"]());
+assert_return(() => $$.exports["assert_155"]());
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(-0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(-0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(-1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(-6.28318548203), Infinity), 1);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(6.28318548203), Infinity), 1);
+assert_return(() => $$.exports["assert_156"]());
+assert_return(() => $$.exports["assert_157"]());
+assert_return(() => $$.exports["assert_158"]());
+assert_return(() => $$.exports["assert_159"]());
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(-0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(0.0)), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(-0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(0.5)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(-1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(1.0)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(-3.40282346639e+38), Infinity), 1);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), -Infinity), 0);
+assert_return(() => $$.exports["lt"](f32(3.40282346639e+38), Infinity), 1);
+assert_return(() => $$.exports["assert_160"]());
+assert_return(() => $$.exports["assert_161"]());
+assert_return(() => $$.exports["assert_162"]());
+assert_return(() => $$.exports["assert_163"]());
+assert_return(() => $$.exports["lt"](-Infinity, f32(-0.0)), 1);
+assert_return(() => $$.exports["lt"](-Infinity, f32(0.0)), 1);
+assert_return(() => $$.exports["lt"](Infinity, f32(-0.0)), 0);
+assert_return(() => $$.exports["lt"](Infinity, f32(0.0)), 0);
+assert_return(() => $$.exports["lt"](-Infinity, f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](-Infinity, f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["lt"](Infinity, f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](Infinity, f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["lt"](-Infinity, f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](-Infinity, f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["lt"](Infinity, f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](Infinity, f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["lt"](-Infinity, f32(-0.5)), 1);
+assert_return(() => $$.exports["lt"](-Infinity, f32(0.5)), 1);
+assert_return(() => $$.exports["lt"](Infinity, f32(-0.5)), 0);
+assert_return(() => $$.exports["lt"](Infinity, f32(0.5)), 0);
+assert_return(() => $$.exports["lt"](-Infinity, f32(-1.0)), 1);
+assert_return(() => $$.exports["lt"](-Infinity, f32(1.0)), 1);
+assert_return(() => $$.exports["lt"](Infinity, f32(-1.0)), 0);
+assert_return(() => $$.exports["lt"](Infinity, f32(1.0)), 0);
+assert_return(() => $$.exports["lt"](-Infinity, f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](-Infinity, f32(6.28318548203)), 1);
+assert_return(() => $$.exports["lt"](Infinity, f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](Infinity, f32(6.28318548203)), 0);
+assert_return(() => $$.exports["lt"](-Infinity, f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](-Infinity, f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["lt"](Infinity, f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](Infinity, f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-Infinity, Infinity), 1);
+assert_return(() => $$.exports["lt"](Infinity, -Infinity), 0);
+assert_return(() => $$.exports["lt"](Infinity, Infinity), 0);
+assert_return(() => $$.exports["assert_164"]());
+assert_return(() => $$.exports["assert_165"]());
+assert_return(() => $$.exports["assert_166"]());
+assert_return(() => $$.exports["assert_167"]());
+assert_return(() => $$.exports["assert_168"]());
+assert_return(() => $$.exports["assert_169"]());
+assert_return(() => $$.exports["assert_170"]());
+assert_return(() => $$.exports["assert_171"]());
+assert_return(() => $$.exports["assert_172"]());
+assert_return(() => $$.exports["assert_173"]());
+assert_return(() => $$.exports["assert_174"]());
+assert_return(() => $$.exports["assert_175"]());
+assert_return(() => $$.exports["assert_176"]());
+assert_return(() => $$.exports["assert_177"]());
+assert_return(() => $$.exports["assert_178"]());
+assert_return(() => $$.exports["assert_179"]());
+assert_return(() => $$.exports["assert_180"]());
+assert_return(() => $$.exports["assert_181"]());
+assert_return(() => $$.exports["assert_182"]());
+assert_return(() => $$.exports["assert_183"]());
+assert_return(() => $$.exports["assert_184"]());
+assert_return(() => $$.exports["assert_185"]());
+assert_return(() => $$.exports["assert_186"]());
+assert_return(() => $$.exports["assert_187"]());
+assert_return(() => $$.exports["assert_188"]());
+assert_return(() => $$.exports["assert_189"]());
+assert_return(() => $$.exports["assert_190"]());
+assert_return(() => $$.exports["assert_191"]());
+assert_return(() => $$.exports["assert_192"]());
+assert_return(() => $$.exports["assert_193"]());
+assert_return(() => $$.exports["assert_194"]());
+assert_return(() => $$.exports["assert_195"]());
+assert_return(() => $$.exports["assert_196"]());
+assert_return(() => $$.exports["assert_197"]());
+assert_return(() => $$.exports["assert_198"]());
+assert_return(() => $$.exports["assert_199"]());
+assert_return(() => $$.exports["assert_200"]());
+assert_return(() => $$.exports["assert_201"]());
+assert_return(() => $$.exports["assert_202"]());
+assert_return(() => $$.exports["assert_203"]());
+assert_return(() => $$.exports["le"](f32(-0.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(0.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(0.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(0.0), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(0.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(-0.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(0.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(0.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-0.0), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(-0.0), Infinity), 1);
+assert_return(() => $$.exports["le"](f32(0.0), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(0.0), Infinity), 1);
+assert_return(() => $$.exports["assert_204"]());
+assert_return(() => $$.exports["assert_205"]());
+assert_return(() => $$.exports["assert_206"]());
+assert_return(() => $$.exports["assert_207"]());
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(-0.0)), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(0.0)), 0);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(-1.40129846432e-45), Infinity), 1);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(1.40129846432e-45), Infinity), 1);
+assert_return(() => $$.exports["assert_208"]());
+assert_return(() => $$.exports["assert_209"]());
+assert_return(() => $$.exports["assert_210"]());
+assert_return(() => $$.exports["assert_211"]());
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(-0.0)), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(0.0)), 0);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(-1.17549435082e-38), Infinity), 1);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(1.17549435082e-38), Infinity), 1);
+assert_return(() => $$.exports["assert_212"]());
+assert_return(() => $$.exports["assert_213"]());
+assert_return(() => $$.exports["assert_214"]());
+assert_return(() => $$.exports["assert_215"]());
+assert_return(() => $$.exports["le"](f32(-0.5), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(0.5), f32(-0.0)), 0);
+assert_return(() => $$.exports["le"](f32(0.5), f32(0.0)), 0);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(0.5), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(0.5), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(0.5), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(0.5), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(-0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(0.5), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(0.5), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(0.5), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(0.5), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(0.5), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(0.5), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(-0.5), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(0.5), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(0.5), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-0.5), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(-0.5), Infinity), 1);
+assert_return(() => $$.exports["le"](f32(0.5), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(0.5), Infinity), 1);
+assert_return(() => $$.exports["assert_216"]());
+assert_return(() => $$.exports["assert_217"]());
+assert_return(() => $$.exports["assert_218"]());
+assert_return(() => $$.exports["assert_219"]());
+assert_return(() => $$.exports["le"](f32(-1.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(1.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["le"](f32(1.0), f32(0.0)), 0);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(1.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(1.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(1.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(1.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(1.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(1.0), f32(0.5)), 0);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(1.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(1.0), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(1.0), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(1.0), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(-1.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(1.0), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(1.0), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-1.0), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(-1.0), Infinity), 1);
+assert_return(() => $$.exports["le"](f32(1.0), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(1.0), Infinity), 1);
+assert_return(() => $$.exports["assert_220"]());
+assert_return(() => $$.exports["assert_221"]());
+assert_return(() => $$.exports["assert_222"]());
+assert_return(() => $$.exports["assert_223"]());
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(-0.0)), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(0.0)), 0);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(-0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(0.5)), 0);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(-1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(1.0)), 0);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(-6.28318548203), Infinity), 1);
+assert_return(() => $$.exports["le"](f32(6.28318548203), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(6.28318548203), Infinity), 1);
+assert_return(() => $$.exports["assert_224"]());
+assert_return(() => $$.exports["assert_225"]());
+assert_return(() => $$.exports["assert_226"]());
+assert_return(() => $$.exports["assert_227"]());
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(0.0)), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(-0.0)), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(0.0)), 0);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(-0.5)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(0.5)), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(0.5)), 0);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(-1.0)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(1.0)), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(1.0)), 0);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(-3.40282346639e+38), Infinity), 1);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), -Infinity), 0);
+assert_return(() => $$.exports["le"](f32(3.40282346639e+38), Infinity), 1);
+assert_return(() => $$.exports["assert_228"]());
+assert_return(() => $$.exports["assert_229"]());
+assert_return(() => $$.exports["assert_230"]());
+assert_return(() => $$.exports["assert_231"]());
+assert_return(() => $$.exports["le"](-Infinity, f32(-0.0)), 1);
+assert_return(() => $$.exports["le"](-Infinity, f32(0.0)), 1);
+assert_return(() => $$.exports["le"](Infinity, f32(-0.0)), 0);
+assert_return(() => $$.exports["le"](Infinity, f32(0.0)), 0);
+assert_return(() => $$.exports["le"](-Infinity, f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](-Infinity, f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["le"](Infinity, f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](Infinity, f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["le"](-Infinity, f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](-Infinity, f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["le"](Infinity, f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](Infinity, f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["le"](-Infinity, f32(-0.5)), 1);
+assert_return(() => $$.exports["le"](-Infinity, f32(0.5)), 1);
+assert_return(() => $$.exports["le"](Infinity, f32(-0.5)), 0);
+assert_return(() => $$.exports["le"](Infinity, f32(0.5)), 0);
+assert_return(() => $$.exports["le"](-Infinity, f32(-1.0)), 1);
+assert_return(() => $$.exports["le"](-Infinity, f32(1.0)), 1);
+assert_return(() => $$.exports["le"](Infinity, f32(-1.0)), 0);
+assert_return(() => $$.exports["le"](Infinity, f32(1.0)), 0);
+assert_return(() => $$.exports["le"](-Infinity, f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["le"](-Infinity, f32(6.28318548203)), 1);
+assert_return(() => $$.exports["le"](Infinity, f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["le"](Infinity, f32(6.28318548203)), 0);
+assert_return(() => $$.exports["le"](-Infinity, f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](-Infinity, f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["le"](Infinity, f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](Infinity, f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["le"](-Infinity, -Infinity), 1);
+assert_return(() => $$.exports["le"](-Infinity, Infinity), 1);
+assert_return(() => $$.exports["le"](Infinity, -Infinity), 0);
+assert_return(() => $$.exports["le"](Infinity, Infinity), 1);
+assert_return(() => $$.exports["assert_232"]());
+assert_return(() => $$.exports["assert_233"]());
+assert_return(() => $$.exports["assert_234"]());
+assert_return(() => $$.exports["assert_235"]());
+assert_return(() => $$.exports["assert_236"]());
+assert_return(() => $$.exports["assert_237"]());
+assert_return(() => $$.exports["assert_238"]());
+assert_return(() => $$.exports["assert_239"]());
+assert_return(() => $$.exports["assert_240"]());
+assert_return(() => $$.exports["assert_241"]());
+assert_return(() => $$.exports["assert_242"]());
+assert_return(() => $$.exports["assert_243"]());
+assert_return(() => $$.exports["assert_244"]());
+assert_return(() => $$.exports["assert_245"]());
+assert_return(() => $$.exports["assert_246"]());
+assert_return(() => $$.exports["assert_247"]());
+assert_return(() => $$.exports["assert_248"]());
+assert_return(() => $$.exports["assert_249"]());
+assert_return(() => $$.exports["assert_250"]());
+assert_return(() => $$.exports["assert_251"]());
+assert_return(() => $$.exports["assert_252"]());
+assert_return(() => $$.exports["assert_253"]());
+assert_return(() => $$.exports["assert_254"]());
+assert_return(() => $$.exports["assert_255"]());
+assert_return(() => $$.exports["assert_256"]());
+assert_return(() => $$.exports["assert_257"]());
+assert_return(() => $$.exports["assert_258"]());
+assert_return(() => $$.exports["assert_259"]());
+assert_return(() => $$.exports["assert_260"]());
+assert_return(() => $$.exports["assert_261"]());
+assert_return(() => $$.exports["assert_262"]());
+assert_return(() => $$.exports["assert_263"]());
+assert_return(() => $$.exports["assert_264"]());
+assert_return(() => $$.exports["assert_265"]());
+assert_return(() => $$.exports["assert_266"]());
+assert_return(() => $$.exports["assert_267"]());
+assert_return(() => $$.exports["assert_268"]());
+assert_return(() => $$.exports["assert_269"]());
+assert_return(() => $$.exports["assert_270"]());
+assert_return(() => $$.exports["assert_271"]());
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(0.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.0), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(-0.0), Infinity), 0);
+assert_return(() => $$.exports["gt"](f32(0.0), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(0.0), Infinity), 0);
+assert_return(() => $$.exports["assert_272"]());
+assert_return(() => $$.exports["assert_273"]());
+assert_return(() => $$.exports["assert_274"]());
+assert_return(() => $$.exports["assert_275"]());
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(-0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(-1.40129846432e-45), Infinity), 0);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(1.40129846432e-45), Infinity), 0);
+assert_return(() => $$.exports["assert_276"]());
+assert_return(() => $$.exports["assert_277"]());
+assert_return(() => $$.exports["assert_278"]());
+assert_return(() => $$.exports["assert_279"]());
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(-0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(-1.17549435082e-38), Infinity), 0);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(1.17549435082e-38), Infinity), 0);
+assert_return(() => $$.exports["assert_280"]());
+assert_return(() => $$.exports["assert_281"]());
+assert_return(() => $$.exports["assert_282"]());
+assert_return(() => $$.exports["assert_283"]());
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(-0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(-0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(-0.5), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-0.5), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(-0.5), Infinity), 0);
+assert_return(() => $$.exports["gt"](f32(0.5), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(0.5), Infinity), 0);
+assert_return(() => $$.exports["assert_284"]());
+assert_return(() => $$.exports["assert_285"]());
+assert_return(() => $$.exports["assert_286"]());
+assert_return(() => $$.exports["assert_287"]());
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(-1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(-1.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-1.0), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(-1.0), Infinity), 0);
+assert_return(() => $$.exports["gt"](f32(1.0), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(1.0), Infinity), 0);
+assert_return(() => $$.exports["assert_288"]());
+assert_return(() => $$.exports["assert_289"]());
+assert_return(() => $$.exports["assert_290"]());
+assert_return(() => $$.exports["assert_291"]());
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(-0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(-0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(-1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(-6.28318548203), Infinity), 0);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(6.28318548203), Infinity), 0);
+assert_return(() => $$.exports["assert_292"]());
+assert_return(() => $$.exports["assert_293"]());
+assert_return(() => $$.exports["assert_294"]());
+assert_return(() => $$.exports["assert_295"]());
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(-0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(0.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(-0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(0.5)), 1);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(-1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(1.0)), 1);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(-3.40282346639e+38), Infinity), 0);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), -Infinity), 1);
+assert_return(() => $$.exports["gt"](f32(3.40282346639e+38), Infinity), 0);
+assert_return(() => $$.exports["assert_296"]());
+assert_return(() => $$.exports["assert_297"]());
+assert_return(() => $$.exports["assert_298"]());
+assert_return(() => $$.exports["assert_299"]());
+assert_return(() => $$.exports["gt"](-Infinity, f32(-0.0)), 0);
+assert_return(() => $$.exports["gt"](-Infinity, f32(0.0)), 0);
+assert_return(() => $$.exports["gt"](Infinity, f32(-0.0)), 1);
+assert_return(() => $$.exports["gt"](Infinity, f32(0.0)), 1);
+assert_return(() => $$.exports["gt"](-Infinity, f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](-Infinity, f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["gt"](Infinity, f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](Infinity, f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["gt"](-Infinity, f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](-Infinity, f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["gt"](Infinity, f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](Infinity, f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["gt"](-Infinity, f32(-0.5)), 0);
+assert_return(() => $$.exports["gt"](-Infinity, f32(0.5)), 0);
+assert_return(() => $$.exports["gt"](Infinity, f32(-0.5)), 1);
+assert_return(() => $$.exports["gt"](Infinity, f32(0.5)), 1);
+assert_return(() => $$.exports["gt"](-Infinity, f32(-1.0)), 0);
+assert_return(() => $$.exports["gt"](-Infinity, f32(1.0)), 0);
+assert_return(() => $$.exports["gt"](Infinity, f32(-1.0)), 1);
+assert_return(() => $$.exports["gt"](Infinity, f32(1.0)), 1);
+assert_return(() => $$.exports["gt"](-Infinity, f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](-Infinity, f32(6.28318548203)), 0);
+assert_return(() => $$.exports["gt"](Infinity, f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](Infinity, f32(6.28318548203)), 1);
+assert_return(() => $$.exports["gt"](-Infinity, f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](-Infinity, f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["gt"](Infinity, f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](Infinity, f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -Infinity), 0);
+assert_return(() => $$.exports["gt"](-Infinity, Infinity), 0);
+assert_return(() => $$.exports["gt"](Infinity, -Infinity), 1);
+assert_return(() => $$.exports["gt"](Infinity, Infinity), 0);
+assert_return(() => $$.exports["assert_300"]());
+assert_return(() => $$.exports["assert_301"]());
+assert_return(() => $$.exports["assert_302"]());
+assert_return(() => $$.exports["assert_303"]());
+assert_return(() => $$.exports["assert_304"]());
+assert_return(() => $$.exports["assert_305"]());
+assert_return(() => $$.exports["assert_306"]());
+assert_return(() => $$.exports["assert_307"]());
+assert_return(() => $$.exports["assert_308"]());
+assert_return(() => $$.exports["assert_309"]());
+assert_return(() => $$.exports["assert_310"]());
+assert_return(() => $$.exports["assert_311"]());
+assert_return(() => $$.exports["assert_312"]());
+assert_return(() => $$.exports["assert_313"]());
+assert_return(() => $$.exports["assert_314"]());
+assert_return(() => $$.exports["assert_315"]());
+assert_return(() => $$.exports["assert_316"]());
+assert_return(() => $$.exports["assert_317"]());
+assert_return(() => $$.exports["assert_318"]());
+assert_return(() => $$.exports["assert_319"]());
+assert_return(() => $$.exports["assert_320"]());
+assert_return(() => $$.exports["assert_321"]());
+assert_return(() => $$.exports["assert_322"]());
+assert_return(() => $$.exports["assert_323"]());
+assert_return(() => $$.exports["assert_324"]());
+assert_return(() => $$.exports["assert_325"]());
+assert_return(() => $$.exports["assert_326"]());
+assert_return(() => $$.exports["assert_327"]());
+assert_return(() => $$.exports["assert_328"]());
+assert_return(() => $$.exports["assert_329"]());
+assert_return(() => $$.exports["assert_330"]());
+assert_return(() => $$.exports["assert_331"]());
+assert_return(() => $$.exports["assert_332"]());
+assert_return(() => $$.exports["assert_333"]());
+assert_return(() => $$.exports["assert_334"]());
+assert_return(() => $$.exports["assert_335"]());
+assert_return(() => $$.exports["assert_336"]());
+assert_return(() => $$.exports["assert_337"]());
+assert_return(() => $$.exports["assert_338"]());
+assert_return(() => $$.exports["assert_339"]());
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.0), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(-0.0), Infinity), 0);
+assert_return(() => $$.exports["ge"](f32(0.0), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(0.0), Infinity), 0);
+assert_return(() => $$.exports["assert_340"]());
+assert_return(() => $$.exports["assert_341"]());
+assert_return(() => $$.exports["assert_342"]());
+assert_return(() => $$.exports["assert_343"]());
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(-0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(-1.40129846432e-45), Infinity), 0);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(1.40129846432e-45), Infinity), 0);
+assert_return(() => $$.exports["assert_344"]());
+assert_return(() => $$.exports["assert_345"]());
+assert_return(() => $$.exports["assert_346"]());
+assert_return(() => $$.exports["assert_347"]());
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(-0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(-1.17549435082e-38), Infinity), 0);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(1.17549435082e-38), Infinity), 0);
+assert_return(() => $$.exports["assert_348"]());
+assert_return(() => $$.exports["assert_349"]());
+assert_return(() => $$.exports["assert_350"]());
+assert_return(() => $$.exports["assert_351"]());
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(-0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(-0.5), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(-0.5), Infinity), 0);
+assert_return(() => $$.exports["ge"](f32(0.5), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(0.5), Infinity), 0);
+assert_return(() => $$.exports["assert_352"]());
+assert_return(() => $$.exports["assert_353"]());
+assert_return(() => $$.exports["assert_354"]());
+assert_return(() => $$.exports["assert_355"]());
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(-0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(-0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(-1.0), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(-1.0), Infinity), 0);
+assert_return(() => $$.exports["ge"](f32(1.0), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(1.0), Infinity), 0);
+assert_return(() => $$.exports["assert_356"]());
+assert_return(() => $$.exports["assert_357"]());
+assert_return(() => $$.exports["assert_358"]());
+assert_return(() => $$.exports["assert_359"]());
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(-0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(-0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(-1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(-6.28318548203), Infinity), 0);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(6.28318548203), Infinity), 0);
+assert_return(() => $$.exports["assert_360"]());
+assert_return(() => $$.exports["assert_361"]());
+assert_return(() => $$.exports["assert_362"]());
+assert_return(() => $$.exports["assert_363"]());
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(-0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(0.0)), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(-0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(0.5)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(-1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(1.0)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(-3.40282346639e+38), Infinity), 0);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), -Infinity), 1);
+assert_return(() => $$.exports["ge"](f32(3.40282346639e+38), Infinity), 0);
+assert_return(() => $$.exports["assert_364"]());
+assert_return(() => $$.exports["assert_365"]());
+assert_return(() => $$.exports["assert_366"]());
+assert_return(() => $$.exports["assert_367"]());
+assert_return(() => $$.exports["ge"](-Infinity, f32(-0.0)), 0);
+assert_return(() => $$.exports["ge"](-Infinity, f32(0.0)), 0);
+assert_return(() => $$.exports["ge"](Infinity, f32(-0.0)), 1);
+assert_return(() => $$.exports["ge"](Infinity, f32(0.0)), 1);
+assert_return(() => $$.exports["ge"](-Infinity, f32(-1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](-Infinity, f32(1.40129846432e-45)), 0);
+assert_return(() => $$.exports["ge"](Infinity, f32(-1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](Infinity, f32(1.40129846432e-45)), 1);
+assert_return(() => $$.exports["ge"](-Infinity, f32(-1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](-Infinity, f32(1.17549435082e-38)), 0);
+assert_return(() => $$.exports["ge"](Infinity, f32(-1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](Infinity, f32(1.17549435082e-38)), 1);
+assert_return(() => $$.exports["ge"](-Infinity, f32(-0.5)), 0);
+assert_return(() => $$.exports["ge"](-Infinity, f32(0.5)), 0);
+assert_return(() => $$.exports["ge"](Infinity, f32(-0.5)), 1);
+assert_return(() => $$.exports["ge"](Infinity, f32(0.5)), 1);
+assert_return(() => $$.exports["ge"](-Infinity, f32(-1.0)), 0);
+assert_return(() => $$.exports["ge"](-Infinity, f32(1.0)), 0);
+assert_return(() => $$.exports["ge"](Infinity, f32(-1.0)), 1);
+assert_return(() => $$.exports["ge"](Infinity, f32(1.0)), 1);
+assert_return(() => $$.exports["ge"](-Infinity, f32(-6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](-Infinity, f32(6.28318548203)), 0);
+assert_return(() => $$.exports["ge"](Infinity, f32(-6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](Infinity, f32(6.28318548203)), 1);
+assert_return(() => $$.exports["ge"](-Infinity, f32(-3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](-Infinity, f32(3.40282346639e+38)), 0);
+assert_return(() => $$.exports["ge"](Infinity, f32(-3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](Infinity, f32(3.40282346639e+38)), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-Infinity, Infinity), 0);
+assert_return(() => $$.exports["ge"](Infinity, -Infinity), 1);
+assert_return(() => $$.exports["ge"](Infinity, Infinity), 1);
+assert_return(() => $$.exports["assert_368"]());
+assert_return(() => $$.exports["assert_369"]());
+assert_return(() => $$.exports["assert_370"]());
+assert_return(() => $$.exports["assert_371"]());
+assert_return(() => $$.exports["assert_372"]());
+assert_return(() => $$.exports["assert_373"]());
+assert_return(() => $$.exports["assert_374"]());
+assert_return(() => $$.exports["assert_375"]());
+assert_return(() => $$.exports["assert_376"]());
+assert_return(() => $$.exports["assert_377"]());
+assert_return(() => $$.exports["assert_378"]());
+assert_return(() => $$.exports["assert_379"]());
+assert_return(() => $$.exports["assert_380"]());
+assert_return(() => $$.exports["assert_381"]());
+assert_return(() => $$.exports["assert_382"]());
+assert_return(() => $$.exports["assert_383"]());
+assert_return(() => $$.exports["assert_384"]());
+assert_return(() => $$.exports["assert_385"]());
+assert_return(() => $$.exports["assert_386"]());
+assert_return(() => $$.exports["assert_387"]());
+assert_return(() => $$.exports["assert_388"]());
+assert_return(() => $$.exports["assert_389"]());
+assert_return(() => $$.exports["assert_390"]());
+assert_return(() => $$.exports["assert_391"]());
+assert_return(() => $$.exports["assert_392"]());
+assert_return(() => $$.exports["assert_393"]());
+assert_return(() => $$.exports["assert_394"]());
+assert_return(() => $$.exports["assert_395"]());
+assert_return(() => $$.exports["assert_396"]());
+assert_return(() => $$.exports["assert_397"]());
+assert_return(() => $$.exports["assert_398"]());
+assert_return(() => $$.exports["assert_399"]());
+assert_return(() => $$.exports["assert_400"]());
+assert_return(() => $$.exports["assert_401"]());
+assert_return(() => $$.exports["assert_402"]());
+assert_return(() => $$.exports["assert_403"]());
+assert_return(() => $$.exports["assert_404"]());
+assert_return(() => $$.exports["assert_405"]());
+assert_return(() => $$.exports["assert_406"]());
+assert_return(() => $$.exports["assert_407"]());
diff --git a/JSTests/wasm/spec-tests/f64.wast.js b/JSTests/wasm/spec-tests/f64.wast.js
new file mode 100644
index 0000000..f6dbf1f
--- /dev/null
+++ b/JSTests/wasm/spec-tests/f64.wast.js
@@ -0,0 +1,2489 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x03\x60\x02\x7c\x7c\x01\x7c\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\xfa\x03\xf8\x03\x00\x00\x00\x00\x01\x00\x00\x01\x01\x01\x01\x01\x01\x00\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\xd1\x34\xf8\x03\x03\x61\x64\x64\x00\x00\x03\x73\x75\x62\x00\x01\x03\x6d\x75\x6c\x00\x02\x03\x64\x69\x76\x00\x03\x04\x73\x71\x72\x74\x00\x04\x03\x6d\x69\x6e\x00\x05\x03\x6d\x61\x78\x00\x06\x04\x63\x65\x69\x6c\x00\x07\x05\x66\x6c\x6f\x6f\x72\x00\x08\x05\x74\x72\x75\x6e\x63\x00\x09\x07\x6e\x65\x61\x72\x65\x73\x74\x00\x0a\x03\x61\x62\x73\x00\x0b\x03\x6e\x65\x67\x00\x0c\x08\x63\x6f\x70\x79\x73\x69\x67\x6e\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x0f\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x10\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x11\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x12\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x13\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x14\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x15\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x16\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x17\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x18\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x19\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x1a\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x1b\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x1c\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x1d\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x1e\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x1f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x20\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x21\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x22\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x23\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x24\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x25\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x00\x3d\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x00\x3e\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x39\x00\x3f\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x30\x00\x40\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x31\x00\x41\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x32\x00\x42\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x33\x00\x43\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x34\x00\x44\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x35\x00\x45\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x36\x00\x46\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x37\x00\x47\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x38\x00\x48\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x39\x00\x49\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x30\x00\x4a\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x31\x00\x4b\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x32\x00\x4c\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x33\x00\x4d\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x34\x00\x4e\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x35\x00\x4f\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x36\x00\x50\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x37\x00\x51\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x38\x00\x52\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x39\x00\x53\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x30\x00\x54\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x31\x00\x55\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x32\x00\x56\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x33\x00\x57\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x34\x00\x58\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x35\x00\x59\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x36\x00\x5a\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x37\x00\x5b\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x38\x00\x5c\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x39\x00\x5d\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x30\x00\x5e\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x31\x00\x5f\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x32\x00\x60\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x33\x00\x61\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x34\x00\x62\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x35\x00\x63\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x36\x00\x64\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x37\x00\x65\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x38\x00\x66\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x39\x00\x67\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x30\x00\x68\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x31\x00\x69\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x32\x00\x6a\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x33\x00\x6b\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x34\x00\x6c\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x35\x00\x6d\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x36\x00\x6e\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x37\x00\x6f\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x38\x00\x70\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x39\x00\x71\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x30\x00\x72\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x31\x00\x73\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x32\x00\x74\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x33\x00\x75\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x34\x00\x76\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x35\x00\x77\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x36\x00\x78\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x37\x00\x79\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x38\x00\x7a\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x39\x00\x7b\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x30\x00\x7c\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x31\x00\x7d\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x32\x00\x7e\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x33\x00\x7f\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x34\x00\x80\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x35\x00\x81\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x36\x00\x82\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x37\x00\x83\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x38\x00\x84\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x39\x00\x85\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x30\x00\x86\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x31\x00\x87\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x32\x00\x88\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x33\x00\x89\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x34\x00\x8a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x35\x00\x8b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x36\x00\x8c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x37\x00\x8d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x38\x00\x8e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x39\x00\x8f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x30\x00\x90\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x31\x00\x91\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x32\x00\x92\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x33\x00\x93\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x34\x00\x94\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x35\x00\x95\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x36\x00\x96\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x37\x00\x97\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x38\x00\x98\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x39\x00\x99\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x30\x00\x9a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x31\x00\x9b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x32\x00\x9c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x33\x00\x9d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x34\x00\x9e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x35\x00\x9f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x36\x00\xa0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x37\x00\xa1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x38\x00\xa2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x39\x00\xa3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x30\x00\xa4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x31\x00\xa5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x32\x00\xa6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x33\x00\xa7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x34\x00\xa8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x35\x00\xa9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x36\x00\xaa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x37\x00\xab\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x38\x00\xac\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x39\x00\xad\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x30\x00\xae\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x31\x00\xaf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x32\x00\xb0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x33\x00\xb1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x34\x00\xb2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x35\x00\xb3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x36\x00\xb4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x37\x00\xb5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x38\x00\xb6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x39\x00\xb7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x30\x00\xb8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x31\x00\xb9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x32\x00\xba\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x33\x00\xbb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x34\x00\xbc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x35\x00\xbd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x36\x00\xbe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x37\x00\xbf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x38\x00\xc0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x39\x00\xc1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x30\x00\xc2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x31\x00\xc3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x32\x00\xc4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x33\x00\xc5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x34\x00\xc6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x35\x00\xc7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x36\x00\xc8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x37\x00\xc9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x38\x00\xca\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x39\x00\xcb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x30\x00\xcc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x31\x00\xcd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x32\x00\xce\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x33\x00\xcf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x34\x00\xd0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x35\x00\xd1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x36\x00\xd2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x37\x00\xd3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x38\x00\xd4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x39\x00\xd5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x30\x00\xd6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x31\x00\xd7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x32\x00\xd8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x33\x00\xd9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x34\x00\xda\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x35\x00\xdb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x36\x00\xdc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x37\x00\xdd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x38\x00\xde\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x39\x00\xdf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x30\x00\xe0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x31\x00\xe1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x32\x00\xe2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x33\x00\xe3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x34\x00\xe4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x35\x00\xe5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x36\x00\xe6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x37\x00\xe7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x38\x00\xe8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x39\x00\xe9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x30\x00\xea\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x31\x00\xeb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x32\x00\xec\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x33\x00\xed\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x34\x00\xee\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x35\x00\xef\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x36\x00\xf0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x37\x00\xf1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x38\x00\xf2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x39\x00\xf3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x30\x00\xf4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x31\x00\xf5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x32\x00\xf6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x33\x00\xf7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x34\x00\xf8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x35\x00\xf9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x36\x00\xfa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x37\x00\xfb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x38\x00\xfc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x39\x00\xfd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x30\x00\xfe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x31\x00\xff\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x32\x00\x80\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x33\x00\x81\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x34\x00\x82\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x35\x00\x83\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x36\x00\x84\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x37\x00\x85\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x38\x00\x86\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x39\x00\x87\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x30\x00\x88\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x31\x00\x89\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x32\x00\x8a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x33\x00\x8b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x34\x00\x8c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x35\x00\x8d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x36\x00\x8e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x37\x00\x8f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x38\x00\x90\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x39\x00\x91\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x30\x00\x92\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x31\x00\x93\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x32\x00\x94\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x33\x00\x95\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x34\x00\x96\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x35\x00\x97\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x36\x00\x98\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x37\x00\x99\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x38\x00\x9a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x39\x00\x9b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x30\x00\x9c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x31\x00\x9d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x32\x00\x9e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x33\x00\x9f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x34\x00\xa0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x35\x00\xa1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x36\x00\xa2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x37\x00\xa3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x38\x00\xa4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x39\x00\xa5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x30\x00\xa6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x31\x00\xa7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x32\x00\xa8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x33\x00\xa9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x34\x00\xaa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x35\x00\xab\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x36\x00\xac\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x37\x00\xad\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x38\x00\xae\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x39\x00\xaf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x30\x00\xb0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x31\x00\xb1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x32\x00\xb2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x33\x00\xb3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x34\x00\xb4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x35\x00\xb5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x36\x00\xb6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x37\x00\xb7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x38\x00\xb8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x39\x00\xb9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x30\x00\xba\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x31\x00\xbb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x32\x00\xbc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x33\x00\xbd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x34\x00\xbe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x35\x00\xbf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x36\x00\xc0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x37\x00\xc1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x38\x00\xc2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x39\x00\xc3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x30\x00\xc4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x31\x00\xc5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x32\x00\xc6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x33\x00\xc7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x34\x00\xc8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x35\x00\xc9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x36\x00\xca\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x37\x00\xcb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x38\x00\xcc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x39\x00\xcd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x30\x00\xce\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x31\x00\xcf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x32\x00\xd0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x33\x00\xd1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x34\x00\xd2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x35\x00\xd3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x36\x00\xd4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x37\x00\xd5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x38\x00\xd6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x39\x00\xd7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x30\x00\xd8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x31\x00\xd9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x32\x00\xda\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x33\x00\xdb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x34\x00\xdc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x35\x00\xdd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x36\x00\xde\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x37\x00\xdf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x38\x00\xe0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x39\x00\xe1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x30\x00\xe2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x31\x00\xe3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x32\x00\xe4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x33\x00\xe5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x34\x00\xe6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x35\x00\xe7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x36\x00\xe8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x37\x00\xe9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x38\x00\xea\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x39\x00\xeb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x30\x00\xec\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x31\x00\xed\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x32\x00\xee\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x33\x00\xef\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x34\x00\xf0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x35\x00\xf1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x36\x00\xf2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x37\x00\xf3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x38\x00\xf4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x39\x00\xf5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x30\x00\xf6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x31\x00\xf7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x32\x00\xf8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x33\x00\xf9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x34\x00\xfa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x35\x00\xfb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x36\x00\xfc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x37\x00\xfd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x38\x00\xfe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x39\x00\xff\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x30\x00\x80\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x31\x00\x81\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x32\x00\x82\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x33\x00\x83\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x34\x00\x84\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x35\x00\x85\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x36\x00\x86\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x37\x00\x87\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x38\x00\x88\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x39\x00\x89\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x30\x00\x8a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x31\x00\x8b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x32\x00\x8c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x33\x00\x8d\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x34\x00\x8e\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x35\x00\x8f\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x36\x00\x90\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x37\x00\x91\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x38\x00\x92\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x39\x00\x93\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x30\x00\x94\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x31\x00\x95\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x32\x00\x96\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x33\x00\x97\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x34\x00\x98\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x35\x00\x99\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x36\x00\x9a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x37\x00\x9b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x38\x00\x9c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x39\x00\x9d\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x30\x00\x9e\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x31\x00\x9f\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x32\x00\xa0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x33\x00\xa1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x34\x00\xa2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x35\x00\xa3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x36\x00\xa4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x37\x00\xa5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x38\x00\xa6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x39\x00\xa7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x30\x00\xa8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x31\x00\xa9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x32\x00\xaa\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x33\x00\xab\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x34\x00\xac\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x35\x00\xad\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x36\x00\xae\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x37\x00\xaf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x38\x00\xb0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x39\x00\xb1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x30\x00\xb2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x31\x00\xb3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x32\x00\xb4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x33\x00\xb5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x34\x00\xb6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x35\x00\xb7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x36\x00\xb8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x37\x00\xb9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x38\x00\xba\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x39\x00\xbb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x30\x00\xbc\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x31\x00\xbd\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x32\x00\xbe\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x33\x00\xbf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x34\x00\xc0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x35\x00\xc1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x36\x00\xc2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x37\x00\xc3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x38\x00\xc4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x39\x00\xc5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x30\x00\xc6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x31\x00\xc7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x32\x00\xc8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x33\x00\xc9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x34\x00\xca\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x35\x00\xcb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x36\x00\xcc\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x37\x00\xcd\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x38\x00\xce\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x39\x00\xcf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x30\x00\xd0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x31\x00\xd1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x32\x00\xd2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x33\x00\xd3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x34\x00\xd4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x35\x00\xd5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x36\x00\xd6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x37\x00\xd7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x38\x00\xd8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x39\x00\xd9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x30\x00\xda\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x31\x00\xdb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x32\x00\xdc\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x33\x00\xdd\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x34\x00\xde\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x35\x00\xdf\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x36\x00\xe0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x37\x00\xe1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x38\x00\xe2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x39\x00\xe3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x30\x00\xe4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x31\x00\xe5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x32\x00\xe6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x33\x00\xe7\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x34\x00\xe8\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x35\x00\xe9\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x36\x00\xea\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x37\x00\xeb\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x38\x00\xec\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x39\x00\xed\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x30\x00\xee\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x31\x00\xef\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x32\x00\xf0\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x33\x00\xf1\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x34\x00\xf2\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x35\x00\xf3\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x36\x00\xf4\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x37\x00\xf5\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x38\x00\xf6\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x39\x00\xf7\x03\x0a\x84\xa1\x01\xf8\x03\x07\x00\x20\x00\x20\x01\xa0\x0b\x07\x00\x20\x00\x20\x01\xa1\x0b\x07\x00\x20\x00\x20\x01\xa2\x0b\x07\x00\x20\x00\x20\x01\xa3\x0b\x05\x00\x20\x00\x9f\x0b\x07\x00\x20\x00\x20\x01\xa4\x0b\x07\x00\x20\x00\x20\x01\xa5\x0b\x05\x00\x20\x00\x9b\x0b\x05\x00\x20\x00\x9c\x0b\x05\x00\x20\x00\x9d\x0b\x05\x00\x20\x00\x9e\x0b\x05\x00\x20\x00\x99\x0b\x05\x00\x20\x00\x9a\x0b\x07\x00\x20\x00\x20\x01\xa6\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x27\x01\x01\x7c\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x22\x00\xbd\x20\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x01\x00\x00\x00\x00\x00\x00\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x01\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x01\x00\x00\x00\x00\x00\x00\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x01\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x10\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x10\x80\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\xff\xff\xff\xff\xff\xff\xef\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\xff\xff\xff\xff\xff\xff\xef\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\xff\xff\xff\xff\xff\xff\xef\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\xff\xff\xff\xff\xff\xff\xef\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0d\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x08\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x08\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x09\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x09\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0a\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0a\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0b\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0b\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x0c\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x0c\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["add"](-0.0, -0.0), -0.0);
+assert_return(() => $$.exports["add"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["add"](0.0, -0.0), 0.0);
+assert_return(() => $$.exports["add"](0.0, 0.0), 0.0);
+assert_return(() => $$.exports["add"](-0.0, -5e-324), -5e-324);
+assert_return(() => $$.exports["add"](-0.0, 5e-324), 5e-324);
+assert_return(() => $$.exports["add"](0.0, -5e-324), -5e-324);
+assert_return(() => $$.exports["add"](0.0, 5e-324), 5e-324);
+assert_return(() => $$.exports["add"](-0.0, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](-0.0, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](0.0, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](0.0, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](-0.0, -0.5), -0.5);
+assert_return(() => $$.exports["add"](-0.0, 0.5), 0.5);
+assert_return(() => $$.exports["add"](0.0, -0.5), -0.5);
+assert_return(() => $$.exports["add"](0.0, 0.5), 0.5);
+assert_return(() => $$.exports["add"](-0.0, -1.0), -1.0);
+assert_return(() => $$.exports["add"](-0.0, 1.0), 1.0);
+assert_return(() => $$.exports["add"](0.0, -1.0), -1.0);
+assert_return(() => $$.exports["add"](0.0, 1.0), 1.0);
+assert_return(() => $$.exports["add"](-0.0, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["add"](-0.0, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["add"](0.0, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["add"](0.0, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["add"](-0.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-0.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](0.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](0.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-0.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](-0.0, Infinity), Infinity);
+assert_return(() => $$.exports["add"](0.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](0.0, Infinity), Infinity);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["add"](-5e-324, -0.0), -5e-324);
+assert_return(() => $$.exports["add"](-5e-324, 0.0), -5e-324);
+assert_return(() => $$.exports["add"](5e-324, -0.0), 5e-324);
+assert_return(() => $$.exports["add"](5e-324, 0.0), 5e-324);
+assert_return(() => $$.exports["add"](-5e-324, -5e-324), -1e-323);
+assert_return(() => $$.exports["add"](-5e-324, 5e-324), 0.0);
+assert_return(() => $$.exports["add"](5e-324, -5e-324), 0.0);
+assert_return(() => $$.exports["add"](5e-324, 5e-324), 1e-323);
+assert_return(() => $$.exports["add"](-5e-324, -2.2250738585072014e-308), -2.225073858507202e-308);
+assert_return(() => $$.exports["add"](-5e-324, 2.2250738585072014e-308), 2.225073858507201e-308);
+assert_return(() => $$.exports["add"](5e-324, -2.2250738585072014e-308), -2.225073858507201e-308);
+assert_return(() => $$.exports["add"](5e-324, 2.2250738585072014e-308), 2.225073858507202e-308);
+assert_return(() => $$.exports["add"](-5e-324, -0.5), -0.5);
+assert_return(() => $$.exports["add"](-5e-324, 0.5), 0.5);
+assert_return(() => $$.exports["add"](5e-324, -0.5), -0.5);
+assert_return(() => $$.exports["add"](5e-324, 0.5), 0.5);
+assert_return(() => $$.exports["add"](-5e-324, -1.0), -1.0);
+assert_return(() => $$.exports["add"](-5e-324, 1.0), 1.0);
+assert_return(() => $$.exports["add"](5e-324, -1.0), -1.0);
+assert_return(() => $$.exports["add"](5e-324, 1.0), 1.0);
+assert_return(() => $$.exports["add"](-5e-324, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["add"](-5e-324, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["add"](5e-324, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["add"](5e-324, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["add"](-5e-324, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-5e-324, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](5e-324, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](5e-324, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-5e-324, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](-5e-324, Infinity), Infinity);
+assert_return(() => $$.exports["add"](5e-324, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](5e-324, Infinity), Infinity);
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, 0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, 0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -5e-324), -2.225073858507202e-308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, 5e-324), -2.225073858507201e-308);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -5e-324), 2.225073858507201e-308);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, 5e-324), 2.225073858507202e-308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -2.2250738585072014e-308), -4.450147717014403e-308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, 2.2250738585072014e-308), 4.450147717014403e-308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -0.5), -0.5);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, 0.5), 0.5);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -0.5), -0.5);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, 0.5), 0.5);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -1.0), -1.0);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, 1.0), 1.0);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -1.0), -1.0);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, 1.0), 1.0);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](-2.2250738585072014e-308, Infinity), Infinity);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](2.2250738585072014e-308, Infinity), Infinity);
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["add"](-0.5, -0.0), -0.5);
+assert_return(() => $$.exports["add"](-0.5, 0.0), -0.5);
+assert_return(() => $$.exports["add"](0.5, -0.0), 0.5);
+assert_return(() => $$.exports["add"](0.5, 0.0), 0.5);
+assert_return(() => $$.exports["add"](-0.5, -5e-324), -0.5);
+assert_return(() => $$.exports["add"](-0.5, 5e-324), -0.5);
+assert_return(() => $$.exports["add"](0.5, -5e-324), 0.5);
+assert_return(() => $$.exports["add"](0.5, 5e-324), 0.5);
+assert_return(() => $$.exports["add"](-0.5, -2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["add"](-0.5, 2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["add"](0.5, -2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["add"](0.5, 2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["add"](-0.5, -0.5), -1.0);
+assert_return(() => $$.exports["add"](-0.5, 0.5), 0.0);
+assert_return(() => $$.exports["add"](0.5, -0.5), 0.0);
+assert_return(() => $$.exports["add"](0.5, 0.5), 1.0);
+assert_return(() => $$.exports["add"](-0.5, -1.0), -1.5);
+assert_return(() => $$.exports["add"](-0.5, 1.0), 0.5);
+assert_return(() => $$.exports["add"](0.5, -1.0), -0.5);
+assert_return(() => $$.exports["add"](0.5, 1.0), 1.5);
+assert_return(() => $$.exports["add"](-0.5, -6.283185307179586), -6.783185307179586);
+assert_return(() => $$.exports["add"](-0.5, 6.283185307179586), 5.783185307179586);
+assert_return(() => $$.exports["add"](0.5, -6.283185307179586), -5.783185307179586);
+assert_return(() => $$.exports["add"](0.5, 6.283185307179586), 6.783185307179586);
+assert_return(() => $$.exports["add"](-0.5, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-0.5, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](0.5, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](0.5, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-0.5, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](-0.5, Infinity), Infinity);
+assert_return(() => $$.exports["add"](0.5, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](0.5, Infinity), Infinity);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["add"](-1.0, -0.0), -1.0);
+assert_return(() => $$.exports["add"](-1.0, 0.0), -1.0);
+assert_return(() => $$.exports["add"](1.0, -0.0), 1.0);
+assert_return(() => $$.exports["add"](1.0, 0.0), 1.0);
+assert_return(() => $$.exports["add"](-1.0, -5e-324), -1.0);
+assert_return(() => $$.exports["add"](-1.0, 5e-324), -1.0);
+assert_return(() => $$.exports["add"](1.0, -5e-324), 1.0);
+assert_return(() => $$.exports["add"](1.0, 5e-324), 1.0);
+assert_return(() => $$.exports["add"](-1.0, -2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["add"](-1.0, 2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["add"](1.0, -2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["add"](1.0, 2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["add"](-1.0, -0.5), -1.5);
+assert_return(() => $$.exports["add"](-1.0, 0.5), -0.5);
+assert_return(() => $$.exports["add"](1.0, -0.5), 0.5);
+assert_return(() => $$.exports["add"](1.0, 0.5), 1.5);
+assert_return(() => $$.exports["add"](-1.0, -1.0), -2.0);
+assert_return(() => $$.exports["add"](-1.0, 1.0), 0.0);
+assert_return(() => $$.exports["add"](1.0, -1.0), 0.0);
+assert_return(() => $$.exports["add"](1.0, 1.0), 2.0);
+assert_return(() => $$.exports["add"](-1.0, -6.283185307179586), -7.283185307179586);
+assert_return(() => $$.exports["add"](-1.0, 6.283185307179586), 5.283185307179586);
+assert_return(() => $$.exports["add"](1.0, -6.283185307179586), -5.283185307179586);
+assert_return(() => $$.exports["add"](1.0, 6.283185307179586), 7.283185307179586);
+assert_return(() => $$.exports["add"](-1.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](-1.0, Infinity), Infinity);
+assert_return(() => $$.exports["add"](1.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](1.0, Infinity), Infinity);
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["add"](-6.283185307179586, -0.0), -6.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, 0.0), -6.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, -0.0), 6.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, 0.0), 6.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, -5e-324), -6.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, 5e-324), -6.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, -5e-324), 6.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, 5e-324), 6.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, -2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, 2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, -2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, 2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, -0.5), -6.783185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, 0.5), -5.783185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, -0.5), 5.783185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, 0.5), 6.783185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, -1.0), -7.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, 1.0), -5.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, -1.0), 5.283185307179586);
+assert_return(() => $$.exports["add"](6.283185307179586, 1.0), 7.283185307179586);
+assert_return(() => $$.exports["add"](-6.283185307179586, -6.283185307179586), -12.566370614359172);
+assert_return(() => $$.exports["add"](-6.283185307179586, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["add"](6.283185307179586, -6.283185307179586), 0.0);
+assert_return(() => $$.exports["add"](6.283185307179586, 6.283185307179586), 12.566370614359172);
+assert_return(() => $$.exports["add"](-6.283185307179586, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-6.283185307179586, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](6.283185307179586, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](6.283185307179586, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-6.283185307179586, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](-6.283185307179586, Infinity), Infinity);
+assert_return(() => $$.exports["add"](6.283185307179586, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](6.283185307179586, Infinity), Infinity);
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, 0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, 0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, 5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, 5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, 2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, 2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, 0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, 0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, 1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, 1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, 6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, 6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](-1.7976931348623157e+308, Infinity), Infinity);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, -Infinity), -Infinity);
+assert_return(() => $$.exports["add"](1.7976931348623157e+308, Infinity), Infinity);
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["add"](-Infinity, -0.0), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, 0.0), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, -0.0), Infinity);
+assert_return(() => $$.exports["add"](Infinity, 0.0), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -5e-324), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, 5e-324), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, -5e-324), Infinity);
+assert_return(() => $$.exports["add"](Infinity, 5e-324), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, 2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, -2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["add"](Infinity, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -0.5), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, 0.5), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, -0.5), Infinity);
+assert_return(() => $$.exports["add"](Infinity, 0.5), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -1.0), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, 1.0), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, -1.0), Infinity);
+assert_return(() => $$.exports["add"](Infinity, 1.0), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, 6.283185307179586), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, -6.283185307179586), Infinity);
+assert_return(() => $$.exports["add"](Infinity, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["add"](-Infinity, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["add"](Infinity, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["add"](Infinity, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["add"](-Infinity, -Infinity), -Infinity);
+assert_return_nan(() => $$.exports["add"](-Infinity, Infinity));
+assert_return_nan(() => $$.exports["add"](Infinity, -Infinity));
+assert_return(() => $$.exports["add"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["assert_32"]());
+assert_return(() => $$.exports["assert_33"]());
+assert_return(() => $$.exports["assert_34"]());
+assert_return(() => $$.exports["assert_35"]());
+assert_return(() => $$.exports["assert_36"]());
+assert_return(() => $$.exports["assert_37"]());
+assert_return(() => $$.exports["assert_38"]());
+assert_return(() => $$.exports["assert_39"]());
+assert_return(() => $$.exports["assert_40"]());
+assert_return(() => $$.exports["assert_41"]());
+assert_return(() => $$.exports["assert_42"]());
+assert_return(() => $$.exports["assert_43"]());
+assert_return(() => $$.exports["assert_44"]());
+assert_return(() => $$.exports["assert_45"]());
+assert_return(() => $$.exports["assert_46"]());
+assert_return(() => $$.exports["assert_47"]());
+assert_return(() => $$.exports["assert_48"]());
+assert_return(() => $$.exports["assert_49"]());
+assert_return(() => $$.exports["assert_50"]());
+assert_return(() => $$.exports["assert_51"]());
+assert_return(() => $$.exports["assert_52"]());
+assert_return(() => $$.exports["assert_53"]());
+assert_return(() => $$.exports["assert_54"]());
+assert_return(() => $$.exports["assert_55"]());
+assert_return(() => $$.exports["assert_56"]());
+assert_return(() => $$.exports["assert_57"]());
+assert_return(() => $$.exports["assert_58"]());
+assert_return(() => $$.exports["assert_59"]());
+assert_return(() => $$.exports["assert_60"]());
+assert_return(() => $$.exports["assert_61"]());
+assert_return(() => $$.exports["assert_62"]());
+assert_return(() => $$.exports["assert_63"]());
+assert_return(() => $$.exports["assert_64"]());
+assert_return(() => $$.exports["assert_65"]());
+assert_return(() => $$.exports["assert_66"]());
+assert_return(() => $$.exports["assert_67"]());
+assert_return(() => $$.exports["sub"](-0.0, -0.0), 0.0);
+assert_return(() => $$.exports["sub"](-0.0, 0.0), -0.0);
+assert_return(() => $$.exports["sub"](0.0, -0.0), 0.0);
+assert_return(() => $$.exports["sub"](0.0, 0.0), 0.0);
+assert_return(() => $$.exports["sub"](-0.0, -5e-324), 5e-324);
+assert_return(() => $$.exports["sub"](-0.0, 5e-324), -5e-324);
+assert_return(() => $$.exports["sub"](0.0, -5e-324), 5e-324);
+assert_return(() => $$.exports["sub"](0.0, 5e-324), -5e-324);
+assert_return(() => $$.exports["sub"](-0.0, -2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](-0.0, 2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](0.0, -2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](0.0, 2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](-0.0, -0.5), 0.5);
+assert_return(() => $$.exports["sub"](-0.0, 0.5), -0.5);
+assert_return(() => $$.exports["sub"](0.0, -0.5), 0.5);
+assert_return(() => $$.exports["sub"](0.0, 0.5), -0.5);
+assert_return(() => $$.exports["sub"](-0.0, -1.0), 1.0);
+assert_return(() => $$.exports["sub"](-0.0, 1.0), -1.0);
+assert_return(() => $$.exports["sub"](0.0, -1.0), 1.0);
+assert_return(() => $$.exports["sub"](0.0, 1.0), -1.0);
+assert_return(() => $$.exports["sub"](-0.0, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["sub"](-0.0, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["sub"](0.0, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["sub"](0.0, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["sub"](-0.0, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-0.0, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](0.0, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](0.0, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-0.0, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](-0.0, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](0.0, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](0.0, Infinity), -Infinity);
+assert_return(() => $$.exports["assert_68"]());
+assert_return(() => $$.exports["assert_69"]());
+assert_return(() => $$.exports["assert_70"]());
+assert_return(() => $$.exports["assert_71"]());
+assert_return(() => $$.exports["sub"](-5e-324, -0.0), -5e-324);
+assert_return(() => $$.exports["sub"](-5e-324, 0.0), -5e-324);
+assert_return(() => $$.exports["sub"](5e-324, -0.0), 5e-324);
+assert_return(() => $$.exports["sub"](5e-324, 0.0), 5e-324);
+assert_return(() => $$.exports["sub"](-5e-324, -5e-324), 0.0);
+assert_return(() => $$.exports["sub"](-5e-324, 5e-324), -1e-323);
+assert_return(() => $$.exports["sub"](5e-324, -5e-324), 1e-323);
+assert_return(() => $$.exports["sub"](5e-324, 5e-324), 0.0);
+assert_return(() => $$.exports["sub"](-5e-324, -2.2250738585072014e-308), 2.225073858507201e-308);
+assert_return(() => $$.exports["sub"](-5e-324, 2.2250738585072014e-308), -2.225073858507202e-308);
+assert_return(() => $$.exports["sub"](5e-324, -2.2250738585072014e-308), 2.225073858507202e-308);
+assert_return(() => $$.exports["sub"](5e-324, 2.2250738585072014e-308), -2.225073858507201e-308);
+assert_return(() => $$.exports["sub"](-5e-324, -0.5), 0.5);
+assert_return(() => $$.exports["sub"](-5e-324, 0.5), -0.5);
+assert_return(() => $$.exports["sub"](5e-324, -0.5), 0.5);
+assert_return(() => $$.exports["sub"](5e-324, 0.5), -0.5);
+assert_return(() => $$.exports["sub"](-5e-324, -1.0), 1.0);
+assert_return(() => $$.exports["sub"](-5e-324, 1.0), -1.0);
+assert_return(() => $$.exports["sub"](5e-324, -1.0), 1.0);
+assert_return(() => $$.exports["sub"](5e-324, 1.0), -1.0);
+assert_return(() => $$.exports["sub"](-5e-324, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["sub"](-5e-324, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["sub"](5e-324, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["sub"](5e-324, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["sub"](-5e-324, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-5e-324, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](5e-324, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](5e-324, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-5e-324, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](-5e-324, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](5e-324, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](5e-324, Infinity), -Infinity);
+assert_return(() => $$.exports["assert_72"]());
+assert_return(() => $$.exports["assert_73"]());
+assert_return(() => $$.exports["assert_74"]());
+assert_return(() => $$.exports["assert_75"]());
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, 0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, 0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -5e-324), -2.225073858507201e-308);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, 5e-324), -2.225073858507202e-308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -5e-324), 2.225073858507202e-308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, 5e-324), 2.225073858507201e-308);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, 2.2250738585072014e-308), -4.450147717014403e-308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -2.2250738585072014e-308), 4.450147717014403e-308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -0.5), 0.5);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, 0.5), -0.5);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -0.5), 0.5);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, 0.5), -0.5);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -1.0), 1.0);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, 1.0), -1.0);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -1.0), 1.0);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, 1.0), -1.0);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](-2.2250738585072014e-308, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](2.2250738585072014e-308, Infinity), -Infinity);
+assert_return(() => $$.exports["assert_76"]());
+assert_return(() => $$.exports["assert_77"]());
+assert_return(() => $$.exports["assert_78"]());
+assert_return(() => $$.exports["assert_79"]());
+assert_return(() => $$.exports["sub"](-0.5, -0.0), -0.5);
+assert_return(() => $$.exports["sub"](-0.5, 0.0), -0.5);
+assert_return(() => $$.exports["sub"](0.5, -0.0), 0.5);
+assert_return(() => $$.exports["sub"](0.5, 0.0), 0.5);
+assert_return(() => $$.exports["sub"](-0.5, -5e-324), -0.5);
+assert_return(() => $$.exports["sub"](-0.5, 5e-324), -0.5);
+assert_return(() => $$.exports["sub"](0.5, -5e-324), 0.5);
+assert_return(() => $$.exports["sub"](0.5, 5e-324), 0.5);
+assert_return(() => $$.exports["sub"](-0.5, -2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["sub"](-0.5, 2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["sub"](0.5, -2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["sub"](0.5, 2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["sub"](-0.5, -0.5), 0.0);
+assert_return(() => $$.exports["sub"](-0.5, 0.5), -1.0);
+assert_return(() => $$.exports["sub"](0.5, -0.5), 1.0);
+assert_return(() => $$.exports["sub"](0.5, 0.5), 0.0);
+assert_return(() => $$.exports["sub"](-0.5, -1.0), 0.5);
+assert_return(() => $$.exports["sub"](-0.5, 1.0), -1.5);
+assert_return(() => $$.exports["sub"](0.5, -1.0), 1.5);
+assert_return(() => $$.exports["sub"](0.5, 1.0), -0.5);
+assert_return(() => $$.exports["sub"](-0.5, -6.283185307179586), 5.783185307179586);
+assert_return(() => $$.exports["sub"](-0.5, 6.283185307179586), -6.783185307179586);
+assert_return(() => $$.exports["sub"](0.5, -6.283185307179586), 6.783185307179586);
+assert_return(() => $$.exports["sub"](0.5, 6.283185307179586), -5.783185307179586);
+assert_return(() => $$.exports["sub"](-0.5, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-0.5, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](0.5, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](0.5, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-0.5, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](-0.5, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](0.5, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](0.5, Infinity), -Infinity);
+assert_return(() => $$.exports["assert_80"]());
+assert_return(() => $$.exports["assert_81"]());
+assert_return(() => $$.exports["assert_82"]());
+assert_return(() => $$.exports["assert_83"]());
+assert_return(() => $$.exports["sub"](-1.0, -0.0), -1.0);
+assert_return(() => $$.exports["sub"](-1.0, 0.0), -1.0);
+assert_return(() => $$.exports["sub"](1.0, -0.0), 1.0);
+assert_return(() => $$.exports["sub"](1.0, 0.0), 1.0);
+assert_return(() => $$.exports["sub"](-1.0, -5e-324), -1.0);
+assert_return(() => $$.exports["sub"](-1.0, 5e-324), -1.0);
+assert_return(() => $$.exports["sub"](1.0, -5e-324), 1.0);
+assert_return(() => $$.exports["sub"](1.0, 5e-324), 1.0);
+assert_return(() => $$.exports["sub"](-1.0, -2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["sub"](-1.0, 2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["sub"](1.0, -2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["sub"](1.0, 2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["sub"](-1.0, -0.5), -0.5);
+assert_return(() => $$.exports["sub"](-1.0, 0.5), -1.5);
+assert_return(() => $$.exports["sub"](1.0, -0.5), 1.5);
+assert_return(() => $$.exports["sub"](1.0, 0.5), 0.5);
+assert_return(() => $$.exports["sub"](-1.0, -1.0), 0.0);
+assert_return(() => $$.exports["sub"](-1.0, 1.0), -2.0);
+assert_return(() => $$.exports["sub"](1.0, -1.0), 2.0);
+assert_return(() => $$.exports["sub"](1.0, 1.0), 0.0);
+assert_return(() => $$.exports["sub"](-1.0, -6.283185307179586), 5.283185307179586);
+assert_return(() => $$.exports["sub"](-1.0, 6.283185307179586), -7.283185307179586);
+assert_return(() => $$.exports["sub"](1.0, -6.283185307179586), 7.283185307179586);
+assert_return(() => $$.exports["sub"](1.0, 6.283185307179586), -5.283185307179586);
+assert_return(() => $$.exports["sub"](-1.0, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.0, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.0, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.0, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.0, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](-1.0, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](1.0, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](1.0, Infinity), -Infinity);
+assert_return(() => $$.exports["assert_84"]());
+assert_return(() => $$.exports["assert_85"]());
+assert_return(() => $$.exports["assert_86"]());
+assert_return(() => $$.exports["assert_87"]());
+assert_return(() => $$.exports["sub"](-6.283185307179586, -0.0), -6.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, 0.0), -6.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, -0.0), 6.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, 0.0), 6.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, -5e-324), -6.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, 5e-324), -6.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, -5e-324), 6.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, 5e-324), 6.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, -2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, 2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, -2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, 2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, -0.5), -5.783185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, 0.5), -6.783185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, -0.5), 6.783185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, 0.5), 5.783185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, -1.0), -5.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, 1.0), -7.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, -1.0), 7.283185307179586);
+assert_return(() => $$.exports["sub"](6.283185307179586, 1.0), 5.283185307179586);
+assert_return(() => $$.exports["sub"](-6.283185307179586, -6.283185307179586), 0.0);
+assert_return(() => $$.exports["sub"](-6.283185307179586, 6.283185307179586), -12.566370614359172);
+assert_return(() => $$.exports["sub"](6.283185307179586, -6.283185307179586), 12.566370614359172);
+assert_return(() => $$.exports["sub"](6.283185307179586, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["sub"](-6.283185307179586, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-6.283185307179586, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](6.283185307179586, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](6.283185307179586, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-6.283185307179586, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](-6.283185307179586, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](6.283185307179586, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](6.283185307179586, Infinity), -Infinity);
+assert_return(() => $$.exports["assert_88"]());
+assert_return(() => $$.exports["assert_89"]());
+assert_return(() => $$.exports["assert_90"]());
+assert_return(() => $$.exports["assert_91"]());
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, 0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, 0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, 5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, 5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, 2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, 2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, 0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, 0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, 1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, 1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, 6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, 6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](-1.7976931348623157e+308, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, -Infinity), Infinity);
+assert_return(() => $$.exports["sub"](1.7976931348623157e+308, Infinity), -Infinity);
+assert_return(() => $$.exports["assert_92"]());
+assert_return(() => $$.exports["assert_93"]());
+assert_return(() => $$.exports["assert_94"]());
+assert_return(() => $$.exports["assert_95"]());
+assert_return(() => $$.exports["sub"](-Infinity, -0.0), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, 0.0), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -0.0), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, 0.0), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, -5e-324), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, 5e-324), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -5e-324), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, 5e-324), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, 2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, -0.5), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, 0.5), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -0.5), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, 0.5), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, -1.0), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, 1.0), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -1.0), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, 1.0), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, 6.283185307179586), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -6.283185307179586), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["sub"](-Infinity, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["sub"](Infinity, 1.7976931348623157e+308), Infinity);
+assert_return_nan(() => $$.exports["sub"](-Infinity, -Infinity));
+assert_return(() => $$.exports["sub"](-Infinity, Infinity), -Infinity);
+assert_return(() => $$.exports["sub"](Infinity, -Infinity), Infinity);
+assert_return_nan(() => $$.exports["sub"](Infinity, Infinity));
+assert_return(() => $$.exports["assert_96"]());
+assert_return(() => $$.exports["assert_97"]());
+assert_return(() => $$.exports["assert_98"]());
+assert_return(() => $$.exports["assert_99"]());
+assert_return(() => $$.exports["assert_100"]());
+assert_return(() => $$.exports["assert_101"]());
+assert_return(() => $$.exports["assert_102"]());
+assert_return(() => $$.exports["assert_103"]());
+assert_return(() => $$.exports["assert_104"]());
+assert_return(() => $$.exports["assert_105"]());
+assert_return(() => $$.exports["assert_106"]());
+assert_return(() => $$.exports["assert_107"]());
+assert_return(() => $$.exports["assert_108"]());
+assert_return(() => $$.exports["assert_109"]());
+assert_return(() => $$.exports["assert_110"]());
+assert_return(() => $$.exports["assert_111"]());
+assert_return(() => $$.exports["assert_112"]());
+assert_return(() => $$.exports["assert_113"]());
+assert_return(() => $$.exports["assert_114"]());
+assert_return(() => $$.exports["assert_115"]());
+assert_return(() => $$.exports["assert_116"]());
+assert_return(() => $$.exports["assert_117"]());
+assert_return(() => $$.exports["assert_118"]());
+assert_return(() => $$.exports["assert_119"]());
+assert_return(() => $$.exports["assert_120"]());
+assert_return(() => $$.exports["assert_121"]());
+assert_return(() => $$.exports["assert_122"]());
+assert_return(() => $$.exports["assert_123"]());
+assert_return(() => $$.exports["assert_124"]());
+assert_return(() => $$.exports["assert_125"]());
+assert_return(() => $$.exports["assert_126"]());
+assert_return(() => $$.exports["assert_127"]());
+assert_return(() => $$.exports["assert_128"]());
+assert_return(() => $$.exports["assert_129"]());
+assert_return(() => $$.exports["assert_130"]());
+assert_return(() => $$.exports["assert_131"]());
+assert_return(() => $$.exports["assert_132"]());
+assert_return(() => $$.exports["assert_133"]());
+assert_return(() => $$.exports["assert_134"]());
+assert_return(() => $$.exports["assert_135"]());
+assert_return(() => $$.exports["mul"](-0.0, -0.0), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, 0.0), -0.0);
+assert_return(() => $$.exports["mul"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["mul"](0.0, 0.0), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, -5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, 5e-324), -0.0);
+assert_return(() => $$.exports["mul"](0.0, -5e-324), -0.0);
+assert_return(() => $$.exports["mul"](0.0, 5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, -2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, 2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["mul"](0.0, -2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["mul"](0.0, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, -0.5), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, 0.5), -0.0);
+assert_return(() => $$.exports["mul"](0.0, -0.5), -0.0);
+assert_return(() => $$.exports["mul"](0.0, 0.5), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, -1.0), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, 1.0), -0.0);
+assert_return(() => $$.exports["mul"](0.0, -1.0), -0.0);
+assert_return(() => $$.exports["mul"](0.0, 1.0), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, -6.283185307179586), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, 6.283185307179586), -0.0);
+assert_return(() => $$.exports["mul"](0.0, -6.283185307179586), -0.0);
+assert_return(() => $$.exports["mul"](0.0, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, -1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["mul"](-0.0, 1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["mul"](0.0, -1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["mul"](0.0, 1.7976931348623157e+308), 0.0);
+assert_return_nan(() => $$.exports["mul"](-0.0, -Infinity));
+assert_return_nan(() => $$.exports["mul"](-0.0, Infinity));
+assert_return_nan(() => $$.exports["mul"](0.0, -Infinity));
+assert_return_nan(() => $$.exports["mul"](0.0, Infinity));
+assert_return(() => $$.exports["assert_136"]());
+assert_return(() => $$.exports["assert_137"]());
+assert_return(() => $$.exports["assert_138"]());
+assert_return(() => $$.exports["assert_139"]());
+assert_return(() => $$.exports["mul"](-5e-324, -0.0), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, 0.0), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, -0.0), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, 0.0), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, -5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, 5e-324), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, -5e-324), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, 5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, -2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, 2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, -2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, -0.5), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, 0.5), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, -0.5), -0.0);
+assert_return(() => $$.exports["mul"](5e-324, 0.5), 0.0);
+assert_return(() => $$.exports["mul"](-5e-324, -1.0), 5e-324);
+assert_return(() => $$.exports["mul"](-5e-324, 1.0), -5e-324);
+assert_return(() => $$.exports["mul"](5e-324, -1.0), -5e-324);
+assert_return(() => $$.exports["mul"](5e-324, 1.0), 5e-324);
+assert_return(() => $$.exports["mul"](-5e-324, -6.283185307179586), 3e-323);
+assert_return(() => $$.exports["mul"](-5e-324, 6.283185307179586), -3e-323);
+assert_return(() => $$.exports["mul"](5e-324, -6.283185307179586), -3e-323);
+assert_return(() => $$.exports["mul"](5e-324, 6.283185307179586), 3e-323);
+assert_return(() => $$.exports["mul"](-5e-324, -1.7976931348623157e+308), 8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](-5e-324, 1.7976931348623157e+308), -8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](5e-324, -1.7976931348623157e+308), -8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](5e-324, 1.7976931348623157e+308), 8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](-5e-324, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-5e-324, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](5e-324, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](5e-324, Infinity), Infinity);
+assert_return(() => $$.exports["assert_140"]());
+assert_return(() => $$.exports["assert_141"]());
+assert_return(() => $$.exports["assert_142"]());
+assert_return(() => $$.exports["assert_143"]());
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -0.0), 0.0);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, 0.0), -0.0);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -0.0), -0.0);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, 0.0), 0.0);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, 5e-324), -0.0);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -5e-324), -0.0);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, 5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, 2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -0.5), 1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, 0.5), -1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -0.5), -1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, 0.5), 1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, 1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, 1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -6.283185307179586), 1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, 6.283185307179586), -1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -6.283185307179586), -1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, 6.283185307179586), 1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -1.7976931348623157e+308), 3.9999999999999996);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, 1.7976931348623157e+308), -3.9999999999999996);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -1.7976931348623157e+308), -3.9999999999999996);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, 1.7976931348623157e+308), 3.9999999999999996);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-2.2250738585072014e-308, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](2.2250738585072014e-308, Infinity), Infinity);
+assert_return(() => $$.exports["assert_144"]());
+assert_return(() => $$.exports["assert_145"]());
+assert_return(() => $$.exports["assert_146"]());
+assert_return(() => $$.exports["assert_147"]());
+assert_return(() => $$.exports["mul"](-0.5, -0.0), 0.0);
+assert_return(() => $$.exports["mul"](-0.5, 0.0), -0.0);
+assert_return(() => $$.exports["mul"](0.5, -0.0), -0.0);
+assert_return(() => $$.exports["mul"](0.5, 0.0), 0.0);
+assert_return(() => $$.exports["mul"](-0.5, -5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-0.5, 5e-324), -0.0);
+assert_return(() => $$.exports["mul"](0.5, -5e-324), -0.0);
+assert_return(() => $$.exports["mul"](0.5, 5e-324), 0.0);
+assert_return(() => $$.exports["mul"](-0.5, -2.2250738585072014e-308), 1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](-0.5, 2.2250738585072014e-308), -1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](0.5, -2.2250738585072014e-308), -1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](0.5, 2.2250738585072014e-308), 1.1125369292536007e-308);
+assert_return(() => $$.exports["mul"](-0.5, -0.5), 0.25);
+assert_return(() => $$.exports["mul"](-0.5, 0.5), -0.25);
+assert_return(() => $$.exports["mul"](0.5, -0.5), -0.25);
+assert_return(() => $$.exports["mul"](0.5, 0.5), 0.25);
+assert_return(() => $$.exports["mul"](-0.5, -1.0), 0.5);
+assert_return(() => $$.exports["mul"](-0.5, 1.0), -0.5);
+assert_return(() => $$.exports["mul"](0.5, -1.0), -0.5);
+assert_return(() => $$.exports["mul"](0.5, 1.0), 0.5);
+assert_return(() => $$.exports["mul"](-0.5, -6.283185307179586), 3.141592653589793);
+assert_return(() => $$.exports["mul"](-0.5, 6.283185307179586), -3.141592653589793);
+assert_return(() => $$.exports["mul"](0.5, -6.283185307179586), -3.141592653589793);
+assert_return(() => $$.exports["mul"](0.5, 6.283185307179586), 3.141592653589793);
+assert_return(() => $$.exports["mul"](-0.5, -1.7976931348623157e+308), 8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](-0.5, 1.7976931348623157e+308), -8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](0.5, -1.7976931348623157e+308), -8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](0.5, 1.7976931348623157e+308), 8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](-0.5, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-0.5, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](0.5, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](0.5, Infinity), Infinity);
+assert_return(() => $$.exports["assert_148"]());
+assert_return(() => $$.exports["assert_149"]());
+assert_return(() => $$.exports["assert_150"]());
+assert_return(() => $$.exports["assert_151"]());
+assert_return(() => $$.exports["mul"](-1.0, -0.0), 0.0);
+assert_return(() => $$.exports["mul"](-1.0, 0.0), -0.0);
+assert_return(() => $$.exports["mul"](1.0, -0.0), -0.0);
+assert_return(() => $$.exports["mul"](1.0, 0.0), 0.0);
+assert_return(() => $$.exports["mul"](-1.0, -5e-324), 5e-324);
+assert_return(() => $$.exports["mul"](-1.0, 5e-324), -5e-324);
+assert_return(() => $$.exports["mul"](1.0, -5e-324), -5e-324);
+assert_return(() => $$.exports["mul"](1.0, 5e-324), 5e-324);
+assert_return(() => $$.exports["mul"](-1.0, -2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](-1.0, 2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](1.0, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](1.0, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["mul"](-1.0, -0.5), 0.5);
+assert_return(() => $$.exports["mul"](-1.0, 0.5), -0.5);
+assert_return(() => $$.exports["mul"](1.0, -0.5), -0.5);
+assert_return(() => $$.exports["mul"](1.0, 0.5), 0.5);
+assert_return(() => $$.exports["mul"](-1.0, -1.0), 1.0);
+assert_return(() => $$.exports["mul"](-1.0, 1.0), -1.0);
+assert_return(() => $$.exports["mul"](1.0, -1.0), -1.0);
+assert_return(() => $$.exports["mul"](1.0, 1.0), 1.0);
+assert_return(() => $$.exports["mul"](-1.0, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["mul"](-1.0, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["mul"](1.0, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["mul"](1.0, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["mul"](-1.0, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](-1.0, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](1.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](1.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](-1.0, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-1.0, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](1.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](1.0, Infinity), Infinity);
+assert_return(() => $$.exports["assert_152"]());
+assert_return(() => $$.exports["assert_153"]());
+assert_return(() => $$.exports["assert_154"]());
+assert_return(() => $$.exports["assert_155"]());
+assert_return(() => $$.exports["mul"](-6.283185307179586, -0.0), 0.0);
+assert_return(() => $$.exports["mul"](-6.283185307179586, 0.0), -0.0);
+assert_return(() => $$.exports["mul"](6.283185307179586, -0.0), -0.0);
+assert_return(() => $$.exports["mul"](6.283185307179586, 0.0), 0.0);
+assert_return(() => $$.exports["mul"](-6.283185307179586, -5e-324), 3e-323);
+assert_return(() => $$.exports["mul"](-6.283185307179586, 5e-324), -3e-323);
+assert_return(() => $$.exports["mul"](6.283185307179586, -5e-324), -3e-323);
+assert_return(() => $$.exports["mul"](6.283185307179586, 5e-324), 3e-323);
+assert_return(() => $$.exports["mul"](-6.283185307179586, -2.2250738585072014e-308), 1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](-6.283185307179586, 2.2250738585072014e-308), -1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](6.283185307179586, -2.2250738585072014e-308), -1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](6.283185307179586, 2.2250738585072014e-308), 1.3980551375161837e-307);
+assert_return(() => $$.exports["mul"](-6.283185307179586, -0.5), 3.141592653589793);
+assert_return(() => $$.exports["mul"](-6.283185307179586, 0.5), -3.141592653589793);
+assert_return(() => $$.exports["mul"](6.283185307179586, -0.5), -3.141592653589793);
+assert_return(() => $$.exports["mul"](6.283185307179586, 0.5), 3.141592653589793);
+assert_return(() => $$.exports["mul"](-6.283185307179586, -1.0), 6.283185307179586);
+assert_return(() => $$.exports["mul"](-6.283185307179586, 1.0), -6.283185307179586);
+assert_return(() => $$.exports["mul"](6.283185307179586, -1.0), -6.283185307179586);
+assert_return(() => $$.exports["mul"](6.283185307179586, 1.0), 6.283185307179586);
+assert_return(() => $$.exports["mul"](-6.283185307179586, -6.283185307179586), 39.47841760435743);
+assert_return(() => $$.exports["mul"](-6.283185307179586, 6.283185307179586), -39.47841760435743);
+assert_return(() => $$.exports["mul"](6.283185307179586, -6.283185307179586), -39.47841760435743);
+assert_return(() => $$.exports["mul"](6.283185307179586, 6.283185307179586), 39.47841760435743);
+assert_return(() => $$.exports["mul"](-6.283185307179586, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["mul"](-6.283185307179586, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["mul"](6.283185307179586, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["mul"](6.283185307179586, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["mul"](-6.283185307179586, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-6.283185307179586, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](6.283185307179586, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](6.283185307179586, Infinity), Infinity);
+assert_return(() => $$.exports["assert_156"]());
+assert_return(() => $$.exports["assert_157"]());
+assert_return(() => $$.exports["assert_158"]());
+assert_return(() => $$.exports["assert_159"]());
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -0.0), 0.0);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, 0.0), -0.0);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -0.0), -0.0);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, 0.0), 0.0);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -5e-324), 8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, 5e-324), -8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -5e-324), -8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, 5e-324), 8.881784197001251e-16);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -2.2250738585072014e-308), 3.9999999999999996);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, 2.2250738585072014e-308), -3.9999999999999996);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -2.2250738585072014e-308), -3.9999999999999996);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, 2.2250738585072014e-308), 3.9999999999999996);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -0.5), 8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, 0.5), -8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -0.5), -8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, 0.5), 8.988465674311579e+307);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, 1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, 1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -6.283185307179586), Infinity);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, 6.283185307179586), -Infinity);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-1.7976931348623157e+308, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](1.7976931348623157e+308, Infinity), Infinity);
+assert_return(() => $$.exports["assert_160"]());
+assert_return(() => $$.exports["assert_161"]());
+assert_return(() => $$.exports["assert_162"]());
+assert_return(() => $$.exports["assert_163"]());
+assert_return_nan(() => $$.exports["mul"](-Infinity, -0.0));
+assert_return_nan(() => $$.exports["mul"](-Infinity, 0.0));
+assert_return_nan(() => $$.exports["mul"](Infinity, -0.0));
+assert_return_nan(() => $$.exports["mul"](Infinity, 0.0));
+assert_return(() => $$.exports["mul"](-Infinity, -5e-324), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, 5e-324), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -5e-324), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, 5e-324), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, -2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, 2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, -0.5), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, 0.5), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -0.5), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, 0.5), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, -1.0), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, 1.0), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -1.0), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, 1.0), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, -6.283185307179586), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, 6.283185307179586), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, -Infinity), Infinity);
+assert_return(() => $$.exports["mul"](-Infinity, Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["mul"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_164"]());
+assert_return(() => $$.exports["assert_165"]());
+assert_return(() => $$.exports["assert_166"]());
+assert_return(() => $$.exports["assert_167"]());
+assert_return(() => $$.exports["assert_168"]());
+assert_return(() => $$.exports["assert_169"]());
+assert_return(() => $$.exports["assert_170"]());
+assert_return(() => $$.exports["assert_171"]());
+assert_return(() => $$.exports["assert_172"]());
+assert_return(() => $$.exports["assert_173"]());
+assert_return(() => $$.exports["assert_174"]());
+assert_return(() => $$.exports["assert_175"]());
+assert_return(() => $$.exports["assert_176"]());
+assert_return(() => $$.exports["assert_177"]());
+assert_return(() => $$.exports["assert_178"]());
+assert_return(() => $$.exports["assert_179"]());
+assert_return(() => $$.exports["assert_180"]());
+assert_return(() => $$.exports["assert_181"]());
+assert_return(() => $$.exports["assert_182"]());
+assert_return(() => $$.exports["assert_183"]());
+assert_return(() => $$.exports["assert_184"]());
+assert_return(() => $$.exports["assert_185"]());
+assert_return(() => $$.exports["assert_186"]());
+assert_return(() => $$.exports["assert_187"]());
+assert_return(() => $$.exports["assert_188"]());
+assert_return(() => $$.exports["assert_189"]());
+assert_return(() => $$.exports["assert_190"]());
+assert_return(() => $$.exports["assert_191"]());
+assert_return(() => $$.exports["assert_192"]());
+assert_return(() => $$.exports["assert_193"]());
+assert_return(() => $$.exports["assert_194"]());
+assert_return(() => $$.exports["assert_195"]());
+assert_return(() => $$.exports["assert_196"]());
+assert_return(() => $$.exports["assert_197"]());
+assert_return(() => $$.exports["assert_198"]());
+assert_return(() => $$.exports["assert_199"]());
+assert_return(() => $$.exports["assert_200"]());
+assert_return(() => $$.exports["assert_201"]());
+assert_return(() => $$.exports["assert_202"]());
+assert_return(() => $$.exports["assert_203"]());
+assert_return_nan(() => $$.exports["div"](-0.0, -0.0));
+assert_return_nan(() => $$.exports["div"](-0.0, 0.0));
+assert_return_nan(() => $$.exports["div"](0.0, -0.0));
+assert_return_nan(() => $$.exports["div"](0.0, 0.0));
+assert_return(() => $$.exports["div"](-0.0, -5e-324), 0.0);
+assert_return(() => $$.exports["div"](-0.0, 5e-324), -0.0);
+assert_return(() => $$.exports["div"](0.0, -5e-324), -0.0);
+assert_return(() => $$.exports["div"](0.0, 5e-324), 0.0);
+assert_return(() => $$.exports["div"](-0.0, -2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["div"](-0.0, 2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["div"](0.0, -2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["div"](0.0, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["div"](-0.0, -0.5), 0.0);
+assert_return(() => $$.exports["div"](-0.0, 0.5), -0.0);
+assert_return(() => $$.exports["div"](0.0, -0.5), -0.0);
+assert_return(() => $$.exports["div"](0.0, 0.5), 0.0);
+assert_return(() => $$.exports["div"](-0.0, -1.0), 0.0);
+assert_return(() => $$.exports["div"](-0.0, 1.0), -0.0);
+assert_return(() => $$.exports["div"](0.0, -1.0), -0.0);
+assert_return(() => $$.exports["div"](0.0, 1.0), 0.0);
+assert_return(() => $$.exports["div"](-0.0, -6.283185307179586), 0.0);
+assert_return(() => $$.exports["div"](-0.0, 6.283185307179586), -0.0);
+assert_return(() => $$.exports["div"](0.0, -6.283185307179586), -0.0);
+assert_return(() => $$.exports["div"](0.0, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["div"](-0.0, -1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["div"](-0.0, 1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["div"](0.0, -1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["div"](0.0, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["div"](-0.0, -Infinity), 0.0);
+assert_return(() => $$.exports["div"](-0.0, Infinity), -0.0);
+assert_return(() => $$.exports["div"](0.0, -Infinity), -0.0);
+assert_return(() => $$.exports["div"](0.0, Infinity), 0.0);
+assert_return(() => $$.exports["assert_204"]());
+assert_return(() => $$.exports["assert_205"]());
+assert_return(() => $$.exports["assert_206"]());
+assert_return(() => $$.exports["assert_207"]());
+assert_return(() => $$.exports["div"](-5e-324, -0.0), Infinity);
+assert_return(() => $$.exports["div"](-5e-324, 0.0), -Infinity);
+assert_return(() => $$.exports["div"](5e-324, -0.0), -Infinity);
+assert_return(() => $$.exports["div"](5e-324, 0.0), Infinity);
+assert_return(() => $$.exports["div"](-5e-324, -5e-324), 1.0);
+assert_return(() => $$.exports["div"](-5e-324, 5e-324), -1.0);
+assert_return(() => $$.exports["div"](5e-324, -5e-324), -1.0);
+assert_return(() => $$.exports["div"](5e-324, 5e-324), 1.0);
+assert_return(() => $$.exports["div"](-5e-324, -2.2250738585072014e-308), 2.220446049250313e-16);
+assert_return(() => $$.exports["div"](-5e-324, 2.2250738585072014e-308), -2.220446049250313e-16);
+assert_return(() => $$.exports["div"](5e-324, -2.2250738585072014e-308), -2.220446049250313e-16);
+assert_return(() => $$.exports["div"](5e-324, 2.2250738585072014e-308), 2.220446049250313e-16);
+assert_return(() => $$.exports["div"](-5e-324, -0.5), 1e-323);
+assert_return(() => $$.exports["div"](-5e-324, 0.5), -1e-323);
+assert_return(() => $$.exports["div"](5e-324, -0.5), -1e-323);
+assert_return(() => $$.exports["div"](5e-324, 0.5), 1e-323);
+assert_return(() => $$.exports["div"](-5e-324, -1.0), 5e-324);
+assert_return(() => $$.exports["div"](-5e-324, 1.0), -5e-324);
+assert_return(() => $$.exports["div"](5e-324, -1.0), -5e-324);
+assert_return(() => $$.exports["div"](5e-324, 1.0), 5e-324);
+assert_return(() => $$.exports["div"](-5e-324, -6.283185307179586), 0.0);
+assert_return(() => $$.exports["div"](-5e-324, 6.283185307179586), -0.0);
+assert_return(() => $$.exports["div"](5e-324, -6.283185307179586), -0.0);
+assert_return(() => $$.exports["div"](5e-324, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["div"](-5e-324, -1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["div"](-5e-324, 1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["div"](5e-324, -1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["div"](5e-324, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["div"](-5e-324, -Infinity), 0.0);
+assert_return(() => $$.exports["div"](-5e-324, Infinity), -0.0);
+assert_return(() => $$.exports["div"](5e-324, -Infinity), -0.0);
+assert_return(() => $$.exports["div"](5e-324, Infinity), 0.0);
+assert_return(() => $$.exports["assert_208"]());
+assert_return(() => $$.exports["assert_209"]());
+assert_return(() => $$.exports["assert_210"]());
+assert_return(() => $$.exports["assert_211"]());
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -0.0), Infinity);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, 0.0), -Infinity);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -0.0), -Infinity);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, 0.0), Infinity);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -5e-324), 4503599627370496.0);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, 5e-324), -4503599627370496.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -5e-324), -4503599627370496.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, 5e-324), 4503599627370496.0);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, 2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, 2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -0.5), 4.450147717014403e-308);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, 0.5), -4.450147717014403e-308);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -0.5), -4.450147717014403e-308);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, 0.5), 4.450147717014403e-308);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, 1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, 1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -6.283185307179586), 3.541315033259774e-309);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, 6.283185307179586), -3.541315033259774e-309);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -6.283185307179586), -3.541315033259774e-309);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, 6.283185307179586), 3.541315033259774e-309);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, 1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, -Infinity), 0.0);
+assert_return(() => $$.exports["div"](-2.2250738585072014e-308, Infinity), -0.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, -Infinity), -0.0);
+assert_return(() => $$.exports["div"](2.2250738585072014e-308, Infinity), 0.0);
+assert_return(() => $$.exports["assert_212"]());
+assert_return(() => $$.exports["assert_213"]());
+assert_return(() => $$.exports["assert_214"]());
+assert_return(() => $$.exports["assert_215"]());
+assert_return(() => $$.exports["div"](-0.5, -0.0), Infinity);
+assert_return(() => $$.exports["div"](-0.5, 0.0), -Infinity);
+assert_return(() => $$.exports["div"](0.5, -0.0), -Infinity);
+assert_return(() => $$.exports["div"](0.5, 0.0), Infinity);
+assert_return(() => $$.exports["div"](-0.5, -5e-324), Infinity);
+assert_return(() => $$.exports["div"](-0.5, 5e-324), -Infinity);
+assert_return(() => $$.exports["div"](0.5, -5e-324), -Infinity);
+assert_return(() => $$.exports["div"](0.5, 5e-324), Infinity);
+assert_return(() => $$.exports["div"](-0.5, -2.2250738585072014e-308), 2.247116418577895e+307);
+assert_return(() => $$.exports["div"](-0.5, 2.2250738585072014e-308), -2.247116418577895e+307);
+assert_return(() => $$.exports["div"](0.5, -2.2250738585072014e-308), -2.247116418577895e+307);
+assert_return(() => $$.exports["div"](0.5, 2.2250738585072014e-308), 2.247116418577895e+307);
+assert_return(() => $$.exports["div"](-0.5, -0.5), 1.0);
+assert_return(() => $$.exports["div"](-0.5, 0.5), -1.0);
+assert_return(() => $$.exports["div"](0.5, -0.5), -1.0);
+assert_return(() => $$.exports["div"](0.5, 0.5), 1.0);
+assert_return(() => $$.exports["div"](-0.5, -1.0), 0.5);
+assert_return(() => $$.exports["div"](-0.5, 1.0), -0.5);
+assert_return(() => $$.exports["div"](0.5, -1.0), -0.5);
+assert_return(() => $$.exports["div"](0.5, 1.0), 0.5);
+assert_return(() => $$.exports["div"](-0.5, -6.283185307179586), 0.07957747154594767);
+assert_return(() => $$.exports["div"](-0.5, 6.283185307179586), -0.07957747154594767);
+assert_return(() => $$.exports["div"](0.5, -6.283185307179586), -0.07957747154594767);
+assert_return(() => $$.exports["div"](0.5, 6.283185307179586), 0.07957747154594767);
+assert_return(() => $$.exports["div"](-0.5, -1.7976931348623157e+308), 2.781342323134e-309);
+assert_return(() => $$.exports["div"](-0.5, 1.7976931348623157e+308), -2.781342323134e-309);
+assert_return(() => $$.exports["div"](0.5, -1.7976931348623157e+308), -2.781342323134e-309);
+assert_return(() => $$.exports["div"](0.5, 1.7976931348623157e+308), 2.781342323134e-309);
+assert_return(() => $$.exports["div"](-0.5, -Infinity), 0.0);
+assert_return(() => $$.exports["div"](-0.5, Infinity), -0.0);
+assert_return(() => $$.exports["div"](0.5, -Infinity), -0.0);
+assert_return(() => $$.exports["div"](0.5, Infinity), 0.0);
+assert_return(() => $$.exports["assert_216"]());
+assert_return(() => $$.exports["assert_217"]());
+assert_return(() => $$.exports["assert_218"]());
+assert_return(() => $$.exports["assert_219"]());
+assert_return(() => $$.exports["div"](-1.0, -0.0), Infinity);
+assert_return(() => $$.exports["div"](-1.0, 0.0), -Infinity);
+assert_return(() => $$.exports["div"](1.0, -0.0), -Infinity);
+assert_return(() => $$.exports["div"](1.0, 0.0), Infinity);
+assert_return(() => $$.exports["div"](-1.0, -5e-324), Infinity);
+assert_return(() => $$.exports["div"](-1.0, 5e-324), -Infinity);
+assert_return(() => $$.exports["div"](1.0, -5e-324), -Infinity);
+assert_return(() => $$.exports["div"](1.0, 5e-324), Infinity);
+assert_return(() => $$.exports["div"](-1.0, -2.2250738585072014e-308), 4.49423283715579e+307);
+assert_return(() => $$.exports["div"](-1.0, 2.2250738585072014e-308), -4.49423283715579e+307);
+assert_return(() => $$.exports["div"](1.0, -2.2250738585072014e-308), -4.49423283715579e+307);
+assert_return(() => $$.exports["div"](1.0, 2.2250738585072014e-308), 4.49423283715579e+307);
+assert_return(() => $$.exports["div"](-1.0, -0.5), 2.0);
+assert_return(() => $$.exports["div"](-1.0, 0.5), -2.0);
+assert_return(() => $$.exports["div"](1.0, -0.5), -2.0);
+assert_return(() => $$.exports["div"](1.0, 0.5), 2.0);
+assert_return(() => $$.exports["div"](-1.0, -1.0), 1.0);
+assert_return(() => $$.exports["div"](-1.0, 1.0), -1.0);
+assert_return(() => $$.exports["div"](1.0, -1.0), -1.0);
+assert_return(() => $$.exports["div"](1.0, 1.0), 1.0);
+assert_return(() => $$.exports["div"](-1.0, -6.283185307179586), 0.15915494309189535);
+assert_return(() => $$.exports["div"](-1.0, 6.283185307179586), -0.15915494309189535);
+assert_return(() => $$.exports["div"](1.0, -6.283185307179586), -0.15915494309189535);
+assert_return(() => $$.exports["div"](1.0, 6.283185307179586), 0.15915494309189535);
+assert_return(() => $$.exports["div"](-1.0, -1.7976931348623157e+308), 5.562684646268003e-309);
+assert_return(() => $$.exports["div"](-1.0, 1.7976931348623157e+308), -5.562684646268003e-309);
+assert_return(() => $$.exports["div"](1.0, -1.7976931348623157e+308), -5.562684646268003e-309);
+assert_return(() => $$.exports["div"](1.0, 1.7976931348623157e+308), 5.562684646268003e-309);
+assert_return(() => $$.exports["div"](-1.0, -Infinity), 0.0);
+assert_return(() => $$.exports["div"](-1.0, Infinity), -0.0);
+assert_return(() => $$.exports["div"](1.0, -Infinity), -0.0);
+assert_return(() => $$.exports["div"](1.0, Infinity), 0.0);
+assert_return(() => $$.exports["assert_220"]());
+assert_return(() => $$.exports["assert_221"]());
+assert_return(() => $$.exports["assert_222"]());
+assert_return(() => $$.exports["assert_223"]());
+assert_return(() => $$.exports["div"](-6.283185307179586, -0.0), Infinity);
+assert_return(() => $$.exports["div"](-6.283185307179586, 0.0), -Infinity);
+assert_return(() => $$.exports["div"](6.283185307179586, -0.0), -Infinity);
+assert_return(() => $$.exports["div"](6.283185307179586, 0.0), Infinity);
+assert_return(() => $$.exports["div"](-6.283185307179586, -5e-324), Infinity);
+assert_return(() => $$.exports["div"](-6.283185307179586, 5e-324), -Infinity);
+assert_return(() => $$.exports["div"](6.283185307179586, -5e-324), -Infinity);
+assert_return(() => $$.exports["div"](6.283185307179586, 5e-324), Infinity);
+assert_return(() => $$.exports["div"](-6.283185307179586, -2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["div"](-6.283185307179586, 2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["div"](6.283185307179586, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["div"](6.283185307179586, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["div"](-6.283185307179586, -0.5), 12.566370614359172);
+assert_return(() => $$.exports["div"](-6.283185307179586, 0.5), -12.566370614359172);
+assert_return(() => $$.exports["div"](6.283185307179586, -0.5), -12.566370614359172);
+assert_return(() => $$.exports["div"](6.283185307179586, 0.5), 12.566370614359172);
+assert_return(() => $$.exports["div"](-6.283185307179586, -1.0), 6.283185307179586);
+assert_return(() => $$.exports["div"](-6.283185307179586, 1.0), -6.283185307179586);
+assert_return(() => $$.exports["div"](6.283185307179586, -1.0), -6.283185307179586);
+assert_return(() => $$.exports["div"](6.283185307179586, 1.0), 6.283185307179586);
+assert_return(() => $$.exports["div"](-6.283185307179586, -6.283185307179586), 1.0);
+assert_return(() => $$.exports["div"](-6.283185307179586, 6.283185307179586), -1.0);
+assert_return(() => $$.exports["div"](6.283185307179586, -6.283185307179586), -1.0);
+assert_return(() => $$.exports["div"](6.283185307179586, 6.283185307179586), 1.0);
+assert_return(() => $$.exports["div"](-6.283185307179586, -1.7976931348623157e+308), 3.49513784379046e-308);
+assert_return(() => $$.exports["div"](-6.283185307179586, 1.7976931348623157e+308), -3.49513784379046e-308);
+assert_return(() => $$.exports["div"](6.283185307179586, -1.7976931348623157e+308), -3.49513784379046e-308);
+assert_return(() => $$.exports["div"](6.283185307179586, 1.7976931348623157e+308), 3.49513784379046e-308);
+assert_return(() => $$.exports["div"](-6.283185307179586, -Infinity), 0.0);
+assert_return(() => $$.exports["div"](-6.283185307179586, Infinity), -0.0);
+assert_return(() => $$.exports["div"](6.283185307179586, -Infinity), -0.0);
+assert_return(() => $$.exports["div"](6.283185307179586, Infinity), 0.0);
+assert_return(() => $$.exports["assert_224"]());
+assert_return(() => $$.exports["assert_225"]());
+assert_return(() => $$.exports["assert_226"]());
+assert_return(() => $$.exports["assert_227"]());
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -0.0), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, 0.0), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -0.0), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, 0.0), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -5e-324), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, 5e-324), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -5e-324), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, 5e-324), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, 2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -0.5), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, 0.5), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -0.5), -Infinity);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, 0.5), Infinity);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, 1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, 1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -6.283185307179586), 2.861117485757028e+307);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, 6.283185307179586), -2.861117485757028e+307);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -6.283185307179586), -2.861117485757028e+307);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, 6.283185307179586), 2.861117485757028e+307);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -1.7976931348623157e+308), 1.0);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, 1.7976931348623157e+308), -1.0);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -1.7976931348623157e+308), -1.0);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, 1.7976931348623157e+308), 1.0);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, -Infinity), 0.0);
+assert_return(() => $$.exports["div"](-1.7976931348623157e+308, Infinity), -0.0);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, -Infinity), -0.0);
+assert_return(() => $$.exports["div"](1.7976931348623157e+308, Infinity), 0.0);
+assert_return(() => $$.exports["assert_228"]());
+assert_return(() => $$.exports["assert_229"]());
+assert_return(() => $$.exports["assert_230"]());
+assert_return(() => $$.exports["assert_231"]());
+assert_return(() => $$.exports["div"](-Infinity, -0.0), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, 0.0), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, -0.0), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, 0.0), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, -5e-324), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, 5e-324), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, -5e-324), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, 5e-324), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, -2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, 2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, -0.5), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, 0.5), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, -0.5), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, 0.5), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, -1.0), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, 1.0), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, -1.0), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, 1.0), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, -6.283185307179586), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, 6.283185307179586), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["div"](-Infinity, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["div"](Infinity, 1.7976931348623157e+308), Infinity);
+assert_return_nan(() => $$.exports["div"](-Infinity, -Infinity));
+assert_return_nan(() => $$.exports["div"](-Infinity, Infinity));
+assert_return_nan(() => $$.exports["div"](Infinity, -Infinity));
+assert_return_nan(() => $$.exports["div"](Infinity, Infinity));
+assert_return(() => $$.exports["assert_232"]());
+assert_return(() => $$.exports["assert_233"]());
+assert_return(() => $$.exports["assert_234"]());
+assert_return(() => $$.exports["assert_235"]());
+assert_return(() => $$.exports["assert_236"]());
+assert_return(() => $$.exports["assert_237"]());
+assert_return(() => $$.exports["assert_238"]());
+assert_return(() => $$.exports["assert_239"]());
+assert_return(() => $$.exports["assert_240"]());
+assert_return(() => $$.exports["assert_241"]());
+assert_return(() => $$.exports["assert_242"]());
+assert_return(() => $$.exports["assert_243"]());
+assert_return(() => $$.exports["assert_244"]());
+assert_return(() => $$.exports["assert_245"]());
+assert_return(() => $$.exports["assert_246"]());
+assert_return(() => $$.exports["assert_247"]());
+assert_return(() => $$.exports["assert_248"]());
+assert_return(() => $$.exports["assert_249"]());
+assert_return(() => $$.exports["assert_250"]());
+assert_return(() => $$.exports["assert_251"]());
+assert_return(() => $$.exports["assert_252"]());
+assert_return(() => $$.exports["assert_253"]());
+assert_return(() => $$.exports["assert_254"]());
+assert_return(() => $$.exports["assert_255"]());
+assert_return(() => $$.exports["assert_256"]());
+assert_return(() => $$.exports["assert_257"]());
+assert_return(() => $$.exports["assert_258"]());
+assert_return(() => $$.exports["assert_259"]());
+assert_return(() => $$.exports["assert_260"]());
+assert_return(() => $$.exports["assert_261"]());
+assert_return(() => $$.exports["assert_262"]());
+assert_return(() => $$.exports["assert_263"]());
+assert_return(() => $$.exports["assert_264"]());
+assert_return(() => $$.exports["assert_265"]());
+assert_return(() => $$.exports["assert_266"]());
+assert_return(() => $$.exports["assert_267"]());
+assert_return(() => $$.exports["assert_268"]());
+assert_return(() => $$.exports["assert_269"]());
+assert_return(() => $$.exports["assert_270"]());
+assert_return(() => $$.exports["assert_271"]());
+assert_return(() => $$.exports["min"](-0.0, -0.0), -0.0);
+assert_return(() => $$.exports["min"](-0.0, 0.0), -0.0);
+assert_return(() => $$.exports["min"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["min"](0.0, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-0.0, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](-0.0, 5e-324), -0.0);
+assert_return(() => $$.exports["min"](0.0, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](0.0, 5e-324), 0.0);
+assert_return(() => $$.exports["min"](-0.0, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-0.0, 2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["min"](0.0, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](0.0, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["min"](-0.0, -0.5), -0.5);
+assert_return(() => $$.exports["min"](-0.0, 0.5), -0.0);
+assert_return(() => $$.exports["min"](0.0, -0.5), -0.5);
+assert_return(() => $$.exports["min"](0.0, 0.5), 0.0);
+assert_return(() => $$.exports["min"](-0.0, -1.0), -1.0);
+assert_return(() => $$.exports["min"](-0.0, 1.0), -0.0);
+assert_return(() => $$.exports["min"](0.0, -1.0), -1.0);
+assert_return(() => $$.exports["min"](0.0, 1.0), 0.0);
+assert_return(() => $$.exports["min"](-0.0, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](-0.0, 6.283185307179586), -0.0);
+assert_return(() => $$.exports["min"](0.0, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](0.0, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["min"](-0.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-0.0, 1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["min"](0.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](0.0, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["min"](-0.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-0.0, Infinity), -0.0);
+assert_return(() => $$.exports["min"](0.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](0.0, Infinity), 0.0);
+assert_return(() => $$.exports["assert_272"]());
+assert_return(() => $$.exports["assert_273"]());
+assert_return(() => $$.exports["assert_274"]());
+assert_return(() => $$.exports["assert_275"]());
+assert_return(() => $$.exports["min"](-5e-324, -0.0), -5e-324);
+assert_return(() => $$.exports["min"](-5e-324, 0.0), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -0.0), -0.0);
+assert_return(() => $$.exports["min"](5e-324, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-5e-324, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](-5e-324, 5e-324), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, 5e-324), 5e-324);
+assert_return(() => $$.exports["min"](-5e-324, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-5e-324, 2.2250738585072014e-308), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](5e-324, 2.2250738585072014e-308), 5e-324);
+assert_return(() => $$.exports["min"](-5e-324, -0.5), -0.5);
+assert_return(() => $$.exports["min"](-5e-324, 0.5), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -0.5), -0.5);
+assert_return(() => $$.exports["min"](5e-324, 0.5), 5e-324);
+assert_return(() => $$.exports["min"](-5e-324, -1.0), -1.0);
+assert_return(() => $$.exports["min"](-5e-324, 1.0), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -1.0), -1.0);
+assert_return(() => $$.exports["min"](5e-324, 1.0), 5e-324);
+assert_return(() => $$.exports["min"](-5e-324, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](-5e-324, 6.283185307179586), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](5e-324, 6.283185307179586), 5e-324);
+assert_return(() => $$.exports["min"](-5e-324, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-5e-324, 1.7976931348623157e+308), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](5e-324, 1.7976931348623157e+308), 5e-324);
+assert_return(() => $$.exports["min"](-5e-324, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-5e-324, Infinity), -5e-324);
+assert_return(() => $$.exports["min"](5e-324, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](5e-324, Infinity), 5e-324);
+assert_return(() => $$.exports["assert_276"]());
+assert_return(() => $$.exports["assert_277"]());
+assert_return(() => $$.exports["assert_278"]());
+assert_return(() => $$.exports["assert_279"]());
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, 0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -0.0), -0.0);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -5e-324), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, 5e-324), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, 5e-324), 5e-324);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, 2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -0.5), -0.5);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, 0.5), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -0.5), -0.5);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, 0.5), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -1.0), -1.0);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, 1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -1.0), -1.0);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, 1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, 6.283185307179586), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, 6.283185307179586), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, 1.7976931348623157e+308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, 1.7976931348623157e+308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-2.2250738585072014e-308, Infinity), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](2.2250738585072014e-308, Infinity), 2.2250738585072014e-308);
+assert_return(() => $$.exports["assert_280"]());
+assert_return(() => $$.exports["assert_281"]());
+assert_return(() => $$.exports["assert_282"]());
+assert_return(() => $$.exports["assert_283"]());
+assert_return(() => $$.exports["min"](-0.5, -0.0), -0.5);
+assert_return(() => $$.exports["min"](-0.5, 0.0), -0.5);
+assert_return(() => $$.exports["min"](0.5, -0.0), -0.0);
+assert_return(() => $$.exports["min"](0.5, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-0.5, -5e-324), -0.5);
+assert_return(() => $$.exports["min"](-0.5, 5e-324), -0.5);
+assert_return(() => $$.exports["min"](0.5, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](0.5, 5e-324), 5e-324);
+assert_return(() => $$.exports["min"](-0.5, -2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["min"](-0.5, 2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["min"](0.5, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](0.5, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-0.5, -0.5), -0.5);
+assert_return(() => $$.exports["min"](-0.5, 0.5), -0.5);
+assert_return(() => $$.exports["min"](0.5, -0.5), -0.5);
+assert_return(() => $$.exports["min"](0.5, 0.5), 0.5);
+assert_return(() => $$.exports["min"](-0.5, -1.0), -1.0);
+assert_return(() => $$.exports["min"](-0.5, 1.0), -0.5);
+assert_return(() => $$.exports["min"](0.5, -1.0), -1.0);
+assert_return(() => $$.exports["min"](0.5, 1.0), 0.5);
+assert_return(() => $$.exports["min"](-0.5, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](-0.5, 6.283185307179586), -0.5);
+assert_return(() => $$.exports["min"](0.5, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](0.5, 6.283185307179586), 0.5);
+assert_return(() => $$.exports["min"](-0.5, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-0.5, 1.7976931348623157e+308), -0.5);
+assert_return(() => $$.exports["min"](0.5, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](0.5, 1.7976931348623157e+308), 0.5);
+assert_return(() => $$.exports["min"](-0.5, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-0.5, Infinity), -0.5);
+assert_return(() => $$.exports["min"](0.5, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](0.5, Infinity), 0.5);
+assert_return(() => $$.exports["assert_284"]());
+assert_return(() => $$.exports["assert_285"]());
+assert_return(() => $$.exports["assert_286"]());
+assert_return(() => $$.exports["assert_287"]());
+assert_return(() => $$.exports["min"](-1.0, -0.0), -1.0);
+assert_return(() => $$.exports["min"](-1.0, 0.0), -1.0);
+assert_return(() => $$.exports["min"](1.0, -0.0), -0.0);
+assert_return(() => $$.exports["min"](1.0, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-1.0, -5e-324), -1.0);
+assert_return(() => $$.exports["min"](-1.0, 5e-324), -1.0);
+assert_return(() => $$.exports["min"](1.0, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](1.0, 5e-324), 5e-324);
+assert_return(() => $$.exports["min"](-1.0, -2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["min"](-1.0, 2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["min"](1.0, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](1.0, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-1.0, -0.5), -1.0);
+assert_return(() => $$.exports["min"](-1.0, 0.5), -1.0);
+assert_return(() => $$.exports["min"](1.0, -0.5), -0.5);
+assert_return(() => $$.exports["min"](1.0, 0.5), 0.5);
+assert_return(() => $$.exports["min"](-1.0, -1.0), -1.0);
+assert_return(() => $$.exports["min"](-1.0, 1.0), -1.0);
+assert_return(() => $$.exports["min"](1.0, -1.0), -1.0);
+assert_return(() => $$.exports["min"](1.0, 1.0), 1.0);
+assert_return(() => $$.exports["min"](-1.0, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](-1.0, 6.283185307179586), -1.0);
+assert_return(() => $$.exports["min"](1.0, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](1.0, 6.283185307179586), 1.0);
+assert_return(() => $$.exports["min"](-1.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.0, 1.7976931348623157e+308), -1.0);
+assert_return(() => $$.exports["min"](1.0, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.0, 1.7976931348623157e+308), 1.0);
+assert_return(() => $$.exports["min"](-1.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-1.0, Infinity), -1.0);
+assert_return(() => $$.exports["min"](1.0, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](1.0, Infinity), 1.0);
+assert_return(() => $$.exports["assert_288"]());
+assert_return(() => $$.exports["assert_289"]());
+assert_return(() => $$.exports["assert_290"]());
+assert_return(() => $$.exports["assert_291"]());
+assert_return(() => $$.exports["min"](-6.283185307179586, -0.0), -6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, 0.0), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -0.0), -0.0);
+assert_return(() => $$.exports["min"](6.283185307179586, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-6.283185307179586, -5e-324), -6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, 5e-324), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](6.283185307179586, 5e-324), 5e-324);
+assert_return(() => $$.exports["min"](-6.283185307179586, -2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, 2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](6.283185307179586, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-6.283185307179586, -0.5), -6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, 0.5), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -0.5), -0.5);
+assert_return(() => $$.exports["min"](6.283185307179586, 0.5), 0.5);
+assert_return(() => $$.exports["min"](-6.283185307179586, -1.0), -6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, 1.0), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -1.0), -1.0);
+assert_return(() => $$.exports["min"](6.283185307179586, 1.0), 1.0);
+assert_return(() => $$.exports["min"](-6.283185307179586, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, 6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-6.283185307179586, 1.7976931348623157e+308), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](6.283185307179586, 1.7976931348623157e+308), 6.283185307179586);
+assert_return(() => $$.exports["min"](-6.283185307179586, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-6.283185307179586, Infinity), -6.283185307179586);
+assert_return(() => $$.exports["min"](6.283185307179586, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](6.283185307179586, Infinity), 6.283185307179586);
+assert_return(() => $$.exports["assert_292"]());
+assert_return(() => $$.exports["assert_293"]());
+assert_return(() => $$.exports["assert_294"]());
+assert_return(() => $$.exports["assert_295"]());
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, 0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -0.0), -0.0);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, 5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, 5e-324), 5e-324);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, 2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, 0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -0.5), -0.5);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, 0.5), 0.5);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, 1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -1.0), -1.0);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, 1.0), 1.0);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, 6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, 1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-1.7976931348623157e+308, Infinity), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](1.7976931348623157e+308, Infinity), 1.7976931348623157e+308);
+assert_return(() => $$.exports["assert_296"]());
+assert_return(() => $$.exports["assert_297"]());
+assert_return(() => $$.exports["assert_298"]());
+assert_return(() => $$.exports["assert_299"]());
+assert_return(() => $$.exports["min"](-Infinity, -0.0), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, 0.0), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -0.0), -0.0);
+assert_return(() => $$.exports["min"](Infinity, 0.0), 0.0);
+assert_return(() => $$.exports["min"](-Infinity, -5e-324), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, 5e-324), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -5e-324), -5e-324);
+assert_return(() => $$.exports["min"](Infinity, 5e-324), 5e-324);
+assert_return(() => $$.exports["min"](-Infinity, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, 2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](Infinity, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["min"](-Infinity, -0.5), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, 0.5), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -0.5), -0.5);
+assert_return(() => $$.exports["min"](Infinity, 0.5), 0.5);
+assert_return(() => $$.exports["min"](-Infinity, -1.0), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, 1.0), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -1.0), -1.0);
+assert_return(() => $$.exports["min"](Infinity, 1.0), 1.0);
+assert_return(() => $$.exports["min"](-Infinity, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, 6.283185307179586), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["min"](Infinity, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["min"](-Infinity, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, 1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](Infinity, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["min"](-Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](-Infinity, Infinity), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["min"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_300"]());
+assert_return(() => $$.exports["assert_301"]());
+assert_return(() => $$.exports["assert_302"]());
+assert_return(() => $$.exports["assert_303"]());
+assert_return(() => $$.exports["assert_304"]());
+assert_return(() => $$.exports["assert_305"]());
+assert_return(() => $$.exports["assert_306"]());
+assert_return(() => $$.exports["assert_307"]());
+assert_return(() => $$.exports["assert_308"]());
+assert_return(() => $$.exports["assert_309"]());
+assert_return(() => $$.exports["assert_310"]());
+assert_return(() => $$.exports["assert_311"]());
+assert_return(() => $$.exports["assert_312"]());
+assert_return(() => $$.exports["assert_313"]());
+assert_return(() => $$.exports["assert_314"]());
+assert_return(() => $$.exports["assert_315"]());
+assert_return(() => $$.exports["assert_316"]());
+assert_return(() => $$.exports["assert_317"]());
+assert_return(() => $$.exports["assert_318"]());
+assert_return(() => $$.exports["assert_319"]());
+assert_return(() => $$.exports["assert_320"]());
+assert_return(() => $$.exports["assert_321"]());
+assert_return(() => $$.exports["assert_322"]());
+assert_return(() => $$.exports["assert_323"]());
+assert_return(() => $$.exports["assert_324"]());
+assert_return(() => $$.exports["assert_325"]());
+assert_return(() => $$.exports["assert_326"]());
+assert_return(() => $$.exports["assert_327"]());
+assert_return(() => $$.exports["assert_328"]());
+assert_return(() => $$.exports["assert_329"]());
+assert_return(() => $$.exports["assert_330"]());
+assert_return(() => $$.exports["assert_331"]());
+assert_return(() => $$.exports["assert_332"]());
+assert_return(() => $$.exports["assert_333"]());
+assert_return(() => $$.exports["assert_334"]());
+assert_return(() => $$.exports["assert_335"]());
+assert_return(() => $$.exports["assert_336"]());
+assert_return(() => $$.exports["assert_337"]());
+assert_return(() => $$.exports["assert_338"]());
+assert_return(() => $$.exports["assert_339"]());
+assert_return(() => $$.exports["max"](-0.0, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["max"](0.0, -0.0), 0.0);
+assert_return(() => $$.exports["max"](0.0, 0.0), 0.0);
+assert_return(() => $$.exports["max"](-0.0, -5e-324), -0.0);
+assert_return(() => $$.exports["max"](-0.0, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](0.0, -5e-324), 0.0);
+assert_return(() => $$.exports["max"](0.0, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](-0.0, -2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["max"](-0.0, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](0.0, -2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["max"](0.0, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-0.0, -0.5), -0.0);
+assert_return(() => $$.exports["max"](-0.0, 0.5), 0.5);
+assert_return(() => $$.exports["max"](0.0, -0.5), 0.0);
+assert_return(() => $$.exports["max"](0.0, 0.5), 0.5);
+assert_return(() => $$.exports["max"](-0.0, -1.0), -0.0);
+assert_return(() => $$.exports["max"](-0.0, 1.0), 1.0);
+assert_return(() => $$.exports["max"](0.0, -1.0), 0.0);
+assert_return(() => $$.exports["max"](0.0, 1.0), 1.0);
+assert_return(() => $$.exports["max"](-0.0, -6.283185307179586), -0.0);
+assert_return(() => $$.exports["max"](-0.0, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](0.0, -6.283185307179586), 0.0);
+assert_return(() => $$.exports["max"](0.0, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](-0.0, -1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["max"](-0.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](0.0, -1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["max"](0.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-0.0, -Infinity), -0.0);
+assert_return(() => $$.exports["max"](-0.0, Infinity), Infinity);
+assert_return(() => $$.exports["max"](0.0, -Infinity), 0.0);
+assert_return(() => $$.exports["max"](0.0, Infinity), Infinity);
+assert_return(() => $$.exports["assert_340"]());
+assert_return(() => $$.exports["assert_341"]());
+assert_return(() => $$.exports["assert_342"]());
+assert_return(() => $$.exports["assert_343"]());
+assert_return(() => $$.exports["max"](-5e-324, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-5e-324, 0.0), 0.0);
+assert_return(() => $$.exports["max"](5e-324, -0.0), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, 0.0), 5e-324);
+assert_return(() => $$.exports["max"](-5e-324, -5e-324), -5e-324);
+assert_return(() => $$.exports["max"](-5e-324, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, -5e-324), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](-5e-324, -2.2250738585072014e-308), -5e-324);
+assert_return(() => $$.exports["max"](-5e-324, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](5e-324, -2.2250738585072014e-308), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-5e-324, -0.5), -5e-324);
+assert_return(() => $$.exports["max"](-5e-324, 0.5), 0.5);
+assert_return(() => $$.exports["max"](5e-324, -0.5), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, 0.5), 0.5);
+assert_return(() => $$.exports["max"](-5e-324, -1.0), -5e-324);
+assert_return(() => $$.exports["max"](-5e-324, 1.0), 1.0);
+assert_return(() => $$.exports["max"](5e-324, -1.0), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, 1.0), 1.0);
+assert_return(() => $$.exports["max"](-5e-324, -6.283185307179586), -5e-324);
+assert_return(() => $$.exports["max"](-5e-324, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](5e-324, -6.283185307179586), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](-5e-324, -1.7976931348623157e+308), -5e-324);
+assert_return(() => $$.exports["max"](-5e-324, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](5e-324, -1.7976931348623157e+308), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-5e-324, -Infinity), -5e-324);
+assert_return(() => $$.exports["max"](-5e-324, Infinity), Infinity);
+assert_return(() => $$.exports["max"](5e-324, -Infinity), 5e-324);
+assert_return(() => $$.exports["max"](5e-324, Infinity), Infinity);
+assert_return(() => $$.exports["assert_344"]());
+assert_return(() => $$.exports["assert_345"]());
+assert_return(() => $$.exports["assert_346"]());
+assert_return(() => $$.exports["assert_347"]());
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, 0.0), 0.0);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, 0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -5e-324), -5e-324);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -5e-324), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, 5e-324), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -0.5), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, 0.5), 0.5);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -0.5), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, 0.5), 0.5);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, 1.0), 1.0);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, 1.0), 1.0);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -6.283185307179586), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -6.283185307179586), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -1.7976931348623157e+308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -1.7976931348623157e+308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, -Infinity), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-2.2250738585072014e-308, Infinity), Infinity);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, -Infinity), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](2.2250738585072014e-308, Infinity), Infinity);
+assert_return(() => $$.exports["assert_348"]());
+assert_return(() => $$.exports["assert_349"]());
+assert_return(() => $$.exports["assert_350"]());
+assert_return(() => $$.exports["assert_351"]());
+assert_return(() => $$.exports["max"](-0.5, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-0.5, 0.0), 0.0);
+assert_return(() => $$.exports["max"](0.5, -0.0), 0.5);
+assert_return(() => $$.exports["max"](0.5, 0.0), 0.5);
+assert_return(() => $$.exports["max"](-0.5, -5e-324), -5e-324);
+assert_return(() => $$.exports["max"](-0.5, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](0.5, -5e-324), 0.5);
+assert_return(() => $$.exports["max"](0.5, 5e-324), 0.5);
+assert_return(() => $$.exports["max"](-0.5, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-0.5, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](0.5, -2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["max"](0.5, 2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["max"](-0.5, -0.5), -0.5);
+assert_return(() => $$.exports["max"](-0.5, 0.5), 0.5);
+assert_return(() => $$.exports["max"](0.5, -0.5), 0.5);
+assert_return(() => $$.exports["max"](0.5, 0.5), 0.5);
+assert_return(() => $$.exports["max"](-0.5, -1.0), -0.5);
+assert_return(() => $$.exports["max"](-0.5, 1.0), 1.0);
+assert_return(() => $$.exports["max"](0.5, -1.0), 0.5);
+assert_return(() => $$.exports["max"](0.5, 1.0), 1.0);
+assert_return(() => $$.exports["max"](-0.5, -6.283185307179586), -0.5);
+assert_return(() => $$.exports["max"](-0.5, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](0.5, -6.283185307179586), 0.5);
+assert_return(() => $$.exports["max"](0.5, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](-0.5, -1.7976931348623157e+308), -0.5);
+assert_return(() => $$.exports["max"](-0.5, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](0.5, -1.7976931348623157e+308), 0.5);
+assert_return(() => $$.exports["max"](0.5, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-0.5, -Infinity), -0.5);
+assert_return(() => $$.exports["max"](-0.5, Infinity), Infinity);
+assert_return(() => $$.exports["max"](0.5, -Infinity), 0.5);
+assert_return(() => $$.exports["max"](0.5, Infinity), Infinity);
+assert_return(() => $$.exports["assert_352"]());
+assert_return(() => $$.exports["assert_353"]());
+assert_return(() => $$.exports["assert_354"]());
+assert_return(() => $$.exports["assert_355"]());
+assert_return(() => $$.exports["max"](-1.0, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-1.0, 0.0), 0.0);
+assert_return(() => $$.exports["max"](1.0, -0.0), 1.0);
+assert_return(() => $$.exports["max"](1.0, 0.0), 1.0);
+assert_return(() => $$.exports["max"](-1.0, -5e-324), -5e-324);
+assert_return(() => $$.exports["max"](-1.0, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](1.0, -5e-324), 1.0);
+assert_return(() => $$.exports["max"](1.0, 5e-324), 1.0);
+assert_return(() => $$.exports["max"](-1.0, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-1.0, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](1.0, -2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["max"](1.0, 2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["max"](-1.0, -0.5), -0.5);
+assert_return(() => $$.exports["max"](-1.0, 0.5), 0.5);
+assert_return(() => $$.exports["max"](1.0, -0.5), 1.0);
+assert_return(() => $$.exports["max"](1.0, 0.5), 1.0);
+assert_return(() => $$.exports["max"](-1.0, -1.0), -1.0);
+assert_return(() => $$.exports["max"](-1.0, 1.0), 1.0);
+assert_return(() => $$.exports["max"](1.0, -1.0), 1.0);
+assert_return(() => $$.exports["max"](1.0, 1.0), 1.0);
+assert_return(() => $$.exports["max"](-1.0, -6.283185307179586), -1.0);
+assert_return(() => $$.exports["max"](-1.0, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](1.0, -6.283185307179586), 1.0);
+assert_return(() => $$.exports["max"](1.0, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](-1.0, -1.7976931348623157e+308), -1.0);
+assert_return(() => $$.exports["max"](-1.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.0, -1.7976931348623157e+308), 1.0);
+assert_return(() => $$.exports["max"](1.0, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.0, -Infinity), -1.0);
+assert_return(() => $$.exports["max"](-1.0, Infinity), Infinity);
+assert_return(() => $$.exports["max"](1.0, -Infinity), 1.0);
+assert_return(() => $$.exports["max"](1.0, Infinity), Infinity);
+assert_return(() => $$.exports["assert_356"]());
+assert_return(() => $$.exports["assert_357"]());
+assert_return(() => $$.exports["assert_358"]());
+assert_return(() => $$.exports["assert_359"]());
+assert_return(() => $$.exports["max"](-6.283185307179586, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-6.283185307179586, 0.0), 0.0);
+assert_return(() => $$.exports["max"](6.283185307179586, -0.0), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, 0.0), 6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, -5e-324), -5e-324);
+assert_return(() => $$.exports["max"](-6.283185307179586, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](6.283185307179586, -5e-324), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, 5e-324), 6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-6.283185307179586, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](6.283185307179586, -2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, 2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, -0.5), -0.5);
+assert_return(() => $$.exports["max"](-6.283185307179586, 0.5), 0.5);
+assert_return(() => $$.exports["max"](6.283185307179586, -0.5), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, 0.5), 6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, -1.0), -1.0);
+assert_return(() => $$.exports["max"](-6.283185307179586, 1.0), 1.0);
+assert_return(() => $$.exports["max"](6.283185307179586, -1.0), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, 1.0), 6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, -6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, -1.7976931348623157e+308), -6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](6.283185307179586, -1.7976931348623157e+308), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-6.283185307179586, -Infinity), -6.283185307179586);
+assert_return(() => $$.exports["max"](-6.283185307179586, Infinity), Infinity);
+assert_return(() => $$.exports["max"](6.283185307179586, -Infinity), 6.283185307179586);
+assert_return(() => $$.exports["max"](6.283185307179586, Infinity), Infinity);
+assert_return(() => $$.exports["assert_360"]());
+assert_return(() => $$.exports["assert_361"]());
+assert_return(() => $$.exports["assert_362"]());
+assert_return(() => $$.exports["assert_363"]());
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, 0.0), 0.0);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, 0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -5e-324), -5e-324);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, 5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, 2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -0.5), -0.5);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, 0.5), 0.5);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, 0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -1.0), -1.0);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, 1.0), 1.0);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, 1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, 6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, -Infinity), -1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-1.7976931348623157e+308, Infinity), Infinity);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, -Infinity), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](1.7976931348623157e+308, Infinity), Infinity);
+assert_return(() => $$.exports["assert_364"]());
+assert_return(() => $$.exports["assert_365"]());
+assert_return(() => $$.exports["assert_366"]());
+assert_return(() => $$.exports["assert_367"]());
+assert_return(() => $$.exports["max"](-Infinity, -0.0), -0.0);
+assert_return(() => $$.exports["max"](-Infinity, 0.0), 0.0);
+assert_return(() => $$.exports["max"](Infinity, -0.0), Infinity);
+assert_return(() => $$.exports["max"](Infinity, 0.0), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -5e-324), -5e-324);
+assert_return(() => $$.exports["max"](-Infinity, 5e-324), 5e-324);
+assert_return(() => $$.exports["max"](Infinity, -5e-324), Infinity);
+assert_return(() => $$.exports["max"](Infinity, 5e-324), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](-Infinity, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["max"](Infinity, -2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["max"](Infinity, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -0.5), -0.5);
+assert_return(() => $$.exports["max"](-Infinity, 0.5), 0.5);
+assert_return(() => $$.exports["max"](Infinity, -0.5), Infinity);
+assert_return(() => $$.exports["max"](Infinity, 0.5), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -1.0), -1.0);
+assert_return(() => $$.exports["max"](-Infinity, 1.0), 1.0);
+assert_return(() => $$.exports["max"](Infinity, -1.0), Infinity);
+assert_return(() => $$.exports["max"](Infinity, 1.0), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["max"](-Infinity, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["max"](Infinity, -6.283185307179586), Infinity);
+assert_return(() => $$.exports["max"](Infinity, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](-Infinity, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["max"](Infinity, -1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["max"](Infinity, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["max"](-Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["max"](-Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["max"](Infinity, -Infinity), Infinity);
+assert_return(() => $$.exports["max"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_368"]());
+assert_return(() => $$.exports["assert_369"]());
+assert_return(() => $$.exports["assert_370"]());
+assert_return(() => $$.exports["assert_371"]());
+assert_return(() => $$.exports["assert_372"]());
+assert_return(() => $$.exports["assert_373"]());
+assert_return(() => $$.exports["assert_374"]());
+assert_return(() => $$.exports["assert_375"]());
+assert_return(() => $$.exports["assert_376"]());
+assert_return(() => $$.exports["assert_377"]());
+assert_return(() => $$.exports["assert_378"]());
+assert_return(() => $$.exports["assert_379"]());
+assert_return(() => $$.exports["assert_380"]());
+assert_return(() => $$.exports["assert_381"]());
+assert_return(() => $$.exports["assert_382"]());
+assert_return(() => $$.exports["assert_383"]());
+assert_return(() => $$.exports["assert_384"]());
+assert_return(() => $$.exports["assert_385"]());
+assert_return(() => $$.exports["assert_386"]());
+assert_return(() => $$.exports["assert_387"]());
+assert_return(() => $$.exports["assert_388"]());
+assert_return(() => $$.exports["assert_389"]());
+assert_return(() => $$.exports["assert_390"]());
+assert_return(() => $$.exports["assert_391"]());
+assert_return(() => $$.exports["assert_392"]());
+assert_return(() => $$.exports["assert_393"]());
+assert_return(() => $$.exports["assert_394"]());
+assert_return(() => $$.exports["assert_395"]());
+assert_return(() => $$.exports["assert_396"]());
+assert_return(() => $$.exports["assert_397"]());
+assert_return(() => $$.exports["assert_398"]());
+assert_return(() => $$.exports["assert_399"]());
+assert_return(() => $$.exports["assert_400"]());
+assert_return(() => $$.exports["assert_401"]());
+assert_return(() => $$.exports["assert_402"]());
+assert_return(() => $$.exports["assert_403"]());
+assert_return(() => $$.exports["assert_404"]());
+assert_return(() => $$.exports["assert_405"]());
+assert_return(() => $$.exports["assert_406"]());
+assert_return(() => $$.exports["assert_407"]());
+assert_return(() => $$.exports["copysign"](-0.0, -0.0), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, 0.0), 0.0);
+assert_return(() => $$.exports["copysign"](-0.0, -5e-324), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, 5e-324), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -5e-324), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, 5e-324), 0.0);
+assert_return(() => $$.exports["copysign"](-0.0, -2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, 2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["copysign"](-0.0, -0.5), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, 0.5), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -0.5), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, 0.5), 0.0);
+assert_return(() => $$.exports["copysign"](-0.0, -1.0), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, 1.0), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -1.0), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, 1.0), 0.0);
+assert_return(() => $$.exports["copysign"](-0.0, -6.283185307179586), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -6.283185307179586), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, 6.283185307179586), 0.0);
+assert_return(() => $$.exports["copysign"](-0.0, -1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -1.7976931348623157e+308), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["copysign"](-0.0, -Infinity), -0.0);
+assert_return(() => $$.exports["copysign"](-0.0, Infinity), 0.0);
+assert_return(() => $$.exports["copysign"](0.0, -Infinity), -0.0);
+assert_return(() => $$.exports["copysign"](0.0, Infinity), 0.0);
+assert_return(() => $$.exports["assert_408"]());
+assert_return(() => $$.exports["assert_409"]());
+assert_return(() => $$.exports["assert_410"]());
+assert_return(() => $$.exports["assert_411"]());
+assert_return(() => $$.exports["copysign"](-5e-324, -0.0), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, 0.0), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -0.0), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, 0.0), 5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, -5e-324), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, 5e-324), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -5e-324), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, 5e-324), 5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, -2.2250738585072014e-308), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, 2.2250738585072014e-308), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -2.2250738585072014e-308), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, 2.2250738585072014e-308), 5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, -0.5), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, 0.5), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -0.5), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, 0.5), 5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, -1.0), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, 1.0), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -1.0), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, 1.0), 5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, -6.283185307179586), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, 6.283185307179586), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -6.283185307179586), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, 6.283185307179586), 5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, -1.7976931348623157e+308), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, 1.7976931348623157e+308), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -1.7976931348623157e+308), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, 1.7976931348623157e+308), 5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, -Infinity), -5e-324);
+assert_return(() => $$.exports["copysign"](-5e-324, Infinity), 5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, -Infinity), -5e-324);
+assert_return(() => $$.exports["copysign"](5e-324, Infinity), 5e-324);
+assert_return(() => $$.exports["assert_412"]());
+assert_return(() => $$.exports["assert_413"]());
+assert_return(() => $$.exports["assert_414"]());
+assert_return(() => $$.exports["assert_415"]());
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, 0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -0.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, 0.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -5e-324), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, 5e-324), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -5e-324), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, 5e-324), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, 2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -0.5), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, 0.5), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -0.5), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, 0.5), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, 1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -1.0), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, 1.0), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -6.283185307179586), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, 6.283185307179586), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -6.283185307179586), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, 6.283185307179586), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -1.7976931348623157e+308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, 1.7976931348623157e+308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -1.7976931348623157e+308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, 1.7976931348623157e+308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, -Infinity), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](-2.2250738585072014e-308, Infinity), 2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, -Infinity), -2.2250738585072014e-308);
+assert_return(() => $$.exports["copysign"](2.2250738585072014e-308, Infinity), 2.2250738585072014e-308);
+assert_return(() => $$.exports["assert_416"]());
+assert_return(() => $$.exports["assert_417"]());
+assert_return(() => $$.exports["assert_418"]());
+assert_return(() => $$.exports["assert_419"]());
+assert_return(() => $$.exports["copysign"](-0.5, -0.0), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, 0.0), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -0.0), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, 0.0), 0.5);
+assert_return(() => $$.exports["copysign"](-0.5, -5e-324), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, 5e-324), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -5e-324), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, 5e-324), 0.5);
+assert_return(() => $$.exports["copysign"](-0.5, -2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, 2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -2.2250738585072014e-308), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, 2.2250738585072014e-308), 0.5);
+assert_return(() => $$.exports["copysign"](-0.5, -0.5), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, 0.5), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -0.5), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, 0.5), 0.5);
+assert_return(() => $$.exports["copysign"](-0.5, -1.0), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, 1.0), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -1.0), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, 1.0), 0.5);
+assert_return(() => $$.exports["copysign"](-0.5, -6.283185307179586), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, 6.283185307179586), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -6.283185307179586), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, 6.283185307179586), 0.5);
+assert_return(() => $$.exports["copysign"](-0.5, -1.7976931348623157e+308), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, 1.7976931348623157e+308), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -1.7976931348623157e+308), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, 1.7976931348623157e+308), 0.5);
+assert_return(() => $$.exports["copysign"](-0.5, -Infinity), -0.5);
+assert_return(() => $$.exports["copysign"](-0.5, Infinity), 0.5);
+assert_return(() => $$.exports["copysign"](0.5, -Infinity), -0.5);
+assert_return(() => $$.exports["copysign"](0.5, Infinity), 0.5);
+assert_return(() => $$.exports["assert_420"]());
+assert_return(() => $$.exports["assert_421"]());
+assert_return(() => $$.exports["assert_422"]());
+assert_return(() => $$.exports["assert_423"]());
+assert_return(() => $$.exports["copysign"](-1.0, -0.0), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, 0.0), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -0.0), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, 0.0), 1.0);
+assert_return(() => $$.exports["copysign"](-1.0, -5e-324), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, 5e-324), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -5e-324), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, 5e-324), 1.0);
+assert_return(() => $$.exports["copysign"](-1.0, -2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, 2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, 2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["copysign"](-1.0, -0.5), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, 0.5), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -0.5), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, 0.5), 1.0);
+assert_return(() => $$.exports["copysign"](-1.0, -1.0), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, 1.0), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -1.0), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, 1.0), 1.0);
+assert_return(() => $$.exports["copysign"](-1.0, -6.283185307179586), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, 6.283185307179586), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -6.283185307179586), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, 6.283185307179586), 1.0);
+assert_return(() => $$.exports["copysign"](-1.0, -1.7976931348623157e+308), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, 1.7976931348623157e+308), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -1.7976931348623157e+308), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, 1.7976931348623157e+308), 1.0);
+assert_return(() => $$.exports["copysign"](-1.0, -Infinity), -1.0);
+assert_return(() => $$.exports["copysign"](-1.0, Infinity), 1.0);
+assert_return(() => $$.exports["copysign"](1.0, -Infinity), -1.0);
+assert_return(() => $$.exports["copysign"](1.0, Infinity), 1.0);
+assert_return(() => $$.exports["assert_424"]());
+assert_return(() => $$.exports["assert_425"]());
+assert_return(() => $$.exports["assert_426"]());
+assert_return(() => $$.exports["assert_427"]());
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -0.0), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, 0.0), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -0.0), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, 0.0), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -5e-324), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, 5e-324), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -5e-324), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, 5e-324), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, 2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -2.2250738585072014e-308), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, 2.2250738585072014e-308), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -0.5), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, 0.5), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -0.5), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, 0.5), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -1.0), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, 1.0), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -1.0), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, 1.0), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, 6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -1.7976931348623157e+308), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, 1.7976931348623157e+308), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -1.7976931348623157e+308), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, 1.7976931348623157e+308), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, -Infinity), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](-6.283185307179586, Infinity), 6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, -Infinity), -6.283185307179586);
+assert_return(() => $$.exports["copysign"](6.283185307179586, Infinity), 6.283185307179586);
+assert_return(() => $$.exports["assert_428"]());
+assert_return(() => $$.exports["assert_429"]());
+assert_return(() => $$.exports["assert_430"]());
+assert_return(() => $$.exports["assert_431"]());
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, 0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -0.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, 0.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, 5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -5e-324), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, 5e-324), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, 2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -2.2250738585072014e-308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, 2.2250738585072014e-308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, 0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -0.5), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, 0.5), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, 1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -1.0), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, 1.0), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, 6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -6.283185307179586), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, 6.283185307179586), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, 1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, -Infinity), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](-1.7976931348623157e+308, Infinity), 1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, -Infinity), -1.7976931348623157e+308);
+assert_return(() => $$.exports["copysign"](1.7976931348623157e+308, Infinity), 1.7976931348623157e+308);
+assert_return(() => $$.exports["assert_432"]());
+assert_return(() => $$.exports["assert_433"]());
+assert_return(() => $$.exports["assert_434"]());
+assert_return(() => $$.exports["assert_435"]());
+assert_return(() => $$.exports["copysign"](-Infinity, -0.0), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, 0.0), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -0.0), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, 0.0), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -5e-324), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, 5e-324), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -5e-324), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, 5e-324), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -2.2250738585072014e-308), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, 2.2250738585072014e-308), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -0.5), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, 0.5), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -0.5), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, 0.5), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -1.0), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, 1.0), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -1.0), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, 1.0), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -6.283185307179586), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, 6.283185307179586), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -1.7976931348623157e+308), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, 1.7976931348623157e+308), Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["copysign"](-Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, -Infinity), -Infinity);
+assert_return(() => $$.exports["copysign"](Infinity, Infinity), Infinity);
+assert_return(() => $$.exports["assert_436"]());
+assert_return(() => $$.exports["assert_437"]());
+assert_return(() => $$.exports["assert_438"]());
+assert_return(() => $$.exports["assert_439"]());
+assert_return(() => $$.exports["assert_440"]());
+assert_return(() => $$.exports["assert_441"]());
+assert_return(() => $$.exports["assert_442"]());
+assert_return(() => $$.exports["assert_443"]());
+assert_return(() => $$.exports["assert_444"]());
+assert_return(() => $$.exports["assert_445"]());
+assert_return(() => $$.exports["assert_446"]());
+assert_return(() => $$.exports["assert_447"]());
+assert_return(() => $$.exports["assert_448"]());
+assert_return(() => $$.exports["assert_449"]());
+assert_return(() => $$.exports["assert_450"]());
+assert_return(() => $$.exports["assert_451"]());
+assert_return(() => $$.exports["assert_452"]());
+assert_return(() => $$.exports["assert_453"]());
+assert_return(() => $$.exports["assert_454"]());
+assert_return(() => $$.exports["assert_455"]());
+assert_return(() => $$.exports["assert_456"]());
+assert_return(() => $$.exports["assert_457"]());
+assert_return(() => $$.exports["assert_458"]());
+assert_return(() => $$.exports["assert_459"]());
+assert_return(() => $$.exports["assert_460"]());
+assert_return(() => $$.exports["assert_461"]());
+assert_return(() => $$.exports["assert_462"]());
+assert_return(() => $$.exports["assert_463"]());
+assert_return(() => $$.exports["assert_464"]());
+assert_return(() => $$.exports["assert_465"]());
+assert_return(() => $$.exports["assert_466"]());
+assert_return(() => $$.exports["assert_467"]());
+assert_return(() => $$.exports["assert_468"]());
+assert_return(() => $$.exports["assert_469"]());
+assert_return(() => $$.exports["assert_470"]());
+assert_return(() => $$.exports["assert_471"]());
+assert_return(() => $$.exports["assert_472"]());
+assert_return(() => $$.exports["assert_473"]());
+assert_return(() => $$.exports["assert_474"]());
+assert_return(() => $$.exports["assert_475"]());
+assert_return(() => $$.exports["sqrt"](-0.0), -0.0);
+assert_return(() => $$.exports["sqrt"](0.0), 0.0);
+assert_return_nan(() => $$.exports["sqrt"](-5e-324));
+assert_return(() => $$.exports["sqrt"](5e-324), 2.2227587494850775e-162);
+assert_return_nan(() => $$.exports["sqrt"](-2.2250738585072014e-308));
+assert_return(() => $$.exports["sqrt"](2.2250738585072014e-308), 1.4916681462400413e-154);
+assert_return_nan(() => $$.exports["sqrt"](-0.5));
+assert_return(() => $$.exports["sqrt"](0.5), 0.7071067811865476);
+assert_return_nan(() => $$.exports["sqrt"](-1.0));
+assert_return(() => $$.exports["sqrt"](1.0), 1.0);
+assert_return_nan(() => $$.exports["sqrt"](-6.283185307179586));
+assert_return(() => $$.exports["sqrt"](6.283185307179586), 2.5066282746310002);
+assert_return_nan(() => $$.exports["sqrt"](-1.7976931348623157e+308));
+assert_return(() => $$.exports["sqrt"](1.7976931348623157e+308), 1.3407807929942596e+154);
+assert_return_nan(() => $$.exports["sqrt"](-Infinity));
+assert_return(() => $$.exports["sqrt"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_476"]());
+assert_return(() => $$.exports["assert_477"]());
+assert_return(() => $$.exports["floor"](-0.0), -0.0);
+assert_return(() => $$.exports["floor"](0.0), 0.0);
+assert_return(() => $$.exports["floor"](-5e-324), -1.0);
+assert_return(() => $$.exports["floor"](5e-324), 0.0);
+assert_return(() => $$.exports["floor"](-2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["floor"](2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["floor"](-0.5), -1.0);
+assert_return(() => $$.exports["floor"](0.5), 0.0);
+assert_return(() => $$.exports["floor"](-1.0), -1.0);
+assert_return(() => $$.exports["floor"](1.0), 1.0);
+assert_return(() => $$.exports["floor"](-6.283185307179586), -7.0);
+assert_return(() => $$.exports["floor"](6.283185307179586), 6.0);
+assert_return(() => $$.exports["floor"](-1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["floor"](1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["floor"](-Infinity), -Infinity);
+assert_return(() => $$.exports["floor"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_478"]());
+assert_return(() => $$.exports["assert_479"]());
+assert_return(() => $$.exports["ceil"](-0.0), -0.0);
+assert_return(() => $$.exports["ceil"](0.0), 0.0);
+assert_return(() => $$.exports["ceil"](-5e-324), -0.0);
+assert_return(() => $$.exports["ceil"](5e-324), 1.0);
+assert_return(() => $$.exports["ceil"](-2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["ceil"](2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["ceil"](-0.5), -0.0);
+assert_return(() => $$.exports["ceil"](0.5), 1.0);
+assert_return(() => $$.exports["ceil"](-1.0), -1.0);
+assert_return(() => $$.exports["ceil"](1.0), 1.0);
+assert_return(() => $$.exports["ceil"](-6.283185307179586), -6.0);
+assert_return(() => $$.exports["ceil"](6.283185307179586), 7.0);
+assert_return(() => $$.exports["ceil"](-1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["ceil"](1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["ceil"](-Infinity), -Infinity);
+assert_return(() => $$.exports["ceil"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_480"]());
+assert_return(() => $$.exports["assert_481"]());
+assert_return(() => $$.exports["trunc"](-0.0), -0.0);
+assert_return(() => $$.exports["trunc"](0.0), 0.0);
+assert_return(() => $$.exports["trunc"](-5e-324), -0.0);
+assert_return(() => $$.exports["trunc"](5e-324), 0.0);
+assert_return(() => $$.exports["trunc"](-2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["trunc"](2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["trunc"](-0.5), -0.0);
+assert_return(() => $$.exports["trunc"](0.5), 0.0);
+assert_return(() => $$.exports["trunc"](-1.0), -1.0);
+assert_return(() => $$.exports["trunc"](1.0), 1.0);
+assert_return(() => $$.exports["trunc"](-6.283185307179586), -6.0);
+assert_return(() => $$.exports["trunc"](6.283185307179586), 6.0);
+assert_return(() => $$.exports["trunc"](-1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["trunc"](1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["trunc"](-Infinity), -Infinity);
+assert_return(() => $$.exports["trunc"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_482"]());
+assert_return(() => $$.exports["assert_483"]());
+assert_return(() => $$.exports["nearest"](-0.0), -0.0);
+assert_return(() => $$.exports["nearest"](0.0), 0.0);
+assert_return(() => $$.exports["nearest"](-5e-324), -0.0);
+assert_return(() => $$.exports["nearest"](5e-324), 0.0);
+assert_return(() => $$.exports["nearest"](-2.2250738585072014e-308), -0.0);
+assert_return(() => $$.exports["nearest"](2.2250738585072014e-308), 0.0);
+assert_return(() => $$.exports["nearest"](-0.5), -0.0);
+assert_return(() => $$.exports["nearest"](0.5), 0.0);
+assert_return(() => $$.exports["nearest"](-1.0), -1.0);
+assert_return(() => $$.exports["nearest"](1.0), 1.0);
+assert_return(() => $$.exports["nearest"](-6.283185307179586), -6.0);
+assert_return(() => $$.exports["nearest"](6.283185307179586), 6.0);
+assert_return(() => $$.exports["nearest"](-1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["nearest"](1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["nearest"](-Infinity), -Infinity);
+assert_return(() => $$.exports["nearest"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_484"]());
+assert_return(() => $$.exports["assert_485"]());
+assert_return(() => $$.exports["abs"](-0.0), 0.0);
+assert_return(() => $$.exports["abs"](0.0), 0.0);
+assert_return(() => $$.exports["abs"](-5e-324), 5e-324);
+assert_return(() => $$.exports["abs"](5e-324), 5e-324);
+assert_return(() => $$.exports["abs"](-2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["abs"](2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["abs"](-0.5), 0.5);
+assert_return(() => $$.exports["abs"](0.5), 0.5);
+assert_return(() => $$.exports["abs"](-1.0), 1.0);
+assert_return(() => $$.exports["abs"](1.0), 1.0);
+assert_return(() => $$.exports["abs"](-6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["abs"](6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["abs"](-1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["abs"](1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["abs"](-Infinity), Infinity);
+assert_return(() => $$.exports["abs"](Infinity), Infinity);
+assert_return(() => $$.exports["assert_486"]());
+assert_return(() => $$.exports["assert_487"]());
+assert_return(() => $$.exports["neg"](-0.0), 0.0);
+assert_return(() => $$.exports["neg"](0.0), -0.0);
+assert_return(() => $$.exports["neg"](-5e-324), 5e-324);
+assert_return(() => $$.exports["neg"](5e-324), -5e-324);
+assert_return(() => $$.exports["neg"](-2.2250738585072014e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["neg"](2.2250738585072014e-308), -2.2250738585072014e-308);
+assert_return(() => $$.exports["neg"](-0.5), 0.5);
+assert_return(() => $$.exports["neg"](0.5), -0.5);
+assert_return(() => $$.exports["neg"](-1.0), 1.0);
+assert_return(() => $$.exports["neg"](1.0), -1.0);
+assert_return(() => $$.exports["neg"](-6.283185307179586), 6.283185307179586);
+assert_return(() => $$.exports["neg"](6.283185307179586), -6.283185307179586);
+assert_return(() => $$.exports["neg"](-1.7976931348623157e+308), 1.7976931348623157e+308);
+assert_return(() => $$.exports["neg"](1.7976931348623157e+308), -1.7976931348623157e+308);
+assert_return(() => $$.exports["neg"](-Infinity), Infinity);
+assert_return(() => $$.exports["neg"](Infinity), -Infinity);
+assert_return(() => $$.exports["assert_488"]());
+assert_return(() => $$.exports["assert_489"]());
diff --git a/JSTests/wasm/spec-tests/f64_cmp.wast.js b/JSTests/wasm/spec-tests/f64_cmp.wast.js
new file mode 100644
index 0000000..086ab64
--- /dev/null
+++ b/JSTests/wasm/spec-tests/f64_cmp.wast.js
@@ -0,0 +1,2039 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0a\x02\x60\x02\x7c\x7c\x01\x7f\x60\x00\x00\x03\xa0\x03\x9e\x03\x00\x00\x00\x00\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x07\x88\x2b\x9e\x03\x02\x65\x71\x00\x00\x02\x6e\x65\x00\x01\x02\x6c\x74\x00\x02\x02\x6c\x65\x00\x03\x02\x67\x74\x00\x04\x02\x67\x65\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x0f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x10\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x11\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x12\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x13\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x14\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x15\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x16\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x17\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x18\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x19\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x1a\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x1b\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x1c\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x1d\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x1e\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x1f\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x20\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x21\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x22\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x23\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x24\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x25\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x39\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x30\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x31\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x32\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x33\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x34\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x35\x00\x3d\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x36\x00\x3e\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x37\x00\x3f\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x38\x00\x40\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x39\x00\x41\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x30\x00\x42\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x31\x00\x43\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x32\x00\x44\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x33\x00\x45\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x34\x00\x46\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x35\x00\x47\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x36\x00\x48\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x37\x00\x49\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x38\x00\x4a\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x39\x00\x4b\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x30\x00\x4c\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x31\x00\x4d\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x32\x00\x4e\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x33\x00\x4f\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x34\x00\x50\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x35\x00\x51\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x36\x00\x52\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x37\x00\x53\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x38\x00\x54\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x39\x00\x55\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x30\x00\x56\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x31\x00\x57\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x32\x00\x58\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x33\x00\x59\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x34\x00\x5a\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x35\x00\x5b\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x36\x00\x5c\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x37\x00\x5d\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x38\x00\x5e\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x39\x00\x5f\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x30\x00\x60\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x31\x00\x61\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x32\x00\x62\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x33\x00\x63\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x34\x00\x64\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x35\x00\x65\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x36\x00\x66\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x37\x00\x67\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x38\x00\x68\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x39\x00\x69\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x30\x00\x6a\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x31\x00\x6b\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x32\x00\x6c\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x33\x00\x6d\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x34\x00\x6e\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x35\x00\x6f\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x36\x00\x70\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x37\x00\x71\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x38\x00\x72\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x39\x00\x73\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x30\x00\x74\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x31\x00\x75\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x32\x00\x76\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x33\x00\x77\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x34\x00\x78\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x35\x00\x79\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x36\x00\x7a\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x37\x00\x7b\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x38\x00\x7c\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x39\x00\x7d\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x30\x00\x7e\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x31\x00\x7f\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x32\x00\x80\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x33\x00\x81\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x34\x00\x82\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x35\x00\x83\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x36\x00\x84\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x37\x00\x85\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x38\x00\x86\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x39\x00\x87\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x30\x00\x88\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x31\x00\x89\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x32\x00\x8a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x33\x00\x8b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x34\x00\x8c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x35\x00\x8d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x36\x00\x8e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x37\x00\x8f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x38\x00\x90\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x39\x00\x91\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x30\x00\x92\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x31\x00\x93\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x32\x00\x94\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x33\x00\x95\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x34\x00\x96\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x35\x00\x97\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x36\x00\x98\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x37\x00\x99\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x38\x00\x9a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x39\x00\x9b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x30\x00\x9c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x31\x00\x9d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x32\x00\x9e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x33\x00\x9f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x34\x00\xa0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x35\x00\xa1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x36\x00\xa2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x37\x00\xa3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x38\x00\xa4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x39\x00\xa5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x30\x00\xa6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x31\x00\xa7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x32\x00\xa8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x33\x00\xa9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x34\x00\xaa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x35\x00\xab\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x36\x00\xac\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x37\x00\xad\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x38\x00\xae\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x39\x00\xaf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x30\x00\xb0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x31\x00\xb1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x32\x00\xb2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x33\x00\xb3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x34\x00\xb4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x35\x00\xb5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x36\x00\xb6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x37\x00\xb7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x38\x00\xb8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x39\x00\xb9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x30\x00\xba\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x31\x00\xbb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x32\x00\xbc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x33\x00\xbd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x34\x00\xbe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x35\x00\xbf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x36\x00\xc0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x37\x00\xc1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x38\x00\xc2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x39\x00\xc3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x30\x00\xc4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x31\x00\xc5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x32\x00\xc6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x33\x00\xc7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x34\x00\xc8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x35\x00\xc9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x36\x00\xca\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x37\x00\xcb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x38\x00\xcc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x39\x00\xcd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x30\x00\xce\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x31\x00\xcf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x32\x00\xd0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x33\x00\xd1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x34\x00\xd2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x35\x00\xd3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x36\x00\xd4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x37\x00\xd5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x38\x00\xd6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x39\x00\xd7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x30\x00\xd8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x31\x00\xd9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x32\x00\xda\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x33\x00\xdb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x34\x00\xdc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x35\x00\xdd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x36\x00\xde\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x37\x00\xdf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x38\x00\xe0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x39\x00\xe1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x30\x00\xe2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x31\x00\xe3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x32\x00\xe4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x33\x00\xe5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x34\x00\xe6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x35\x00\xe7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x36\x00\xe8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x37\x00\xe9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x38\x00\xea\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x39\x00\xeb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x30\x00\xec\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x31\x00\xed\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x32\x00\xee\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x33\x00\xef\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x34\x00\xf0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x35\x00\xf1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x36\x00\xf2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x37\x00\xf3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x38\x00\xf4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x39\x00\xf5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x30\x00\xf6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x31\x00\xf7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x32\x00\xf8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x33\x00\xf9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x34\x00\xfa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x35\x00\xfb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x36\x00\xfc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x37\x00\xfd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x38\x00\xfe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x39\x00\xff\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x30\x00\x80\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x31\x00\x81\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x32\x00\x82\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x33\x00\x83\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x34\x00\x84\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x35\x00\x85\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x36\x00\x86\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x37\x00\x87\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x38\x00\x88\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x39\x00\x89\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x30\x00\x8a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x31\x00\x8b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x32\x00\x8c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x33\x00\x8d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x34\x00\x8e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x35\x00\x8f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x36\x00\x90\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x37\x00\x91\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x38\x00\x92\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x39\x00\x93\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x30\x00\x94\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x31\x00\x95\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x32\x00\x96\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x33\x00\x97\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x34\x00\x98\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x35\x00\x99\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x36\x00\x9a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x37\x00\x9b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x38\x00\x9c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x39\x00\x9d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x30\x00\x9e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x31\x00\x9f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x32\x00\xa0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x33\x00\xa1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x34\x00\xa2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x35\x00\xa3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x36\x00\xa4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x37\x00\xa5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x38\x00\xa6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x39\x00\xa7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x30\x00\xa8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x31\x00\xa9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x32\x00\xaa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x33\x00\xab\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x34\x00\xac\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x35\x00\xad\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x36\x00\xae\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x37\x00\xaf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x38\x00\xb0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x39\x00\xb1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x30\x00\xb2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x31\x00\xb3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x32\x00\xb4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x33\x00\xb5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x34\x00\xb6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x35\x00\xb7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x36\x00\xb8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x37\x00\xb9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x38\x00\xba\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x39\x00\xbb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x30\x00\xbc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x31\x00\xbd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x32\x00\xbe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x33\x00\xbf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x34\x00\xc0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x35\x00\xc1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x36\x00\xc2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x37\x00\xc3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x38\x00\xc4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x39\x00\xc5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x30\x00\xc6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x31\x00\xc7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x32\x00\xc8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x33\x00\xc9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x34\x00\xca\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x35\x00\xcb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x36\x00\xcc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x37\x00\xcd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x38\x00\xce\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x39\x00\xcf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x30\x00\xd0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x31\x00\xd1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x32\x00\xd2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x33\x00\xd3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x34\x00\xd4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x35\x00\xd5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x36\x00\xd6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x37\x00\xd7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x38\x00\xd8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x39\x00\xd9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x30\x00\xda\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x31\x00\xdb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x32\x00\xdc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x33\x00\xdd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x34\x00\xde\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x35\x00\xdf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x36\x00\xe0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x37\x00\xe1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x38\x00\xe2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x39\x00\xe3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x30\x00\xe4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x31\x00\xe5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x32\x00\xe6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x33\x00\xe7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x34\x00\xe8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x35\x00\xe9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x36\x00\xea\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x37\x00\xeb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x38\x00\xec\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x39\x00\xed\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x30\x00\xee\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x31\x00\xef\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x32\x00\xf0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x33\x00\xf1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x34\x00\xf2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x35\x00\xf3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x36\x00\xf4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x37\x00\xf5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x38\x00\xf6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x39\x00\xf7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x30\x00\xf8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x31\x00\xf9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x32\x00\xfa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x33\x00\xfb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x34\x00\xfc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x35\x00\xfd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x36\x00\xfe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x37\x00\xff\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x38\x00\x80\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x39\x00\x81\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x30\x00\x82\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x31\x00\x83\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x32\x00\x84\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x33\x00\x85\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x34\x00\x86\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x35\x00\x87\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x36\x00\x88\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x37\x00\x89\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x38\x00\x8a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x39\x00\x8b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x30\x00\x8c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x31\x00\x8d\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x32\x00\x8e\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x33\x00\x8f\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x34\x00\x90\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x35\x00\x91\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x36\x00\x92\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x37\x00\x93\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x38\x00\x94\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x39\x00\x95\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x30\x00\x96\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x31\x00\x97\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x32\x00\x98\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x33\x00\x99\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x34\x00\x9a\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x35\x00\x9b\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x36\x00\x9c\x03\x0a\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x37\x00\x9d\x03\x0a\xe2\x6c\x9e\x03\x07\x00\x20\x00\x20\x01\x61\x0b\x07\x00\x20\x00\x20\x01\x62\x0b\x07\x00\x20\x00\x20\x01\x63\x0b\x07\x00\x20\x00\x20\x01\x65\x0b\x07\x00\x20\x00\x20\x01\x64\x0b\x07\x00\x20\x00\x20\x01\x66\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x01\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x80\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x10\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x01\x00\x00\x00\x00\x00\x00\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x80\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x10\x00\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xe0\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\xc0\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\xff\xff\xff\xff\xff\xff\xef\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["eq"](-0.0, -0.0), 1);
+assert_return(() => $$.exports["eq"](-0.0, 0.0), 1);
+assert_return(() => $$.exports["eq"](0.0, -0.0), 1);
+assert_return(() => $$.exports["eq"](0.0, 0.0), 1);
+assert_return(() => $$.exports["eq"](-0.0, -5e-324), 0);
+assert_return(() => $$.exports["eq"](-0.0, 5e-324), 0);
+assert_return(() => $$.exports["eq"](0.0, -5e-324), 0);
+assert_return(() => $$.exports["eq"](0.0, 5e-324), 0);
+assert_return(() => $$.exports["eq"](-0.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-0.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](0.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](0.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-0.0, -0.5), 0);
+assert_return(() => $$.exports["eq"](-0.0, 0.5), 0);
+assert_return(() => $$.exports["eq"](0.0, -0.5), 0);
+assert_return(() => $$.exports["eq"](0.0, 0.5), 0);
+assert_return(() => $$.exports["eq"](-0.0, -1.0), 0);
+assert_return(() => $$.exports["eq"](-0.0, 1.0), 0);
+assert_return(() => $$.exports["eq"](0.0, -1.0), 0);
+assert_return(() => $$.exports["eq"](0.0, 1.0), 0);
+assert_return(() => $$.exports["eq"](-0.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-0.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](0.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](0.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-0.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-0.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](0.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](0.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-0.0, -Infinity), 0);
+assert_return(() => $$.exports["eq"](-0.0, Infinity), 0);
+assert_return(() => $$.exports["eq"](0.0, -Infinity), 0);
+assert_return(() => $$.exports["eq"](0.0, Infinity), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["eq"](-5e-324, -0.0), 0);
+assert_return(() => $$.exports["eq"](-5e-324, 0.0), 0);
+assert_return(() => $$.exports["eq"](5e-324, -0.0), 0);
+assert_return(() => $$.exports["eq"](5e-324, 0.0), 0);
+assert_return(() => $$.exports["eq"](-5e-324, -5e-324), 1);
+assert_return(() => $$.exports["eq"](-5e-324, 5e-324), 0);
+assert_return(() => $$.exports["eq"](5e-324, -5e-324), 0);
+assert_return(() => $$.exports["eq"](5e-324, 5e-324), 1);
+assert_return(() => $$.exports["eq"](-5e-324, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-5e-324, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](5e-324, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](5e-324, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-5e-324, -0.5), 0);
+assert_return(() => $$.exports["eq"](-5e-324, 0.5), 0);
+assert_return(() => $$.exports["eq"](5e-324, -0.5), 0);
+assert_return(() => $$.exports["eq"](5e-324, 0.5), 0);
+assert_return(() => $$.exports["eq"](-5e-324, -1.0), 0);
+assert_return(() => $$.exports["eq"](-5e-324, 1.0), 0);
+assert_return(() => $$.exports["eq"](5e-324, -1.0), 0);
+assert_return(() => $$.exports["eq"](5e-324, 1.0), 0);
+assert_return(() => $$.exports["eq"](-5e-324, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-5e-324, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](5e-324, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](5e-324, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-5e-324, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-5e-324, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](5e-324, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](5e-324, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-5e-324, -Infinity), 0);
+assert_return(() => $$.exports["eq"](-5e-324, Infinity), 0);
+assert_return(() => $$.exports["eq"](5e-324, -Infinity), 0);
+assert_return(() => $$.exports["eq"](5e-324, Infinity), 0);
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -0.0), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, 0.0), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -0.0), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, 0.0), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -5e-324), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, 5e-324), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -5e-324), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, 5e-324), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -0.5), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, 0.5), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -0.5), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, 0.5), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -1.0), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, 1.0), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -1.0), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, 1.0), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, -Infinity), 0);
+assert_return(() => $$.exports["eq"](-2.2250738585072014e-308, Infinity), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, -Infinity), 0);
+assert_return(() => $$.exports["eq"](2.2250738585072014e-308, Infinity), 0);
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["eq"](-0.5, -0.0), 0);
+assert_return(() => $$.exports["eq"](-0.5, 0.0), 0);
+assert_return(() => $$.exports["eq"](0.5, -0.0), 0);
+assert_return(() => $$.exports["eq"](0.5, 0.0), 0);
+assert_return(() => $$.exports["eq"](-0.5, -5e-324), 0);
+assert_return(() => $$.exports["eq"](-0.5, 5e-324), 0);
+assert_return(() => $$.exports["eq"](0.5, -5e-324), 0);
+assert_return(() => $$.exports["eq"](0.5, 5e-324), 0);
+assert_return(() => $$.exports["eq"](-0.5, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-0.5, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](0.5, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](0.5, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-0.5, -0.5), 1);
+assert_return(() => $$.exports["eq"](-0.5, 0.5), 0);
+assert_return(() => $$.exports["eq"](0.5, -0.5), 0);
+assert_return(() => $$.exports["eq"](0.5, 0.5), 1);
+assert_return(() => $$.exports["eq"](-0.5, -1.0), 0);
+assert_return(() => $$.exports["eq"](-0.5, 1.0), 0);
+assert_return(() => $$.exports["eq"](0.5, -1.0), 0);
+assert_return(() => $$.exports["eq"](0.5, 1.0), 0);
+assert_return(() => $$.exports["eq"](-0.5, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-0.5, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](0.5, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](0.5, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-0.5, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-0.5, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](0.5, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](0.5, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-0.5, -Infinity), 0);
+assert_return(() => $$.exports["eq"](-0.5, Infinity), 0);
+assert_return(() => $$.exports["eq"](0.5, -Infinity), 0);
+assert_return(() => $$.exports["eq"](0.5, Infinity), 0);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["eq"](-1.0, -0.0), 0);
+assert_return(() => $$.exports["eq"](-1.0, 0.0), 0);
+assert_return(() => $$.exports["eq"](1.0, -0.0), 0);
+assert_return(() => $$.exports["eq"](1.0, 0.0), 0);
+assert_return(() => $$.exports["eq"](-1.0, -5e-324), 0);
+assert_return(() => $$.exports["eq"](-1.0, 5e-324), 0);
+assert_return(() => $$.exports["eq"](1.0, -5e-324), 0);
+assert_return(() => $$.exports["eq"](1.0, 5e-324), 0);
+assert_return(() => $$.exports["eq"](-1.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-1.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](1.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](1.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-1.0, -0.5), 0);
+assert_return(() => $$.exports["eq"](-1.0, 0.5), 0);
+assert_return(() => $$.exports["eq"](1.0, -0.5), 0);
+assert_return(() => $$.exports["eq"](1.0, 0.5), 0);
+assert_return(() => $$.exports["eq"](-1.0, -1.0), 1);
+assert_return(() => $$.exports["eq"](-1.0, 1.0), 0);
+assert_return(() => $$.exports["eq"](1.0, -1.0), 0);
+assert_return(() => $$.exports["eq"](1.0, 1.0), 1);
+assert_return(() => $$.exports["eq"](-1.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-1.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](1.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](1.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-1.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-1.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](1.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](1.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-1.0, -Infinity), 0);
+assert_return(() => $$.exports["eq"](-1.0, Infinity), 0);
+assert_return(() => $$.exports["eq"](1.0, -Infinity), 0);
+assert_return(() => $$.exports["eq"](1.0, Infinity), 0);
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["eq"](-6.283185307179586, -0.0), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, 0.0), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -0.0), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, 0.0), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, -5e-324), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, 5e-324), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -5e-324), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, 5e-324), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, -0.5), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, 0.5), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -0.5), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, 0.5), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, -1.0), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, 1.0), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -1.0), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, 1.0), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, -6.283185307179586), 1);
+assert_return(() => $$.exports["eq"](-6.283185307179586, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, 6.283185307179586), 1);
+assert_return(() => $$.exports["eq"](-6.283185307179586, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, -Infinity), 0);
+assert_return(() => $$.exports["eq"](-6.283185307179586, Infinity), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, -Infinity), 0);
+assert_return(() => $$.exports["eq"](6.283185307179586, Infinity), 0);
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -0.0), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, 0.0), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -0.0), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, 0.0), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -5e-324), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, 5e-324), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -5e-324), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, 5e-324), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -0.5), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, 0.5), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -0.5), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, 0.5), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -1.0), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, 1.0), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -1.0), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, 1.0), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, -Infinity), 0);
+assert_return(() => $$.exports["eq"](-1.7976931348623157e+308, Infinity), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, -Infinity), 0);
+assert_return(() => $$.exports["eq"](1.7976931348623157e+308, Infinity), 0);
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["eq"](-Infinity, -0.0), 0);
+assert_return(() => $$.exports["eq"](-Infinity, 0.0), 0);
+assert_return(() => $$.exports["eq"](Infinity, -0.0), 0);
+assert_return(() => $$.exports["eq"](Infinity, 0.0), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -5e-324), 0);
+assert_return(() => $$.exports["eq"](-Infinity, 5e-324), 0);
+assert_return(() => $$.exports["eq"](Infinity, -5e-324), 0);
+assert_return(() => $$.exports["eq"](Infinity, 5e-324), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-Infinity, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](Infinity, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](Infinity, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -0.5), 0);
+assert_return(() => $$.exports["eq"](-Infinity, 0.5), 0);
+assert_return(() => $$.exports["eq"](Infinity, -0.5), 0);
+assert_return(() => $$.exports["eq"](Infinity, 0.5), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -1.0), 0);
+assert_return(() => $$.exports["eq"](-Infinity, 1.0), 0);
+assert_return(() => $$.exports["eq"](Infinity, -1.0), 0);
+assert_return(() => $$.exports["eq"](Infinity, 1.0), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-Infinity, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](Infinity, -6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](Infinity, 6.283185307179586), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-Infinity, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](Infinity, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](Infinity, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["eq"](-Infinity, -Infinity), 1);
+assert_return(() => $$.exports["eq"](-Infinity, Infinity), 0);
+assert_return(() => $$.exports["eq"](Infinity, -Infinity), 0);
+assert_return(() => $$.exports["eq"](Infinity, Infinity), 1);
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["assert_32"]());
+assert_return(() => $$.exports["assert_33"]());
+assert_return(() => $$.exports["assert_34"]());
+assert_return(() => $$.exports["assert_35"]());
+assert_return(() => $$.exports["assert_36"]());
+assert_return(() => $$.exports["assert_37"]());
+assert_return(() => $$.exports["assert_38"]());
+assert_return(() => $$.exports["assert_39"]());
+assert_return(() => $$.exports["assert_40"]());
+assert_return(() => $$.exports["assert_41"]());
+assert_return(() => $$.exports["assert_42"]());
+assert_return(() => $$.exports["assert_43"]());
+assert_return(() => $$.exports["assert_44"]());
+assert_return(() => $$.exports["assert_45"]());
+assert_return(() => $$.exports["assert_46"]());
+assert_return(() => $$.exports["assert_47"]());
+assert_return(() => $$.exports["assert_48"]());
+assert_return(() => $$.exports["assert_49"]());
+assert_return(() => $$.exports["assert_50"]());
+assert_return(() => $$.exports["assert_51"]());
+assert_return(() => $$.exports["assert_52"]());
+assert_return(() => $$.exports["assert_53"]());
+assert_return(() => $$.exports["assert_54"]());
+assert_return(() => $$.exports["assert_55"]());
+assert_return(() => $$.exports["assert_56"]());
+assert_return(() => $$.exports["assert_57"]());
+assert_return(() => $$.exports["assert_58"]());
+assert_return(() => $$.exports["assert_59"]());
+assert_return(() => $$.exports["assert_60"]());
+assert_return(() => $$.exports["assert_61"]());
+assert_return(() => $$.exports["assert_62"]());
+assert_return(() => $$.exports["assert_63"]());
+assert_return(() => $$.exports["assert_64"]());
+assert_return(() => $$.exports["assert_65"]());
+assert_return(() => $$.exports["assert_66"]());
+assert_return(() => $$.exports["assert_67"]());
+assert_return(() => $$.exports["ne"](-0.0, -0.0), 0);
+assert_return(() => $$.exports["ne"](-0.0, 0.0), 0);
+assert_return(() => $$.exports["ne"](0.0, -0.0), 0);
+assert_return(() => $$.exports["ne"](0.0, 0.0), 0);
+assert_return(() => $$.exports["ne"](-0.0, -5e-324), 1);
+assert_return(() => $$.exports["ne"](-0.0, 5e-324), 1);
+assert_return(() => $$.exports["ne"](0.0, -5e-324), 1);
+assert_return(() => $$.exports["ne"](0.0, 5e-324), 1);
+assert_return(() => $$.exports["ne"](-0.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-0.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](0.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](0.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-0.0, -0.5), 1);
+assert_return(() => $$.exports["ne"](-0.0, 0.5), 1);
+assert_return(() => $$.exports["ne"](0.0, -0.5), 1);
+assert_return(() => $$.exports["ne"](0.0, 0.5), 1);
+assert_return(() => $$.exports["ne"](-0.0, -1.0), 1);
+assert_return(() => $$.exports["ne"](-0.0, 1.0), 1);
+assert_return(() => $$.exports["ne"](0.0, -1.0), 1);
+assert_return(() => $$.exports["ne"](0.0, 1.0), 1);
+assert_return(() => $$.exports["ne"](-0.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-0.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](0.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](0.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-0.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-0.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](0.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](0.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-0.0, -Infinity), 1);
+assert_return(() => $$.exports["ne"](-0.0, Infinity), 1);
+assert_return(() => $$.exports["ne"](0.0, -Infinity), 1);
+assert_return(() => $$.exports["ne"](0.0, Infinity), 1);
+assert_return(() => $$.exports["assert_68"]());
+assert_return(() => $$.exports["assert_69"]());
+assert_return(() => $$.exports["assert_70"]());
+assert_return(() => $$.exports["assert_71"]());
+assert_return(() => $$.exports["ne"](-5e-324, -0.0), 1);
+assert_return(() => $$.exports["ne"](-5e-324, 0.0), 1);
+assert_return(() => $$.exports["ne"](5e-324, -0.0), 1);
+assert_return(() => $$.exports["ne"](5e-324, 0.0), 1);
+assert_return(() => $$.exports["ne"](-5e-324, -5e-324), 0);
+assert_return(() => $$.exports["ne"](-5e-324, 5e-324), 1);
+assert_return(() => $$.exports["ne"](5e-324, -5e-324), 1);
+assert_return(() => $$.exports["ne"](5e-324, 5e-324), 0);
+assert_return(() => $$.exports["ne"](-5e-324, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-5e-324, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](5e-324, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](5e-324, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-5e-324, -0.5), 1);
+assert_return(() => $$.exports["ne"](-5e-324, 0.5), 1);
+assert_return(() => $$.exports["ne"](5e-324, -0.5), 1);
+assert_return(() => $$.exports["ne"](5e-324, 0.5), 1);
+assert_return(() => $$.exports["ne"](-5e-324, -1.0), 1);
+assert_return(() => $$.exports["ne"](-5e-324, 1.0), 1);
+assert_return(() => $$.exports["ne"](5e-324, -1.0), 1);
+assert_return(() => $$.exports["ne"](5e-324, 1.0), 1);
+assert_return(() => $$.exports["ne"](-5e-324, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-5e-324, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](5e-324, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](5e-324, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-5e-324, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-5e-324, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](5e-324, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](5e-324, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-5e-324, -Infinity), 1);
+assert_return(() => $$.exports["ne"](-5e-324, Infinity), 1);
+assert_return(() => $$.exports["ne"](5e-324, -Infinity), 1);
+assert_return(() => $$.exports["ne"](5e-324, Infinity), 1);
+assert_return(() => $$.exports["assert_72"]());
+assert_return(() => $$.exports["assert_73"]());
+assert_return(() => $$.exports["assert_74"]());
+assert_return(() => $$.exports["assert_75"]());
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -0.0), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, 0.0), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -0.0), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, 0.0), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -5e-324), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, 5e-324), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -5e-324), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, 5e-324), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -0.5), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, 0.5), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -0.5), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, 0.5), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -1.0), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, 1.0), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -1.0), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, 1.0), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, -Infinity), 1);
+assert_return(() => $$.exports["ne"](-2.2250738585072014e-308, Infinity), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, -Infinity), 1);
+assert_return(() => $$.exports["ne"](2.2250738585072014e-308, Infinity), 1);
+assert_return(() => $$.exports["assert_76"]());
+assert_return(() => $$.exports["assert_77"]());
+assert_return(() => $$.exports["assert_78"]());
+assert_return(() => $$.exports["assert_79"]());
+assert_return(() => $$.exports["ne"](-0.5, -0.0), 1);
+assert_return(() => $$.exports["ne"](-0.5, 0.0), 1);
+assert_return(() => $$.exports["ne"](0.5, -0.0), 1);
+assert_return(() => $$.exports["ne"](0.5, 0.0), 1);
+assert_return(() => $$.exports["ne"](-0.5, -5e-324), 1);
+assert_return(() => $$.exports["ne"](-0.5, 5e-324), 1);
+assert_return(() => $$.exports["ne"](0.5, -5e-324), 1);
+assert_return(() => $$.exports["ne"](0.5, 5e-324), 1);
+assert_return(() => $$.exports["ne"](-0.5, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-0.5, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](0.5, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](0.5, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-0.5, -0.5), 0);
+assert_return(() => $$.exports["ne"](-0.5, 0.5), 1);
+assert_return(() => $$.exports["ne"](0.5, -0.5), 1);
+assert_return(() => $$.exports["ne"](0.5, 0.5), 0);
+assert_return(() => $$.exports["ne"](-0.5, -1.0), 1);
+assert_return(() => $$.exports["ne"](-0.5, 1.0), 1);
+assert_return(() => $$.exports["ne"](0.5, -1.0), 1);
+assert_return(() => $$.exports["ne"](0.5, 1.0), 1);
+assert_return(() => $$.exports["ne"](-0.5, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-0.5, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](0.5, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](0.5, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-0.5, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-0.5, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](0.5, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](0.5, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-0.5, -Infinity), 1);
+assert_return(() => $$.exports["ne"](-0.5, Infinity), 1);
+assert_return(() => $$.exports["ne"](0.5, -Infinity), 1);
+assert_return(() => $$.exports["ne"](0.5, Infinity), 1);
+assert_return(() => $$.exports["assert_80"]());
+assert_return(() => $$.exports["assert_81"]());
+assert_return(() => $$.exports["assert_82"]());
+assert_return(() => $$.exports["assert_83"]());
+assert_return(() => $$.exports["ne"](-1.0, -0.0), 1);
+assert_return(() => $$.exports["ne"](-1.0, 0.0), 1);
+assert_return(() => $$.exports["ne"](1.0, -0.0), 1);
+assert_return(() => $$.exports["ne"](1.0, 0.0), 1);
+assert_return(() => $$.exports["ne"](-1.0, -5e-324), 1);
+assert_return(() => $$.exports["ne"](-1.0, 5e-324), 1);
+assert_return(() => $$.exports["ne"](1.0, -5e-324), 1);
+assert_return(() => $$.exports["ne"](1.0, 5e-324), 1);
+assert_return(() => $$.exports["ne"](-1.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-1.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](1.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](1.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-1.0, -0.5), 1);
+assert_return(() => $$.exports["ne"](-1.0, 0.5), 1);
+assert_return(() => $$.exports["ne"](1.0, -0.5), 1);
+assert_return(() => $$.exports["ne"](1.0, 0.5), 1);
+assert_return(() => $$.exports["ne"](-1.0, -1.0), 0);
+assert_return(() => $$.exports["ne"](-1.0, 1.0), 1);
+assert_return(() => $$.exports["ne"](1.0, -1.0), 1);
+assert_return(() => $$.exports["ne"](1.0, 1.0), 0);
+assert_return(() => $$.exports["ne"](-1.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-1.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](1.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](1.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-1.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-1.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](1.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](1.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-1.0, -Infinity), 1);
+assert_return(() => $$.exports["ne"](-1.0, Infinity), 1);
+assert_return(() => $$.exports["ne"](1.0, -Infinity), 1);
+assert_return(() => $$.exports["ne"](1.0, Infinity), 1);
+assert_return(() => $$.exports["assert_84"]());
+assert_return(() => $$.exports["assert_85"]());
+assert_return(() => $$.exports["assert_86"]());
+assert_return(() => $$.exports["assert_87"]());
+assert_return(() => $$.exports["ne"](-6.283185307179586, -0.0), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, 0.0), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -0.0), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, 0.0), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, -5e-324), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, 5e-324), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -5e-324), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, 5e-324), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, -0.5), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, 0.5), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -0.5), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, 0.5), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, -1.0), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, 1.0), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -1.0), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, 1.0), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, -6.283185307179586), 0);
+assert_return(() => $$.exports["ne"](-6.283185307179586, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, 6.283185307179586), 0);
+assert_return(() => $$.exports["ne"](-6.283185307179586, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, -Infinity), 1);
+assert_return(() => $$.exports["ne"](-6.283185307179586, Infinity), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, -Infinity), 1);
+assert_return(() => $$.exports["ne"](6.283185307179586, Infinity), 1);
+assert_return(() => $$.exports["assert_88"]());
+assert_return(() => $$.exports["assert_89"]());
+assert_return(() => $$.exports["assert_90"]());
+assert_return(() => $$.exports["assert_91"]());
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -0.0), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, 0.0), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -0.0), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, 0.0), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -5e-324), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, 5e-324), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -5e-324), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, 5e-324), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -0.5), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, 0.5), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -0.5), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, 0.5), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -1.0), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, 1.0), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -1.0), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, 1.0), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, -Infinity), 1);
+assert_return(() => $$.exports["ne"](-1.7976931348623157e+308, Infinity), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, -Infinity), 1);
+assert_return(() => $$.exports["ne"](1.7976931348623157e+308, Infinity), 1);
+assert_return(() => $$.exports["assert_92"]());
+assert_return(() => $$.exports["assert_93"]());
+assert_return(() => $$.exports["assert_94"]());
+assert_return(() => $$.exports["assert_95"]());
+assert_return(() => $$.exports["ne"](-Infinity, -0.0), 1);
+assert_return(() => $$.exports["ne"](-Infinity, 0.0), 1);
+assert_return(() => $$.exports["ne"](Infinity, -0.0), 1);
+assert_return(() => $$.exports["ne"](Infinity, 0.0), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -5e-324), 1);
+assert_return(() => $$.exports["ne"](-Infinity, 5e-324), 1);
+assert_return(() => $$.exports["ne"](Infinity, -5e-324), 1);
+assert_return(() => $$.exports["ne"](Infinity, 5e-324), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-Infinity, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](Infinity, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](Infinity, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -0.5), 1);
+assert_return(() => $$.exports["ne"](-Infinity, 0.5), 1);
+assert_return(() => $$.exports["ne"](Infinity, -0.5), 1);
+assert_return(() => $$.exports["ne"](Infinity, 0.5), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -1.0), 1);
+assert_return(() => $$.exports["ne"](-Infinity, 1.0), 1);
+assert_return(() => $$.exports["ne"](Infinity, -1.0), 1);
+assert_return(() => $$.exports["ne"](Infinity, 1.0), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-Infinity, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](Infinity, -6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](Infinity, 6.283185307179586), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-Infinity, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](Infinity, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](Infinity, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ne"](-Infinity, -Infinity), 0);
+assert_return(() => $$.exports["ne"](-Infinity, Infinity), 1);
+assert_return(() => $$.exports["ne"](Infinity, -Infinity), 1);
+assert_return(() => $$.exports["ne"](Infinity, Infinity), 0);
+assert_return(() => $$.exports["assert_96"]());
+assert_return(() => $$.exports["assert_97"]());
+assert_return(() => $$.exports["assert_98"]());
+assert_return(() => $$.exports["assert_99"]());
+assert_return(() => $$.exports["assert_100"]());
+assert_return(() => $$.exports["assert_101"]());
+assert_return(() => $$.exports["assert_102"]());
+assert_return(() => $$.exports["assert_103"]());
+assert_return(() => $$.exports["assert_104"]());
+assert_return(() => $$.exports["assert_105"]());
+assert_return(() => $$.exports["assert_106"]());
+assert_return(() => $$.exports["assert_107"]());
+assert_return(() => $$.exports["assert_108"]());
+assert_return(() => $$.exports["assert_109"]());
+assert_return(() => $$.exports["assert_110"]());
+assert_return(() => $$.exports["assert_111"]());
+assert_return(() => $$.exports["assert_112"]());
+assert_return(() => $$.exports["assert_113"]());
+assert_return(() => $$.exports["assert_114"]());
+assert_return(() => $$.exports["assert_115"]());
+assert_return(() => $$.exports["assert_116"]());
+assert_return(() => $$.exports["assert_117"]());
+assert_return(() => $$.exports["assert_118"]());
+assert_return(() => $$.exports["assert_119"]());
+assert_return(() => $$.exports["assert_120"]());
+assert_return(() => $$.exports["assert_121"]());
+assert_return(() => $$.exports["assert_122"]());
+assert_return(() => $$.exports["assert_123"]());
+assert_return(() => $$.exports["assert_124"]());
+assert_return(() => $$.exports["assert_125"]());
+assert_return(() => $$.exports["assert_126"]());
+assert_return(() => $$.exports["assert_127"]());
+assert_return(() => $$.exports["assert_128"]());
+assert_return(() => $$.exports["assert_129"]());
+assert_return(() => $$.exports["assert_130"]());
+assert_return(() => $$.exports["assert_131"]());
+assert_return(() => $$.exports["assert_132"]());
+assert_return(() => $$.exports["assert_133"]());
+assert_return(() => $$.exports["assert_134"]());
+assert_return(() => $$.exports["assert_135"]());
+assert_return(() => $$.exports["lt"](-0.0, -0.0), 0);
+assert_return(() => $$.exports["lt"](-0.0, 0.0), 0);
+assert_return(() => $$.exports["lt"](0.0, -0.0), 0);
+assert_return(() => $$.exports["lt"](0.0, 0.0), 0);
+assert_return(() => $$.exports["lt"](-0.0, -5e-324), 0);
+assert_return(() => $$.exports["lt"](-0.0, 5e-324), 1);
+assert_return(() => $$.exports["lt"](0.0, -5e-324), 0);
+assert_return(() => $$.exports["lt"](0.0, 5e-324), 1);
+assert_return(() => $$.exports["lt"](-0.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-0.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](0.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](0.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](-0.0, -0.5), 0);
+assert_return(() => $$.exports["lt"](-0.0, 0.5), 1);
+assert_return(() => $$.exports["lt"](0.0, -0.5), 0);
+assert_return(() => $$.exports["lt"](0.0, 0.5), 1);
+assert_return(() => $$.exports["lt"](-0.0, -1.0), 0);
+assert_return(() => $$.exports["lt"](-0.0, 1.0), 1);
+assert_return(() => $$.exports["lt"](0.0, -1.0), 0);
+assert_return(() => $$.exports["lt"](0.0, 1.0), 1);
+assert_return(() => $$.exports["lt"](-0.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-0.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](0.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](0.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](-0.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-0.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](0.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](0.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](-0.0, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-0.0, Infinity), 1);
+assert_return(() => $$.exports["lt"](0.0, -Infinity), 0);
+assert_return(() => $$.exports["lt"](0.0, Infinity), 1);
+assert_return(() => $$.exports["assert_136"]());
+assert_return(() => $$.exports["assert_137"]());
+assert_return(() => $$.exports["assert_138"]());
+assert_return(() => $$.exports["assert_139"]());
+assert_return(() => $$.exports["lt"](-5e-324, -0.0), 1);
+assert_return(() => $$.exports["lt"](-5e-324, 0.0), 1);
+assert_return(() => $$.exports["lt"](5e-324, -0.0), 0);
+assert_return(() => $$.exports["lt"](5e-324, 0.0), 0);
+assert_return(() => $$.exports["lt"](-5e-324, -5e-324), 0);
+assert_return(() => $$.exports["lt"](-5e-324, 5e-324), 1);
+assert_return(() => $$.exports["lt"](5e-324, -5e-324), 0);
+assert_return(() => $$.exports["lt"](5e-324, 5e-324), 0);
+assert_return(() => $$.exports["lt"](-5e-324, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-5e-324, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](5e-324, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](5e-324, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](-5e-324, -0.5), 0);
+assert_return(() => $$.exports["lt"](-5e-324, 0.5), 1);
+assert_return(() => $$.exports["lt"](5e-324, -0.5), 0);
+assert_return(() => $$.exports["lt"](5e-324, 0.5), 1);
+assert_return(() => $$.exports["lt"](-5e-324, -1.0), 0);
+assert_return(() => $$.exports["lt"](-5e-324, 1.0), 1);
+assert_return(() => $$.exports["lt"](5e-324, -1.0), 0);
+assert_return(() => $$.exports["lt"](5e-324, 1.0), 1);
+assert_return(() => $$.exports["lt"](-5e-324, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-5e-324, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](5e-324, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](5e-324, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](-5e-324, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-5e-324, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](5e-324, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](5e-324, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](-5e-324, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-5e-324, Infinity), 1);
+assert_return(() => $$.exports["lt"](5e-324, -Infinity), 0);
+assert_return(() => $$.exports["lt"](5e-324, Infinity), 1);
+assert_return(() => $$.exports["assert_140"]());
+assert_return(() => $$.exports["assert_141"]());
+assert_return(() => $$.exports["assert_142"]());
+assert_return(() => $$.exports["assert_143"]());
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -0.0), 1);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, 0.0), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -0.0), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, 0.0), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -5e-324), 1);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, 5e-324), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -5e-324), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, 5e-324), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -0.5), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, 0.5), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -0.5), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, 0.5), 1);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -1.0), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, 1.0), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -1.0), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, 1.0), 1);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-2.2250738585072014e-308, Infinity), 1);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, -Infinity), 0);
+assert_return(() => $$.exports["lt"](2.2250738585072014e-308, Infinity), 1);
+assert_return(() => $$.exports["assert_144"]());
+assert_return(() => $$.exports["assert_145"]());
+assert_return(() => $$.exports["assert_146"]());
+assert_return(() => $$.exports["assert_147"]());
+assert_return(() => $$.exports["lt"](-0.5, -0.0), 1);
+assert_return(() => $$.exports["lt"](-0.5, 0.0), 1);
+assert_return(() => $$.exports["lt"](0.5, -0.0), 0);
+assert_return(() => $$.exports["lt"](0.5, 0.0), 0);
+assert_return(() => $$.exports["lt"](-0.5, -5e-324), 1);
+assert_return(() => $$.exports["lt"](-0.5, 5e-324), 1);
+assert_return(() => $$.exports["lt"](0.5, -5e-324), 0);
+assert_return(() => $$.exports["lt"](0.5, 5e-324), 0);
+assert_return(() => $$.exports["lt"](-0.5, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](-0.5, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](0.5, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](0.5, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-0.5, -0.5), 0);
+assert_return(() => $$.exports["lt"](-0.5, 0.5), 1);
+assert_return(() => $$.exports["lt"](0.5, -0.5), 0);
+assert_return(() => $$.exports["lt"](0.5, 0.5), 0);
+assert_return(() => $$.exports["lt"](-0.5, -1.0), 0);
+assert_return(() => $$.exports["lt"](-0.5, 1.0), 1);
+assert_return(() => $$.exports["lt"](0.5, -1.0), 0);
+assert_return(() => $$.exports["lt"](0.5, 1.0), 1);
+assert_return(() => $$.exports["lt"](-0.5, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-0.5, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](0.5, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](0.5, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](-0.5, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-0.5, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](0.5, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](0.5, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](-0.5, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-0.5, Infinity), 1);
+assert_return(() => $$.exports["lt"](0.5, -Infinity), 0);
+assert_return(() => $$.exports["lt"](0.5, Infinity), 1);
+assert_return(() => $$.exports["assert_148"]());
+assert_return(() => $$.exports["assert_149"]());
+assert_return(() => $$.exports["assert_150"]());
+assert_return(() => $$.exports["assert_151"]());
+assert_return(() => $$.exports["lt"](-1.0, -0.0), 1);
+assert_return(() => $$.exports["lt"](-1.0, 0.0), 1);
+assert_return(() => $$.exports["lt"](1.0, -0.0), 0);
+assert_return(() => $$.exports["lt"](1.0, 0.0), 0);
+assert_return(() => $$.exports["lt"](-1.0, -5e-324), 1);
+assert_return(() => $$.exports["lt"](-1.0, 5e-324), 1);
+assert_return(() => $$.exports["lt"](1.0, -5e-324), 0);
+assert_return(() => $$.exports["lt"](1.0, 5e-324), 0);
+assert_return(() => $$.exports["lt"](-1.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](-1.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](1.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](1.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-1.0, -0.5), 1);
+assert_return(() => $$.exports["lt"](-1.0, 0.5), 1);
+assert_return(() => $$.exports["lt"](1.0, -0.5), 0);
+assert_return(() => $$.exports["lt"](1.0, 0.5), 0);
+assert_return(() => $$.exports["lt"](-1.0, -1.0), 0);
+assert_return(() => $$.exports["lt"](-1.0, 1.0), 1);
+assert_return(() => $$.exports["lt"](1.0, -1.0), 0);
+assert_return(() => $$.exports["lt"](1.0, 1.0), 0);
+assert_return(() => $$.exports["lt"](-1.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-1.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](1.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](1.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](-1.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-1.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](1.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](1.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](-1.0, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-1.0, Infinity), 1);
+assert_return(() => $$.exports["lt"](1.0, -Infinity), 0);
+assert_return(() => $$.exports["lt"](1.0, Infinity), 1);
+assert_return(() => $$.exports["assert_152"]());
+assert_return(() => $$.exports["assert_153"]());
+assert_return(() => $$.exports["assert_154"]());
+assert_return(() => $$.exports["assert_155"]());
+assert_return(() => $$.exports["lt"](-6.283185307179586, -0.0), 1);
+assert_return(() => $$.exports["lt"](-6.283185307179586, 0.0), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -0.0), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, 0.0), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, -5e-324), 1);
+assert_return(() => $$.exports["lt"](-6.283185307179586, 5e-324), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -5e-324), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, 5e-324), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](-6.283185307179586, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, -0.5), 1);
+assert_return(() => $$.exports["lt"](-6.283185307179586, 0.5), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -0.5), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, 0.5), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, -1.0), 1);
+assert_return(() => $$.exports["lt"](-6.283185307179586, 1.0), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -1.0), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, 1.0), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, 6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](-6.283185307179586, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-6.283185307179586, Infinity), 1);
+assert_return(() => $$.exports["lt"](6.283185307179586, -Infinity), 0);
+assert_return(() => $$.exports["lt"](6.283185307179586, Infinity), 1);
+assert_return(() => $$.exports["assert_156"]());
+assert_return(() => $$.exports["assert_157"]());
+assert_return(() => $$.exports["assert_158"]());
+assert_return(() => $$.exports["assert_159"]());
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -0.0), 1);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, 0.0), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -0.0), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, 0.0), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -5e-324), 1);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, 5e-324), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -5e-324), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, 5e-324), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -0.5), 1);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, 0.5), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -0.5), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, 0.5), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -1.0), 1);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, 1.0), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -1.0), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, 1.0), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, 6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-1.7976931348623157e+308, Infinity), 1);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, -Infinity), 0);
+assert_return(() => $$.exports["lt"](1.7976931348623157e+308, Infinity), 1);
+assert_return(() => $$.exports["assert_160"]());
+assert_return(() => $$.exports["assert_161"]());
+assert_return(() => $$.exports["assert_162"]());
+assert_return(() => $$.exports["assert_163"]());
+assert_return(() => $$.exports["lt"](-Infinity, -0.0), 1);
+assert_return(() => $$.exports["lt"](-Infinity, 0.0), 1);
+assert_return(() => $$.exports["lt"](Infinity, -0.0), 0);
+assert_return(() => $$.exports["lt"](Infinity, 0.0), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -5e-324), 1);
+assert_return(() => $$.exports["lt"](-Infinity, 5e-324), 1);
+assert_return(() => $$.exports["lt"](Infinity, -5e-324), 0);
+assert_return(() => $$.exports["lt"](Infinity, 5e-324), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](-Infinity, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["lt"](Infinity, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](Infinity, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -0.5), 1);
+assert_return(() => $$.exports["lt"](-Infinity, 0.5), 1);
+assert_return(() => $$.exports["lt"](Infinity, -0.5), 0);
+assert_return(() => $$.exports["lt"](Infinity, 0.5), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -1.0), 1);
+assert_return(() => $$.exports["lt"](-Infinity, 1.0), 1);
+assert_return(() => $$.exports["lt"](Infinity, -1.0), 0);
+assert_return(() => $$.exports["lt"](Infinity, 1.0), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](-Infinity, 6.283185307179586), 1);
+assert_return(() => $$.exports["lt"](Infinity, -6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](Infinity, 6.283185307179586), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](-Infinity, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["lt"](Infinity, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](Infinity, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["lt"](-Infinity, -Infinity), 0);
+assert_return(() => $$.exports["lt"](-Infinity, Infinity), 1);
+assert_return(() => $$.exports["lt"](Infinity, -Infinity), 0);
+assert_return(() => $$.exports["lt"](Infinity, Infinity), 0);
+assert_return(() => $$.exports["assert_164"]());
+assert_return(() => $$.exports["assert_165"]());
+assert_return(() => $$.exports["assert_166"]());
+assert_return(() => $$.exports["assert_167"]());
+assert_return(() => $$.exports["assert_168"]());
+assert_return(() => $$.exports["assert_169"]());
+assert_return(() => $$.exports["assert_170"]());
+assert_return(() => $$.exports["assert_171"]());
+assert_return(() => $$.exports["assert_172"]());
+assert_return(() => $$.exports["assert_173"]());
+assert_return(() => $$.exports["assert_174"]());
+assert_return(() => $$.exports["assert_175"]());
+assert_return(() => $$.exports["assert_176"]());
+assert_return(() => $$.exports["assert_177"]());
+assert_return(() => $$.exports["assert_178"]());
+assert_return(() => $$.exports["assert_179"]());
+assert_return(() => $$.exports["assert_180"]());
+assert_return(() => $$.exports["assert_181"]());
+assert_return(() => $$.exports["assert_182"]());
+assert_return(() => $$.exports["assert_183"]());
+assert_return(() => $$.exports["assert_184"]());
+assert_return(() => $$.exports["assert_185"]());
+assert_return(() => $$.exports["assert_186"]());
+assert_return(() => $$.exports["assert_187"]());
+assert_return(() => $$.exports["assert_188"]());
+assert_return(() => $$.exports["assert_189"]());
+assert_return(() => $$.exports["assert_190"]());
+assert_return(() => $$.exports["assert_191"]());
+assert_return(() => $$.exports["assert_192"]());
+assert_return(() => $$.exports["assert_193"]());
+assert_return(() => $$.exports["assert_194"]());
+assert_return(() => $$.exports["assert_195"]());
+assert_return(() => $$.exports["assert_196"]());
+assert_return(() => $$.exports["assert_197"]());
+assert_return(() => $$.exports["assert_198"]());
+assert_return(() => $$.exports["assert_199"]());
+assert_return(() => $$.exports["assert_200"]());
+assert_return(() => $$.exports["assert_201"]());
+assert_return(() => $$.exports["assert_202"]());
+assert_return(() => $$.exports["assert_203"]());
+assert_return(() => $$.exports["le"](-0.0, -0.0), 1);
+assert_return(() => $$.exports["le"](-0.0, 0.0), 1);
+assert_return(() => $$.exports["le"](0.0, -0.0), 1);
+assert_return(() => $$.exports["le"](0.0, 0.0), 1);
+assert_return(() => $$.exports["le"](-0.0, -5e-324), 0);
+assert_return(() => $$.exports["le"](-0.0, 5e-324), 1);
+assert_return(() => $$.exports["le"](0.0, -5e-324), 0);
+assert_return(() => $$.exports["le"](0.0, 5e-324), 1);
+assert_return(() => $$.exports["le"](-0.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](-0.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](0.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](0.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-0.0, -0.5), 0);
+assert_return(() => $$.exports["le"](-0.0, 0.5), 1);
+assert_return(() => $$.exports["le"](0.0, -0.5), 0);
+assert_return(() => $$.exports["le"](0.0, 0.5), 1);
+assert_return(() => $$.exports["le"](-0.0, -1.0), 0);
+assert_return(() => $$.exports["le"](-0.0, 1.0), 1);
+assert_return(() => $$.exports["le"](0.0, -1.0), 0);
+assert_return(() => $$.exports["le"](0.0, 1.0), 1);
+assert_return(() => $$.exports["le"](-0.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](-0.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](0.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](0.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-0.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](-0.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](0.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](0.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-0.0, -Infinity), 0);
+assert_return(() => $$.exports["le"](-0.0, Infinity), 1);
+assert_return(() => $$.exports["le"](0.0, -Infinity), 0);
+assert_return(() => $$.exports["le"](0.0, Infinity), 1);
+assert_return(() => $$.exports["assert_204"]());
+assert_return(() => $$.exports["assert_205"]());
+assert_return(() => $$.exports["assert_206"]());
+assert_return(() => $$.exports["assert_207"]());
+assert_return(() => $$.exports["le"](-5e-324, -0.0), 1);
+assert_return(() => $$.exports["le"](-5e-324, 0.0), 1);
+assert_return(() => $$.exports["le"](5e-324, -0.0), 0);
+assert_return(() => $$.exports["le"](5e-324, 0.0), 0);
+assert_return(() => $$.exports["le"](-5e-324, -5e-324), 1);
+assert_return(() => $$.exports["le"](-5e-324, 5e-324), 1);
+assert_return(() => $$.exports["le"](5e-324, -5e-324), 0);
+assert_return(() => $$.exports["le"](5e-324, 5e-324), 1);
+assert_return(() => $$.exports["le"](-5e-324, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](-5e-324, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](5e-324, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](5e-324, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-5e-324, -0.5), 0);
+assert_return(() => $$.exports["le"](-5e-324, 0.5), 1);
+assert_return(() => $$.exports["le"](5e-324, -0.5), 0);
+assert_return(() => $$.exports["le"](5e-324, 0.5), 1);
+assert_return(() => $$.exports["le"](-5e-324, -1.0), 0);
+assert_return(() => $$.exports["le"](-5e-324, 1.0), 1);
+assert_return(() => $$.exports["le"](5e-324, -1.0), 0);
+assert_return(() => $$.exports["le"](5e-324, 1.0), 1);
+assert_return(() => $$.exports["le"](-5e-324, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](-5e-324, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](5e-324, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](5e-324, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-5e-324, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](-5e-324, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](5e-324, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](5e-324, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-5e-324, -Infinity), 0);
+assert_return(() => $$.exports["le"](-5e-324, Infinity), 1);
+assert_return(() => $$.exports["le"](5e-324, -Infinity), 0);
+assert_return(() => $$.exports["le"](5e-324, Infinity), 1);
+assert_return(() => $$.exports["assert_208"]());
+assert_return(() => $$.exports["assert_209"]());
+assert_return(() => $$.exports["assert_210"]());
+assert_return(() => $$.exports["assert_211"]());
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -0.0), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, 0.0), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -0.0), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, 0.0), 0);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -5e-324), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, 5e-324), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -5e-324), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, 5e-324), 0);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -0.5), 0);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, 0.5), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -0.5), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, 0.5), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -1.0), 0);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, 1.0), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -1.0), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, 1.0), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, -Infinity), 0);
+assert_return(() => $$.exports["le"](-2.2250738585072014e-308, Infinity), 1);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, -Infinity), 0);
+assert_return(() => $$.exports["le"](2.2250738585072014e-308, Infinity), 1);
+assert_return(() => $$.exports["assert_212"]());
+assert_return(() => $$.exports["assert_213"]());
+assert_return(() => $$.exports["assert_214"]());
+assert_return(() => $$.exports["assert_215"]());
+assert_return(() => $$.exports["le"](-0.5, -0.0), 1);
+assert_return(() => $$.exports["le"](-0.5, 0.0), 1);
+assert_return(() => $$.exports["le"](0.5, -0.0), 0);
+assert_return(() => $$.exports["le"](0.5, 0.0), 0);
+assert_return(() => $$.exports["le"](-0.5, -5e-324), 1);
+assert_return(() => $$.exports["le"](-0.5, 5e-324), 1);
+assert_return(() => $$.exports["le"](0.5, -5e-324), 0);
+assert_return(() => $$.exports["le"](0.5, 5e-324), 0);
+assert_return(() => $$.exports["le"](-0.5, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-0.5, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](0.5, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](0.5, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](-0.5, -0.5), 1);
+assert_return(() => $$.exports["le"](-0.5, 0.5), 1);
+assert_return(() => $$.exports["le"](0.5, -0.5), 0);
+assert_return(() => $$.exports["le"](0.5, 0.5), 1);
+assert_return(() => $$.exports["le"](-0.5, -1.0), 0);
+assert_return(() => $$.exports["le"](-0.5, 1.0), 1);
+assert_return(() => $$.exports["le"](0.5, -1.0), 0);
+assert_return(() => $$.exports["le"](0.5, 1.0), 1);
+assert_return(() => $$.exports["le"](-0.5, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](-0.5, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](0.5, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](0.5, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-0.5, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](-0.5, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](0.5, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](0.5, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-0.5, -Infinity), 0);
+assert_return(() => $$.exports["le"](-0.5, Infinity), 1);
+assert_return(() => $$.exports["le"](0.5, -Infinity), 0);
+assert_return(() => $$.exports["le"](0.5, Infinity), 1);
+assert_return(() => $$.exports["assert_216"]());
+assert_return(() => $$.exports["assert_217"]());
+assert_return(() => $$.exports["assert_218"]());
+assert_return(() => $$.exports["assert_219"]());
+assert_return(() => $$.exports["le"](-1.0, -0.0), 1);
+assert_return(() => $$.exports["le"](-1.0, 0.0), 1);
+assert_return(() => $$.exports["le"](1.0, -0.0), 0);
+assert_return(() => $$.exports["le"](1.0, 0.0), 0);
+assert_return(() => $$.exports["le"](-1.0, -5e-324), 1);
+assert_return(() => $$.exports["le"](-1.0, 5e-324), 1);
+assert_return(() => $$.exports["le"](1.0, -5e-324), 0);
+assert_return(() => $$.exports["le"](1.0, 5e-324), 0);
+assert_return(() => $$.exports["le"](-1.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-1.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](1.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](1.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](-1.0, -0.5), 1);
+assert_return(() => $$.exports["le"](-1.0, 0.5), 1);
+assert_return(() => $$.exports["le"](1.0, -0.5), 0);
+assert_return(() => $$.exports["le"](1.0, 0.5), 0);
+assert_return(() => $$.exports["le"](-1.0, -1.0), 1);
+assert_return(() => $$.exports["le"](-1.0, 1.0), 1);
+assert_return(() => $$.exports["le"](1.0, -1.0), 0);
+assert_return(() => $$.exports["le"](1.0, 1.0), 1);
+assert_return(() => $$.exports["le"](-1.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](-1.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](1.0, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](1.0, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-1.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](-1.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](1.0, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](1.0, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-1.0, -Infinity), 0);
+assert_return(() => $$.exports["le"](-1.0, Infinity), 1);
+assert_return(() => $$.exports["le"](1.0, -Infinity), 0);
+assert_return(() => $$.exports["le"](1.0, Infinity), 1);
+assert_return(() => $$.exports["assert_220"]());
+assert_return(() => $$.exports["assert_221"]());
+assert_return(() => $$.exports["assert_222"]());
+assert_return(() => $$.exports["assert_223"]());
+assert_return(() => $$.exports["le"](-6.283185307179586, -0.0), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, 0.0), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -0.0), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, 0.0), 0);
+assert_return(() => $$.exports["le"](-6.283185307179586, -5e-324), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, 5e-324), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -5e-324), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, 5e-324), 0);
+assert_return(() => $$.exports["le"](-6.283185307179586, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](-6.283185307179586, -0.5), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, 0.5), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -0.5), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, 0.5), 0);
+assert_return(() => $$.exports["le"](-6.283185307179586, -1.0), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, 1.0), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -1.0), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, 1.0), 0);
+assert_return(() => $$.exports["le"](-6.283185307179586, -6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](-6.283185307179586, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-6.283185307179586, -Infinity), 0);
+assert_return(() => $$.exports["le"](-6.283185307179586, Infinity), 1);
+assert_return(() => $$.exports["le"](6.283185307179586, -Infinity), 0);
+assert_return(() => $$.exports["le"](6.283185307179586, Infinity), 1);
+assert_return(() => $$.exports["assert_224"]());
+assert_return(() => $$.exports["assert_225"]());
+assert_return(() => $$.exports["assert_226"]());
+assert_return(() => $$.exports["assert_227"]());
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -0.0), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, 0.0), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -0.0), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, 0.0), 0);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -5e-324), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, 5e-324), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -5e-324), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, 5e-324), 0);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -0.5), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, 0.5), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -0.5), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, 0.5), 0);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -1.0), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, 1.0), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -1.0), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, 1.0), 0);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, 6.283185307179586), 0);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, -Infinity), 0);
+assert_return(() => $$.exports["le"](-1.7976931348623157e+308, Infinity), 1);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, -Infinity), 0);
+assert_return(() => $$.exports["le"](1.7976931348623157e+308, Infinity), 1);
+assert_return(() => $$.exports["assert_228"]());
+assert_return(() => $$.exports["assert_229"]());
+assert_return(() => $$.exports["assert_230"]());
+assert_return(() => $$.exports["assert_231"]());
+assert_return(() => $$.exports["le"](-Infinity, -0.0), 1);
+assert_return(() => $$.exports["le"](-Infinity, 0.0), 1);
+assert_return(() => $$.exports["le"](Infinity, -0.0), 0);
+assert_return(() => $$.exports["le"](Infinity, 0.0), 0);
+assert_return(() => $$.exports["le"](-Infinity, -5e-324), 1);
+assert_return(() => $$.exports["le"](-Infinity, 5e-324), 1);
+assert_return(() => $$.exports["le"](Infinity, -5e-324), 0);
+assert_return(() => $$.exports["le"](Infinity, 5e-324), 0);
+assert_return(() => $$.exports["le"](-Infinity, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](-Infinity, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["le"](Infinity, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](Infinity, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["le"](-Infinity, -0.5), 1);
+assert_return(() => $$.exports["le"](-Infinity, 0.5), 1);
+assert_return(() => $$.exports["le"](Infinity, -0.5), 0);
+assert_return(() => $$.exports["le"](Infinity, 0.5), 0);
+assert_return(() => $$.exports["le"](-Infinity, -1.0), 1);
+assert_return(() => $$.exports["le"](-Infinity, 1.0), 1);
+assert_return(() => $$.exports["le"](Infinity, -1.0), 0);
+assert_return(() => $$.exports["le"](Infinity, 1.0), 0);
+assert_return(() => $$.exports["le"](-Infinity, -6.283185307179586), 1);
+assert_return(() => $$.exports["le"](-Infinity, 6.283185307179586), 1);
+assert_return(() => $$.exports["le"](Infinity, -6.283185307179586), 0);
+assert_return(() => $$.exports["le"](Infinity, 6.283185307179586), 0);
+assert_return(() => $$.exports["le"](-Infinity, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](-Infinity, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["le"](Infinity, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](Infinity, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["le"](-Infinity, -Infinity), 1);
+assert_return(() => $$.exports["le"](-Infinity, Infinity), 1);
+assert_return(() => $$.exports["le"](Infinity, -Infinity), 0);
+assert_return(() => $$.exports["le"](Infinity, Infinity), 1);
+assert_return(() => $$.exports["assert_232"]());
+assert_return(() => $$.exports["assert_233"]());
+assert_return(() => $$.exports["assert_234"]());
+assert_return(() => $$.exports["assert_235"]());
+assert_return(() => $$.exports["assert_236"]());
+assert_return(() => $$.exports["assert_237"]());
+assert_return(() => $$.exports["assert_238"]());
+assert_return(() => $$.exports["assert_239"]());
+assert_return(() => $$.exports["assert_240"]());
+assert_return(() => $$.exports["assert_241"]());
+assert_return(() => $$.exports["assert_242"]());
+assert_return(() => $$.exports["assert_243"]());
+assert_return(() => $$.exports["assert_244"]());
+assert_return(() => $$.exports["assert_245"]());
+assert_return(() => $$.exports["assert_246"]());
+assert_return(() => $$.exports["assert_247"]());
+assert_return(() => $$.exports["assert_248"]());
+assert_return(() => $$.exports["assert_249"]());
+assert_return(() => $$.exports["assert_250"]());
+assert_return(() => $$.exports["assert_251"]());
+assert_return(() => $$.exports["assert_252"]());
+assert_return(() => $$.exports["assert_253"]());
+assert_return(() => $$.exports["assert_254"]());
+assert_return(() => $$.exports["assert_255"]());
+assert_return(() => $$.exports["assert_256"]());
+assert_return(() => $$.exports["assert_257"]());
+assert_return(() => $$.exports["assert_258"]());
+assert_return(() => $$.exports["assert_259"]());
+assert_return(() => $$.exports["assert_260"]());
+assert_return(() => $$.exports["assert_261"]());
+assert_return(() => $$.exports["assert_262"]());
+assert_return(() => $$.exports["assert_263"]());
+assert_return(() => $$.exports["assert_264"]());
+assert_return(() => $$.exports["assert_265"]());
+assert_return(() => $$.exports["assert_266"]());
+assert_return(() => $$.exports["assert_267"]());
+assert_return(() => $$.exports["assert_268"]());
+assert_return(() => $$.exports["assert_269"]());
+assert_return(() => $$.exports["assert_270"]());
+assert_return(() => $$.exports["assert_271"]());
+assert_return(() => $$.exports["gt"](-0.0, -0.0), 0);
+assert_return(() => $$.exports["gt"](-0.0, 0.0), 0);
+assert_return(() => $$.exports["gt"](0.0, -0.0), 0);
+assert_return(() => $$.exports["gt"](0.0, 0.0), 0);
+assert_return(() => $$.exports["gt"](-0.0, -5e-324), 1);
+assert_return(() => $$.exports["gt"](-0.0, 5e-324), 0);
+assert_return(() => $$.exports["gt"](0.0, -5e-324), 1);
+assert_return(() => $$.exports["gt"](0.0, 5e-324), 0);
+assert_return(() => $$.exports["gt"](-0.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](-0.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](0.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](0.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-0.0, -0.5), 1);
+assert_return(() => $$.exports["gt"](-0.0, 0.5), 0);
+assert_return(() => $$.exports["gt"](0.0, -0.5), 1);
+assert_return(() => $$.exports["gt"](0.0, 0.5), 0);
+assert_return(() => $$.exports["gt"](-0.0, -1.0), 1);
+assert_return(() => $$.exports["gt"](-0.0, 1.0), 0);
+assert_return(() => $$.exports["gt"](0.0, -1.0), 1);
+assert_return(() => $$.exports["gt"](0.0, 1.0), 0);
+assert_return(() => $$.exports["gt"](-0.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](-0.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](0.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](0.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-0.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](-0.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](0.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](0.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-0.0, -Infinity), 1);
+assert_return(() => $$.exports["gt"](-0.0, Infinity), 0);
+assert_return(() => $$.exports["gt"](0.0, -Infinity), 1);
+assert_return(() => $$.exports["gt"](0.0, Infinity), 0);
+assert_return(() => $$.exports["assert_272"]());
+assert_return(() => $$.exports["assert_273"]());
+assert_return(() => $$.exports["assert_274"]());
+assert_return(() => $$.exports["assert_275"]());
+assert_return(() => $$.exports["gt"](-5e-324, -0.0), 0);
+assert_return(() => $$.exports["gt"](-5e-324, 0.0), 0);
+assert_return(() => $$.exports["gt"](5e-324, -0.0), 1);
+assert_return(() => $$.exports["gt"](5e-324, 0.0), 1);
+assert_return(() => $$.exports["gt"](-5e-324, -5e-324), 0);
+assert_return(() => $$.exports["gt"](-5e-324, 5e-324), 0);
+assert_return(() => $$.exports["gt"](5e-324, -5e-324), 1);
+assert_return(() => $$.exports["gt"](5e-324, 5e-324), 0);
+assert_return(() => $$.exports["gt"](-5e-324, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](-5e-324, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](5e-324, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](5e-324, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-5e-324, -0.5), 1);
+assert_return(() => $$.exports["gt"](-5e-324, 0.5), 0);
+assert_return(() => $$.exports["gt"](5e-324, -0.5), 1);
+assert_return(() => $$.exports["gt"](5e-324, 0.5), 0);
+assert_return(() => $$.exports["gt"](-5e-324, -1.0), 1);
+assert_return(() => $$.exports["gt"](-5e-324, 1.0), 0);
+assert_return(() => $$.exports["gt"](5e-324, -1.0), 1);
+assert_return(() => $$.exports["gt"](5e-324, 1.0), 0);
+assert_return(() => $$.exports["gt"](-5e-324, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](-5e-324, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](5e-324, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](5e-324, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-5e-324, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](-5e-324, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](5e-324, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](5e-324, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-5e-324, -Infinity), 1);
+assert_return(() => $$.exports["gt"](-5e-324, Infinity), 0);
+assert_return(() => $$.exports["gt"](5e-324, -Infinity), 1);
+assert_return(() => $$.exports["gt"](5e-324, Infinity), 0);
+assert_return(() => $$.exports["assert_276"]());
+assert_return(() => $$.exports["assert_277"]());
+assert_return(() => $$.exports["assert_278"]());
+assert_return(() => $$.exports["assert_279"]());
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -0.0), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, 0.0), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -0.0), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, 0.0), 1);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -5e-324), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, 5e-324), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -5e-324), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, 5e-324), 1);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -0.5), 1);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, 0.5), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -0.5), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, 0.5), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -1.0), 1);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, 1.0), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -1.0), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, 1.0), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, -Infinity), 1);
+assert_return(() => $$.exports["gt"](-2.2250738585072014e-308, Infinity), 0);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, -Infinity), 1);
+assert_return(() => $$.exports["gt"](2.2250738585072014e-308, Infinity), 0);
+assert_return(() => $$.exports["assert_280"]());
+assert_return(() => $$.exports["assert_281"]());
+assert_return(() => $$.exports["assert_282"]());
+assert_return(() => $$.exports["assert_283"]());
+assert_return(() => $$.exports["gt"](-0.5, -0.0), 0);
+assert_return(() => $$.exports["gt"](-0.5, 0.0), 0);
+assert_return(() => $$.exports["gt"](0.5, -0.0), 1);
+assert_return(() => $$.exports["gt"](0.5, 0.0), 1);
+assert_return(() => $$.exports["gt"](-0.5, -5e-324), 0);
+assert_return(() => $$.exports["gt"](-0.5, 5e-324), 0);
+assert_return(() => $$.exports["gt"](0.5, -5e-324), 1);
+assert_return(() => $$.exports["gt"](0.5, 5e-324), 1);
+assert_return(() => $$.exports["gt"](-0.5, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-0.5, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](0.5, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](0.5, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](-0.5, -0.5), 0);
+assert_return(() => $$.exports["gt"](-0.5, 0.5), 0);
+assert_return(() => $$.exports["gt"](0.5, -0.5), 1);
+assert_return(() => $$.exports["gt"](0.5, 0.5), 0);
+assert_return(() => $$.exports["gt"](-0.5, -1.0), 1);
+assert_return(() => $$.exports["gt"](-0.5, 1.0), 0);
+assert_return(() => $$.exports["gt"](0.5, -1.0), 1);
+assert_return(() => $$.exports["gt"](0.5, 1.0), 0);
+assert_return(() => $$.exports["gt"](-0.5, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](-0.5, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](0.5, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](0.5, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-0.5, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](-0.5, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](0.5, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](0.5, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-0.5, -Infinity), 1);
+assert_return(() => $$.exports["gt"](-0.5, Infinity), 0);
+assert_return(() => $$.exports["gt"](0.5, -Infinity), 1);
+assert_return(() => $$.exports["gt"](0.5, Infinity), 0);
+assert_return(() => $$.exports["assert_284"]());
+assert_return(() => $$.exports["assert_285"]());
+assert_return(() => $$.exports["assert_286"]());
+assert_return(() => $$.exports["assert_287"]());
+assert_return(() => $$.exports["gt"](-1.0, -0.0), 0);
+assert_return(() => $$.exports["gt"](-1.0, 0.0), 0);
+assert_return(() => $$.exports["gt"](1.0, -0.0), 1);
+assert_return(() => $$.exports["gt"](1.0, 0.0), 1);
+assert_return(() => $$.exports["gt"](-1.0, -5e-324), 0);
+assert_return(() => $$.exports["gt"](-1.0, 5e-324), 0);
+assert_return(() => $$.exports["gt"](1.0, -5e-324), 1);
+assert_return(() => $$.exports["gt"](1.0, 5e-324), 1);
+assert_return(() => $$.exports["gt"](-1.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-1.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](1.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](1.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](-1.0, -0.5), 0);
+assert_return(() => $$.exports["gt"](-1.0, 0.5), 0);
+assert_return(() => $$.exports["gt"](1.0, -0.5), 1);
+assert_return(() => $$.exports["gt"](1.0, 0.5), 1);
+assert_return(() => $$.exports["gt"](-1.0, -1.0), 0);
+assert_return(() => $$.exports["gt"](-1.0, 1.0), 0);
+assert_return(() => $$.exports["gt"](1.0, -1.0), 1);
+assert_return(() => $$.exports["gt"](1.0, 1.0), 0);
+assert_return(() => $$.exports["gt"](-1.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](-1.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](1.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](1.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-1.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](-1.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](1.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](1.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-1.0, -Infinity), 1);
+assert_return(() => $$.exports["gt"](-1.0, Infinity), 0);
+assert_return(() => $$.exports["gt"](1.0, -Infinity), 1);
+assert_return(() => $$.exports["gt"](1.0, Infinity), 0);
+assert_return(() => $$.exports["assert_288"]());
+assert_return(() => $$.exports["assert_289"]());
+assert_return(() => $$.exports["assert_290"]());
+assert_return(() => $$.exports["assert_291"]());
+assert_return(() => $$.exports["gt"](-6.283185307179586, -0.0), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, 0.0), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -0.0), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, 0.0), 1);
+assert_return(() => $$.exports["gt"](-6.283185307179586, -5e-324), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, 5e-324), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -5e-324), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, 5e-324), 1);
+assert_return(() => $$.exports["gt"](-6.283185307179586, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](-6.283185307179586, -0.5), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, 0.5), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -0.5), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, 0.5), 1);
+assert_return(() => $$.exports["gt"](-6.283185307179586, -1.0), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, 1.0), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -1.0), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, 1.0), 1);
+assert_return(() => $$.exports["gt"](-6.283185307179586, -6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](-6.283185307179586, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-6.283185307179586, -Infinity), 1);
+assert_return(() => $$.exports["gt"](-6.283185307179586, Infinity), 0);
+assert_return(() => $$.exports["gt"](6.283185307179586, -Infinity), 1);
+assert_return(() => $$.exports["gt"](6.283185307179586, Infinity), 0);
+assert_return(() => $$.exports["assert_292"]());
+assert_return(() => $$.exports["assert_293"]());
+assert_return(() => $$.exports["assert_294"]());
+assert_return(() => $$.exports["assert_295"]());
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -0.0), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, 0.0), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -0.0), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, 0.0), 1);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -5e-324), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, 5e-324), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -5e-324), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, 5e-324), 1);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -0.5), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, 0.5), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -0.5), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, 0.5), 1);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -1.0), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, 1.0), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -1.0), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, 1.0), 1);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, 6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, -Infinity), 1);
+assert_return(() => $$.exports["gt"](-1.7976931348623157e+308, Infinity), 0);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, -Infinity), 1);
+assert_return(() => $$.exports["gt"](1.7976931348623157e+308, Infinity), 0);
+assert_return(() => $$.exports["assert_296"]());
+assert_return(() => $$.exports["assert_297"]());
+assert_return(() => $$.exports["assert_298"]());
+assert_return(() => $$.exports["assert_299"]());
+assert_return(() => $$.exports["gt"](-Infinity, -0.0), 0);
+assert_return(() => $$.exports["gt"](-Infinity, 0.0), 0);
+assert_return(() => $$.exports["gt"](Infinity, -0.0), 1);
+assert_return(() => $$.exports["gt"](Infinity, 0.0), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -5e-324), 0);
+assert_return(() => $$.exports["gt"](-Infinity, 5e-324), 0);
+assert_return(() => $$.exports["gt"](Infinity, -5e-324), 1);
+assert_return(() => $$.exports["gt"](Infinity, 5e-324), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](-Infinity, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["gt"](Infinity, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](Infinity, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -0.5), 0);
+assert_return(() => $$.exports["gt"](-Infinity, 0.5), 0);
+assert_return(() => $$.exports["gt"](Infinity, -0.5), 1);
+assert_return(() => $$.exports["gt"](Infinity, 0.5), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -1.0), 0);
+assert_return(() => $$.exports["gt"](-Infinity, 1.0), 0);
+assert_return(() => $$.exports["gt"](Infinity, -1.0), 1);
+assert_return(() => $$.exports["gt"](Infinity, 1.0), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](-Infinity, 6.283185307179586), 0);
+assert_return(() => $$.exports["gt"](Infinity, -6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](Infinity, 6.283185307179586), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](-Infinity, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["gt"](Infinity, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](Infinity, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["gt"](-Infinity, -Infinity), 0);
+assert_return(() => $$.exports["gt"](-Infinity, Infinity), 0);
+assert_return(() => $$.exports["gt"](Infinity, -Infinity), 1);
+assert_return(() => $$.exports["gt"](Infinity, Infinity), 0);
+assert_return(() => $$.exports["assert_300"]());
+assert_return(() => $$.exports["assert_301"]());
+assert_return(() => $$.exports["assert_302"]());
+assert_return(() => $$.exports["assert_303"]());
+assert_return(() => $$.exports["assert_304"]());
+assert_return(() => $$.exports["assert_305"]());
+assert_return(() => $$.exports["assert_306"]());
+assert_return(() => $$.exports["assert_307"]());
+assert_return(() => $$.exports["assert_308"]());
+assert_return(() => $$.exports["assert_309"]());
+assert_return(() => $$.exports["assert_310"]());
+assert_return(() => $$.exports["assert_311"]());
+assert_return(() => $$.exports["assert_312"]());
+assert_return(() => $$.exports["assert_313"]());
+assert_return(() => $$.exports["assert_314"]());
+assert_return(() => $$.exports["assert_315"]());
+assert_return(() => $$.exports["assert_316"]());
+assert_return(() => $$.exports["assert_317"]());
+assert_return(() => $$.exports["assert_318"]());
+assert_return(() => $$.exports["assert_319"]());
+assert_return(() => $$.exports["assert_320"]());
+assert_return(() => $$.exports["assert_321"]());
+assert_return(() => $$.exports["assert_322"]());
+assert_return(() => $$.exports["assert_323"]());
+assert_return(() => $$.exports["assert_324"]());
+assert_return(() => $$.exports["assert_325"]());
+assert_return(() => $$.exports["assert_326"]());
+assert_return(() => $$.exports["assert_327"]());
+assert_return(() => $$.exports["assert_328"]());
+assert_return(() => $$.exports["assert_329"]());
+assert_return(() => $$.exports["assert_330"]());
+assert_return(() => $$.exports["assert_331"]());
+assert_return(() => $$.exports["assert_332"]());
+assert_return(() => $$.exports["assert_333"]());
+assert_return(() => $$.exports["assert_334"]());
+assert_return(() => $$.exports["assert_335"]());
+assert_return(() => $$.exports["assert_336"]());
+assert_return(() => $$.exports["assert_337"]());
+assert_return(() => $$.exports["assert_338"]());
+assert_return(() => $$.exports["assert_339"]());
+assert_return(() => $$.exports["ge"](-0.0, -0.0), 1);
+assert_return(() => $$.exports["ge"](-0.0, 0.0), 1);
+assert_return(() => $$.exports["ge"](0.0, -0.0), 1);
+assert_return(() => $$.exports["ge"](0.0, 0.0), 1);
+assert_return(() => $$.exports["ge"](-0.0, -5e-324), 1);
+assert_return(() => $$.exports["ge"](-0.0, 5e-324), 0);
+assert_return(() => $$.exports["ge"](0.0, -5e-324), 1);
+assert_return(() => $$.exports["ge"](0.0, 5e-324), 0);
+assert_return(() => $$.exports["ge"](-0.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-0.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](0.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](0.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](-0.0, -0.5), 1);
+assert_return(() => $$.exports["ge"](-0.0, 0.5), 0);
+assert_return(() => $$.exports["ge"](0.0, -0.5), 1);
+assert_return(() => $$.exports["ge"](0.0, 0.5), 0);
+assert_return(() => $$.exports["ge"](-0.0, -1.0), 1);
+assert_return(() => $$.exports["ge"](-0.0, 1.0), 0);
+assert_return(() => $$.exports["ge"](0.0, -1.0), 1);
+assert_return(() => $$.exports["ge"](0.0, 1.0), 0);
+assert_return(() => $$.exports["ge"](-0.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-0.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](0.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](0.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](-0.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-0.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](0.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](0.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](-0.0, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-0.0, Infinity), 0);
+assert_return(() => $$.exports["ge"](0.0, -Infinity), 1);
+assert_return(() => $$.exports["ge"](0.0, Infinity), 0);
+assert_return(() => $$.exports["assert_340"]());
+assert_return(() => $$.exports["assert_341"]());
+assert_return(() => $$.exports["assert_342"]());
+assert_return(() => $$.exports["assert_343"]());
+assert_return(() => $$.exports["ge"](-5e-324, -0.0), 0);
+assert_return(() => $$.exports["ge"](-5e-324, 0.0), 0);
+assert_return(() => $$.exports["ge"](5e-324, -0.0), 1);
+assert_return(() => $$.exports["ge"](5e-324, 0.0), 1);
+assert_return(() => $$.exports["ge"](-5e-324, -5e-324), 1);
+assert_return(() => $$.exports["ge"](-5e-324, 5e-324), 0);
+assert_return(() => $$.exports["ge"](5e-324, -5e-324), 1);
+assert_return(() => $$.exports["ge"](5e-324, 5e-324), 1);
+assert_return(() => $$.exports["ge"](-5e-324, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-5e-324, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](5e-324, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](5e-324, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](-5e-324, -0.5), 1);
+assert_return(() => $$.exports["ge"](-5e-324, 0.5), 0);
+assert_return(() => $$.exports["ge"](5e-324, -0.5), 1);
+assert_return(() => $$.exports["ge"](5e-324, 0.5), 0);
+assert_return(() => $$.exports["ge"](-5e-324, -1.0), 1);
+assert_return(() => $$.exports["ge"](-5e-324, 1.0), 0);
+assert_return(() => $$.exports["ge"](5e-324, -1.0), 1);
+assert_return(() => $$.exports["ge"](5e-324, 1.0), 0);
+assert_return(() => $$.exports["ge"](-5e-324, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-5e-324, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](5e-324, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](5e-324, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](-5e-324, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-5e-324, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](5e-324, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](5e-324, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](-5e-324, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-5e-324, Infinity), 0);
+assert_return(() => $$.exports["ge"](5e-324, -Infinity), 1);
+assert_return(() => $$.exports["ge"](5e-324, Infinity), 0);
+assert_return(() => $$.exports["assert_344"]());
+assert_return(() => $$.exports["assert_345"]());
+assert_return(() => $$.exports["assert_346"]());
+assert_return(() => $$.exports["assert_347"]());
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -0.0), 0);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, 0.0), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -0.0), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, 0.0), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -5e-324), 0);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, 5e-324), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -5e-324), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, 5e-324), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -0.5), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, 0.5), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -0.5), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, 0.5), 0);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -1.0), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, 1.0), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -1.0), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, 1.0), 0);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-2.2250738585072014e-308, Infinity), 0);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, -Infinity), 1);
+assert_return(() => $$.exports["ge"](2.2250738585072014e-308, Infinity), 0);
+assert_return(() => $$.exports["assert_348"]());
+assert_return(() => $$.exports["assert_349"]());
+assert_return(() => $$.exports["assert_350"]());
+assert_return(() => $$.exports["assert_351"]());
+assert_return(() => $$.exports["ge"](-0.5, -0.0), 0);
+assert_return(() => $$.exports["ge"](-0.5, 0.0), 0);
+assert_return(() => $$.exports["ge"](0.5, -0.0), 1);
+assert_return(() => $$.exports["ge"](0.5, 0.0), 1);
+assert_return(() => $$.exports["ge"](-0.5, -5e-324), 0);
+assert_return(() => $$.exports["ge"](-0.5, 5e-324), 0);
+assert_return(() => $$.exports["ge"](0.5, -5e-324), 1);
+assert_return(() => $$.exports["ge"](0.5, 5e-324), 1);
+assert_return(() => $$.exports["ge"](-0.5, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](-0.5, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](0.5, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](0.5, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-0.5, -0.5), 1);
+assert_return(() => $$.exports["ge"](-0.5, 0.5), 0);
+assert_return(() => $$.exports["ge"](0.5, -0.5), 1);
+assert_return(() => $$.exports["ge"](0.5, 0.5), 1);
+assert_return(() => $$.exports["ge"](-0.5, -1.0), 1);
+assert_return(() => $$.exports["ge"](-0.5, 1.0), 0);
+assert_return(() => $$.exports["ge"](0.5, -1.0), 1);
+assert_return(() => $$.exports["ge"](0.5, 1.0), 0);
+assert_return(() => $$.exports["ge"](-0.5, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-0.5, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](0.5, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](0.5, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](-0.5, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-0.5, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](0.5, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](0.5, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](-0.5, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-0.5, Infinity), 0);
+assert_return(() => $$.exports["ge"](0.5, -Infinity), 1);
+assert_return(() => $$.exports["ge"](0.5, Infinity), 0);
+assert_return(() => $$.exports["assert_352"]());
+assert_return(() => $$.exports["assert_353"]());
+assert_return(() => $$.exports["assert_354"]());
+assert_return(() => $$.exports["assert_355"]());
+assert_return(() => $$.exports["ge"](-1.0, -0.0), 0);
+assert_return(() => $$.exports["ge"](-1.0, 0.0), 0);
+assert_return(() => $$.exports["ge"](1.0, -0.0), 1);
+assert_return(() => $$.exports["ge"](1.0, 0.0), 1);
+assert_return(() => $$.exports["ge"](-1.0, -5e-324), 0);
+assert_return(() => $$.exports["ge"](-1.0, 5e-324), 0);
+assert_return(() => $$.exports["ge"](1.0, -5e-324), 1);
+assert_return(() => $$.exports["ge"](1.0, 5e-324), 1);
+assert_return(() => $$.exports["ge"](-1.0, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](-1.0, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](1.0, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](1.0, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-1.0, -0.5), 0);
+assert_return(() => $$.exports["ge"](-1.0, 0.5), 0);
+assert_return(() => $$.exports["ge"](1.0, -0.5), 1);
+assert_return(() => $$.exports["ge"](1.0, 0.5), 1);
+assert_return(() => $$.exports["ge"](-1.0, -1.0), 1);
+assert_return(() => $$.exports["ge"](-1.0, 1.0), 0);
+assert_return(() => $$.exports["ge"](1.0, -1.0), 1);
+assert_return(() => $$.exports["ge"](1.0, 1.0), 1);
+assert_return(() => $$.exports["ge"](-1.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-1.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](1.0, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](1.0, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](-1.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-1.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](1.0, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](1.0, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](-1.0, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-1.0, Infinity), 0);
+assert_return(() => $$.exports["ge"](1.0, -Infinity), 1);
+assert_return(() => $$.exports["ge"](1.0, Infinity), 0);
+assert_return(() => $$.exports["assert_356"]());
+assert_return(() => $$.exports["assert_357"]());
+assert_return(() => $$.exports["assert_358"]());
+assert_return(() => $$.exports["assert_359"]());
+assert_return(() => $$.exports["ge"](-6.283185307179586, -0.0), 0);
+assert_return(() => $$.exports["ge"](-6.283185307179586, 0.0), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -0.0), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, 0.0), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, -5e-324), 0);
+assert_return(() => $$.exports["ge"](-6.283185307179586, 5e-324), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -5e-324), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, 5e-324), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](-6.283185307179586, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, -0.5), 0);
+assert_return(() => $$.exports["ge"](-6.283185307179586, 0.5), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -0.5), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, 0.5), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, -1.0), 0);
+assert_return(() => $$.exports["ge"](-6.283185307179586, 1.0), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -1.0), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, 1.0), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, 6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](-6.283185307179586, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-6.283185307179586, Infinity), 0);
+assert_return(() => $$.exports["ge"](6.283185307179586, -Infinity), 1);
+assert_return(() => $$.exports["ge"](6.283185307179586, Infinity), 0);
+assert_return(() => $$.exports["assert_360"]());
+assert_return(() => $$.exports["assert_361"]());
+assert_return(() => $$.exports["assert_362"]());
+assert_return(() => $$.exports["assert_363"]());
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -0.0), 0);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, 0.0), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -0.0), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, 0.0), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -5e-324), 0);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, 5e-324), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -5e-324), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, 5e-324), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -0.5), 0);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, 0.5), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -0.5), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, 0.5), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -1.0), 0);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, 1.0), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -1.0), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, 1.0), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, 6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-1.7976931348623157e+308, Infinity), 0);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, -Infinity), 1);
+assert_return(() => $$.exports["ge"](1.7976931348623157e+308, Infinity), 0);
+assert_return(() => $$.exports["assert_364"]());
+assert_return(() => $$.exports["assert_365"]());
+assert_return(() => $$.exports["assert_366"]());
+assert_return(() => $$.exports["assert_367"]());
+assert_return(() => $$.exports["ge"](-Infinity, -0.0), 0);
+assert_return(() => $$.exports["ge"](-Infinity, 0.0), 0);
+assert_return(() => $$.exports["ge"](Infinity, -0.0), 1);
+assert_return(() => $$.exports["ge"](Infinity, 0.0), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -5e-324), 0);
+assert_return(() => $$.exports["ge"](-Infinity, 5e-324), 0);
+assert_return(() => $$.exports["ge"](Infinity, -5e-324), 1);
+assert_return(() => $$.exports["ge"](Infinity, 5e-324), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](-Infinity, 2.2250738585072014e-308), 0);
+assert_return(() => $$.exports["ge"](Infinity, -2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](Infinity, 2.2250738585072014e-308), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -0.5), 0);
+assert_return(() => $$.exports["ge"](-Infinity, 0.5), 0);
+assert_return(() => $$.exports["ge"](Infinity, -0.5), 1);
+assert_return(() => $$.exports["ge"](Infinity, 0.5), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -1.0), 0);
+assert_return(() => $$.exports["ge"](-Infinity, 1.0), 0);
+assert_return(() => $$.exports["ge"](Infinity, -1.0), 1);
+assert_return(() => $$.exports["ge"](Infinity, 1.0), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](-Infinity, 6.283185307179586), 0);
+assert_return(() => $$.exports["ge"](Infinity, -6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](Infinity, 6.283185307179586), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](-Infinity, 1.7976931348623157e+308), 0);
+assert_return(() => $$.exports["ge"](Infinity, -1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](Infinity, 1.7976931348623157e+308), 1);
+assert_return(() => $$.exports["ge"](-Infinity, -Infinity), 1);
+assert_return(() => $$.exports["ge"](-Infinity, Infinity), 0);
+assert_return(() => $$.exports["ge"](Infinity, -Infinity), 1);
+assert_return(() => $$.exports["ge"](Infinity, Infinity), 1);
+assert_return(() => $$.exports["assert_368"]());
+assert_return(() => $$.exports["assert_369"]());
+assert_return(() => $$.exports["assert_370"]());
+assert_return(() => $$.exports["assert_371"]());
+assert_return(() => $$.exports["assert_372"]());
+assert_return(() => $$.exports["assert_373"]());
+assert_return(() => $$.exports["assert_374"]());
+assert_return(() => $$.exports["assert_375"]());
+assert_return(() => $$.exports["assert_376"]());
+assert_return(() => $$.exports["assert_377"]());
+assert_return(() => $$.exports["assert_378"]());
+assert_return(() => $$.exports["assert_379"]());
+assert_return(() => $$.exports["assert_380"]());
+assert_return(() => $$.exports["assert_381"]());
+assert_return(() => $$.exports["assert_382"]());
+assert_return(() => $$.exports["assert_383"]());
+assert_return(() => $$.exports["assert_384"]());
+assert_return(() => $$.exports["assert_385"]());
+assert_return(() => $$.exports["assert_386"]());
+assert_return(() => $$.exports["assert_387"]());
+assert_return(() => $$.exports["assert_388"]());
+assert_return(() => $$.exports["assert_389"]());
+assert_return(() => $$.exports["assert_390"]());
+assert_return(() => $$.exports["assert_391"]());
+assert_return(() => $$.exports["assert_392"]());
+assert_return(() => $$.exports["assert_393"]());
+assert_return(() => $$.exports["assert_394"]());
+assert_return(() => $$.exports["assert_395"]());
+assert_return(() => $$.exports["assert_396"]());
+assert_return(() => $$.exports["assert_397"]());
+assert_return(() => $$.exports["assert_398"]());
+assert_return(() => $$.exports["assert_399"]());
+assert_return(() => $$.exports["assert_400"]());
+assert_return(() => $$.exports["assert_401"]());
+assert_return(() => $$.exports["assert_402"]());
+assert_return(() => $$.exports["assert_403"]());
+assert_return(() => $$.exports["assert_404"]());
+assert_return(() => $$.exports["assert_405"]());
+assert_return(() => $$.exports["assert_406"]());
+assert_return(() => $$.exports["assert_407"]());
diff --git a/JSTests/wasm/spec-tests/fac.wast.js b/JSTests/wasm/spec-tests/fac.wast.js
new file mode 100644
index 0000000..2a8b94d
--- /dev/null
+++ b/JSTests/wasm/spec-tests/fac.wast.js
@@ -0,0 +1,101 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x0c\x0b\x00\x00\x00\x00\x00\x01\x01\x01\x01\x01\x01\x07\x83\x01\x0b\x07\x66\x61\x63\x2d\x72\x65\x63\x00\x00\x0d\x66\x61\x63\x2d\x72\x65\x63\x2d\x6e\x61\x6d\x65\x64\x00\x01\x08\x66\x61\x63\x2d\x69\x74\x65\x72\x00\x02\x0e\x66\x61\x63\x2d\x69\x74\x65\x72\x2d\x6e\x61\x6d\x65\x64\x00\x03\x07\x66\x61\x63\x2d\x6f\x70\x74\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0a\x0a\xd8\x02\x0b\x17\x00\x20\x00\x42\x00\x51\x04\x7e\x42\x01\x05\x20\x00\x20\x00\x42\x01\x7d\x10\x00\x7e\x0b\x0b\x17\x00\x20\x00\x42\x00\x51\x04\x7e\x42\x01\x05\x20\x00\x20\x00\x42\x01\x7d\x10\x01\x7e\x0b\x0b\x32\x01\x02\x7e\x20\x00\x21\x01\x42\x01\x21\x02\x02\x40\x03\x40\x20\x01\x42\x00\x51\x04\x40\x0c\x02\x05\x02\x40\x20\x01\x20\x02\x7e\x21\x02\x20\x01\x42\x01\x7d\x21\x01\x0b\x0b\x0c\x00\x0b\x0b\x20\x02\x0b\x32\x01\x02\x7e\x20\x00\x21\x01\x42\x01\x21\x02\x02\x40\x03\x40\x20\x01\x42\x00\x51\x04\x40\x0c\x02\x05\x02\x40\x20\x01\x20\x02\x7e\x21\x02\x20\x01\x42\x01\x7d\x21\x01\x0b\x0b\x0c\x00\x0b\x0b\x20\x02\x0b\x2c\x01\x01\x7e\x42\x01\x21\x01\x02\x40\x20\x00\x42\x02\x53\x0d\x00\x03\x40\x20\x01\x20\x00\x7e\x21\x01\x20\x00\x42\x7f\x7c\x21\x00\x20\x00\x42\x01\x55\x0d\x00\x0b\x0b\x20\x01\x0b\x1a\x00\x02\x40\x42\x19\x10\x00\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x02\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x01\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x03\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x04\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0c\x00\x42\x80\x80\x80\x80\x04\x10\x00\x0c\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_trap(() => $$.exports["assert_5"]());
diff --git a/JSTests/wasm/spec-tests/float_exprs.wast.js b/JSTests/wasm/spec-tests/float_exprs.wast.js
new file mode 100644
index 0000000..f891b70
--- /dev/null
+++ b/JSTests/wasm/spec-tests/float_exprs.wast.js
@@ -0,0 +1,879 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x01\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x02\x01\x00\x07\x16\x01\x12\x66\x36\x34\x2e\x6e\x6f\x5f\x63\x6f\x6e\x74\x72\x61\x63\x74\x69\x6f\x6e\x00\x00\x0a\x0c\x01\x0a\x00\x20\x00\x20\x01\xa2\x20\x02\xa0\x0b");
+assert_return(() => $$.exports["f64.no_contraction"](-1.5967133604096234e-31, 8.763352160827123e+199, 4.289657620489846e+160), -1.3992561434270632e+169);
+assert_return(() => $$.exports["f64.no_contraction"](8341016642481988.0, 3.223424965918293e-97, 2.3310835741659086e-91), 2.6886641288847496e-81);
+assert_return(() => $$.exports["f64.no_contraction"](-3.0119045290520013e-179, 5.269933643923675e+160, 6.654454781339856e-32), -1.5872537009936566e-18);
+assert_return(() => $$.exports["f64.no_contraction"](3.1413936116780743e-21, -7.262766035707377e-31, 4.619684894228461e-66), -2.28152068276836e-51);
+assert_return(() => $$.exports["f64.no_contraction"](-1.6080464217402378e-286, -3.82103410226833e+281, 1.0541980504151345e-16), 6.144400215510552e-05);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x1b\x02\x0a\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6d\x61\x00\x00\x0a\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6d\x61\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x94\x20\x02\x92\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x02\xa0\x0b");
+assert_return(() => $$.exports["f32.no_fma"](f32(3.51843041229e+37), f32(2.15843613205e-07), f32(2.59340643077e+32)), f32(2.66934960333e+32));
+assert_return(() => $$.exports["f32.no_fma"](f32(7.1753243347e-09), f32(-1.22553396078e-15), f32(4.13164358366e-27)), f32(-8.78947242875e-24));
+assert_return(() => $$.exports["f32.no_fma"](f32(2.31063437312e+11), f32(0.000207732620765), f32(1797.64208984)), f32(48001208.0));
+assert_return(() => $$.exports["f32.no_fma"](f32(0.00455427030101), f32(-7265493.5), f32(-2.39642834663)), f32(-33091.4140625));
+assert_return(() => $$.exports["f32.no_fma"](f32(9.88817261494e+37), f32(-8.57063118027e-22), f32(-21579143168.0)), f32(-8.47479081376e+16));
+assert_return(() => $$.exports["f64.no_fma"](7.890842843751792e+167, 4.21502005211736e+129, -1.3366010811317447e+297), 1.9894050003203128e+297);
+assert_return(() => $$.exports["f64.no_fma"](5.5868223480092855e+225, 7.397302005677334e-40, 3.656783417204092e+172), 4.1327412160292407e+186);
+assert_return(() => $$.exports["f64.no_fma"](1.4260477822274587e-217, -3.108763203659986e+304, 3.4326923552377763e+71), -4.433244872049653e+87);
+assert_return(() => $$.exports["f64.no_fma"](-8.09034701735478e-117, -2.487441785066745e+133, 4.948476513851081e+16), 2.5072743740509472e+17);
+assert_return(() => $$.exports["f64.no_fma"](6723256985364377.0, 2.8545656669287946e+206, -5.593839470050757e+207), 1.9191978560360286e+222);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x7a\x65\x72\x6f\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x7a\x65\x72\x6f\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x20\x00\x43\x00\x00\x00\x00\x92\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.no_fold_add_zero"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["f64.no_fold_add_zero"](-0.0), 0.0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x7a\x65\x72\x6f\x5f\x73\x75\x62\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x7a\x65\x72\x6f\x5f\x73\x75\x62\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x43\x00\x00\x00\x00\x20\x00\x93\x0b\x0e\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\xa1\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.no_fold_zero_sub"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f64.no_fold_zero_sub"](0.0), 0.0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x5f\x7a\x65\x72\x6f\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x5f\x7a\x65\x72\x6f\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x20\x00\x43\x00\x00\x00\x00\x93\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x7a\x65\x72\x6f\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x7a\x65\x72\x6f\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x20\x00\x43\x00\x00\x00\x00\x94\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.no_fold_mul_zero"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_mul_zero"](f32(-1.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_mul_zero"](f32(-2.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["f64.no_fold_mul_zero"](-0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_mul_zero"](-1.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_mul_zero"](-2.0), -0.0);
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x43\x04\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x6f\x6e\x65\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x6f\x6e\x65\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x20\x00\x43\x00\x00\x80\x3f\x94\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xa2\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x07\x06\x00\x01\x02\x02\x02\x02\x07\x5b\x06\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x7a\x65\x72\x6f\x5f\x64\x69\x76\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x7a\x65\x72\x6f\x5f\x64\x69\x76\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x05\x0a\x93\x01\x06\x0a\x00\x43\x00\x00\x00\x00\x20\x00\x95\x0b\x0e\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\xa3\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return_nan(() => $$.exports["f32.no_fold_zero_div"](f32(0.0)));
+assert_return_nan(() => $$.exports["f32.no_fold_zero_div"](f32(-0.0)));
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return_nan(() => $$.exports["f64.no_fold_zero_div"](0.0));
+assert_return_nan(() => $$.exports["f64.no_fold_zero_div"](-0.0));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x43\x04\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6f\x6e\x65\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6f\x6e\x65\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x20\x00\x43\x00\x00\x80\x3f\x95\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xa3\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6e\x65\x67\x31\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6e\x65\x67\x31\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x20\x00\x43\x00\x00\x80\xbf\x95\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\xa3\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x67\x30\x5f\x73\x75\x62\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x67\x30\x5f\x73\x75\x62\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x43\x00\x00\x00\x80\x20\x00\x93\x0b\x0e\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\x20\x00\xa1\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x67\x31\x5f\x6d\x75\x6c\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x67\x31\x5f\x6d\x75\x6c\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x57\x04\x0a\x00\x43\x00\x00\x80\xbf\x20\x00\x94\x0b\x0e\x00\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\x20\x00\xa2\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7f\x60\x01\x7c\x01\x7f\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x43\x04\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x65\x71\x5f\x73\x65\x6c\x66\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x65\x71\x5f\x73\x65\x6c\x66\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x3f\x04\x07\x00\x20\x00\x20\x00\x5b\x0b\x07\x00\x20\x00\x20\x00\x61\x0b\x14\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7f\x60\x01\x7c\x01\x7f\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x43\x04\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x5f\x73\x65\x6c\x66\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x5f\x73\x65\x6c\x66\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x3f\x04\x07\x00\x20\x00\x20\x00\x5c\x0b\x07\x00\x20\x00\x20\x00\x62\x0b\x14\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x05\x04\x00\x01\x02\x02\x07\x45\x04\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x5f\x73\x65\x6c\x66\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x5f\x73\x65\x6c\x66\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x0a\x4d\x04\x07\x00\x20\x00\x20\x00\x93\x0b\x07\x00\x20\x00\x20\x00\xa1\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return_nan(() => $$.exports["f32.no_fold_sub_self"](Infinity));
+assert_return(() => $$.exports["assert_0"]());
+assert_return_nan(() => $$.exports["f64.no_fold_sub_self"](Infinity));
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x29\x02\x11\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x33\x00\x00\x11\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x33\x00\x01\x0a\x1b\x02\x0a\x00\x20\x00\x43\x00\x00\x40\x40\x95\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x08\x40\xa3\x0b");
+assert_return(() => $$.exports["f32.no_fold_div_3"](f32(-1.36167898166e+15)), f32(-4.53892982702e+14));
+assert_return(() => $$.exports["f32.no_fold_div_3"](f32(-1.87368803675e+28)), f32(-6.24562659239e+27));
+assert_return(() => $$.exports["f32.no_fold_div_3"](f32(-1.20451307204e-25)), f32(-4.01504347074e-26));
+assert_return(() => $$.exports["f32.no_fold_div_3"](f32(-5.28134593492e-38)), f32(-1.76044859826e-38));
+assert_return(() => $$.exports["f32.no_fold_div_3"](f32(-2.54955626722e-17)), f32(-8.498520615e-18));
+assert_return(() => $$.exports["f64.no_fold_div_3"](-2.9563579573969634e+190), -9.854526524656545e+189);
+assert_return(() => $$.exports["f64.no_fold_div_3"](-9.291150921449772e-51), -3.097050307149924e-51);
+assert_return(() => $$.exports["f64.no_fold_div_3"](1.3808061543557006e-263), 4.602687181185669e-264);
+assert_return(() => $$.exports["f64.no_fold_div_3"](-1.378076163468349e+303), -4.593587211561163e+302);
+assert_return(() => $$.exports["f64.no_fold_div_3"](8.632400808831366e+124), 2.877466936277122e+124);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x21\x02\x0d\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x61\x63\x74\x6f\x72\x00\x00\x0d\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x61\x63\x74\x6f\x72\x00\x01\x0a\x1d\x02\x0d\x00\x20\x00\x20\x02\x94\x20\x01\x20\x02\x94\x92\x0b\x0d\x00\x20\x00\x20\x02\xa2\x20\x01\x20\x02\xa2\xa0\x0b");
+assert_return(() => $$.exports["f32.no_factor"](f32(-1.43511165338e+12), f32(-8.5361763654e+14), f32(1.11384932812e+18)), f32(-9.52399884674e+32));
+assert_return(() => $$.exports["f32.no_factor"](f32(-0.0266666319221), f32(0.0484128221869), f32(-0.0028136970941)), f32(-6.11872019363e-05));
+assert_return(() => $$.exports["f32.no_factor"](f32(-4.6619777266e-13), f32(1.04783769717e-19), f32(1.44692022693e+37)), f32(-6.74550795101e+24));
+assert_return(() => $$.exports["f32.no_factor"](f32(-1.06890463028e-19), f32(1.06944332177e-25), f32(5.68307016526e+35)), f32(-6.07465399659e+16));
+assert_return(() => $$.exports["f32.no_factor"](f32(-6.35459938038e-26), f32(7.52462484401e-22), f32(1626770.25)), f32(1.2239802906e-15));
+assert_return(() => $$.exports["f64.no_factor"](2.8390554709988774e-128, 1.473981250649641e-139, -2.9001229846550766e-68), -8.233610026197336e-196);
+assert_return(() => $$.exports["f64.no_factor"](6.461015505916123e-200, -2.3923242802975938e-304, -1.5300738798561604e-288), 0.0);
+assert_return(() => $$.exports["f64.no_factor"](-2.939056292080733e-101, -2.146156743463356e-85, -2.5109672231302416e+144), 5.388929238536426e+59);
+assert_return(() => $$.exports["f64.no_factor"](-1.7785466771708878e-87, 9.328516775403213e-79, -1.2121009044876735e-76), -1.130710359943689e-154);
+assert_return(() => $$.exports["f64.no_factor"](1.5194859063177362e-183, 8.83589921438065e-175, -1.7358300194691958e+147), -1.5337619131701908e-27);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x29\x02\x11\x66\x33\x32\x2e\x6e\x6f\x5f\x64\x69\x73\x74\x72\x69\x62\x75\x74\x65\x00\x00\x11\x66\x36\x34\x2e\x6e\x6f\x5f\x64\x69\x73\x74\x72\x69\x62\x75\x74\x65\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x92\x20\x02\x94\x0b\x0a\x00\x20\x00\x20\x01\xa0\x20\x02\xa2\x0b");
+assert_return(() => $$.exports["f32.no_distribute"](f32(-1.43511165338e+12), f32(-8.5361763654e+14), f32(1.11384932812e+18)), f32(-9.52399962045e+32));
+assert_return(() => $$.exports["f32.no_distribute"](f32(-0.0266666319221), f32(0.0484128221869), f32(-0.0028136970941)), f32(-6.11871946603e-05));
+assert_return(() => $$.exports["f32.no_distribute"](f32(-4.6619777266e-13), f32(1.04783769717e-19), f32(1.44692022693e+37)), f32(-6.74550852747e+24));
+assert_return(() => $$.exports["f32.no_distribute"](f32(-1.06890463028e-19), f32(1.06944332177e-25), f32(5.68307016526e+35)), f32(-6.07465356709e+16));
+assert_return(() => $$.exports["f32.no_distribute"](f32(-6.35459938038e-26), f32(7.52462484401e-22), f32(1626770.25)), f32(1.22398018472e-15));
+assert_return(() => $$.exports["f64.no_distribute"](2.8390554709988774e-128, 1.473981250649641e-139, -2.9001229846550766e-68), -8.233610026197337e-196);
+assert_return(() => $$.exports["f64.no_distribute"](6.461015505916123e-200, -2.3923242802975938e-304, -1.5300738798561604e-288), -0.0);
+assert_return(() => $$.exports["f64.no_distribute"](-2.939056292080733e-101, -2.146156743463356e-85, -2.5109672231302416e+144), 5.388929238536425e+59);
+assert_return(() => $$.exports["f64.no_distribute"](-1.7785466771708878e-87, 9.328516775403213e-79, -1.2121009044876735e-76), -1.1307103599436889e-154);
+assert_return(() => $$.exports["f64.no_distribute"](1.5194859063177362e-183, 8.83589921438065e-175, -1.7358300194691958e+147), -1.5337619131701907e-27);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x33\x02\x16\x66\x33\x32\x2e\x6e\x6f\x5f\x72\x65\x67\x72\x6f\x75\x70\x5f\x64\x69\x76\x5f\x6d\x75\x6c\x00\x00\x16\x66\x36\x34\x2e\x6e\x6f\x5f\x72\x65\x67\x72\x6f\x75\x70\x5f\x64\x69\x76\x5f\x6d\x75\x6c\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x20\x02\x95\x94\x0b\x0a\x00\x20\x00\x20\x01\x20\x02\xa3\xa2\x0b");
+assert_return(() => $$.exports["f32.no_regroup_div_mul"](f32(-2.83134890058e-35), f32(-7.2707870449e-20), f32(1.64066051041e-35)), f32(1.25474678151e-19));
+assert_return(() => $$.exports["f32.no_regroup_div_mul"](f32(-3.1458976993e+27), f32(-4.08640034173e-35), f32(-9.24592831559e+21)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_regroup_div_mul"](f32(-93157.4296875), f32(-8.12926543858e-07), f32(-1.54693967367e-37)), f32(-4.89548122418e+35));
+assert_return(() => $$.exports["f32.no_regroup_div_mul"](f32(-8.8996428284e-29), f32(1.78877246369e+22), f32(5.14680231878e+20)), f32(-3.09307295741e-27));
+assert_return(() => $$.exports["f32.no_regroup_div_mul"](f32(9.22203617957e+33), f32(33330492.0), f32(-3.25310876274e+21)), f32(-9.44865493251e+19));
+assert_return(() => $$.exports["f64.no_regroup_div_mul"](5.698811412550059e-128, -1.8313439132919336e-36, 9.543270551003098e-194), -1.093596114413331e+30);
+assert_return(() => $$.exports["f64.no_regroup_div_mul"](3.5728928842550755e+101, 3.952760844538651e-135, -1.4507812412549008e+240), -0.0);
+assert_return(() => $$.exports["f64.no_regroup_div_mul"](9.124278383497107e-145, 5.556134527714797e+271, 2.5090826940306507e-135), Infinity);
+assert_return(() => $$.exports["f64.no_regroup_div_mul"](-4.492093000352015e+144, -1.2087878984017852e+184, -5.966133806260623e+251), -9.101350780337626e+76);
+assert_return(() => $$.exports["f64.no_regroup_div_mul"](7.470269158630455e-181, 7.568026329781282e-265, -1.055389683973521e-252), -5.356807494101561e-193);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x33\x02\x16\x66\x33\x32\x2e\x6e\x6f\x5f\x72\x65\x67\x72\x6f\x75\x70\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x00\x00\x16\x66\x36\x34\x2e\x6e\x6f\x5f\x72\x65\x67\x72\x6f\x75\x70\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x94\x20\x02\x95\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x02\xa3\x0b");
+assert_return(() => $$.exports["f32.no_regroup_mul_div"](f32(-2.83134890058e-35), f32(-7.2707870449e-20), f32(1.64066051041e-35)), f32(0.0));
+assert_return(() => $$.exports["f32.no_regroup_mul_div"](f32(-3.1458976993e+27), f32(-4.08640034173e-35), f32(-9.24592831559e+21)), f32(-1.39038479919e-29));
+assert_return(() => $$.exports["f32.no_regroup_mul_div"](f32(-93157.4296875), f32(-8.12926543858e-07), f32(-1.54693967367e-37)), f32(-4.89548162032e+35));
+assert_return(() => $$.exports["f32.no_regroup_mul_div"](f32(-8.8996428284e-29), f32(1.78877246369e+22), f32(5.14680231878e+20)), f32(-3.09307315001e-27));
+assert_return(() => $$.exports["f32.no_regroup_mul_div"](f32(9.22203617957e+33), f32(33330492.0), f32(-3.25310876274e+21)), -Infinity);
+assert_return(() => $$.exports["f64.no_regroup_mul_div"](5.698811412550059e-128, -1.8313439132919336e-36, 9.543270551003098e-194), -1.0935961144133311e+30);
+assert_return(() => $$.exports["f64.no_regroup_mul_div"](3.5728928842550755e+101, 3.952760844538651e-135, -1.4507812412549008e+240), -9.734611044734945e-274);
+assert_return(() => $$.exports["f64.no_regroup_mul_div"](9.124278383497107e-145, 5.556134527714797e+271, 2.5090826940306507e-135), 2.0204881364667663e+262);
+assert_return(() => $$.exports["f64.no_regroup_mul_div"](-4.492093000352015e+144, -1.2087878984017852e+184, -5.966133806260623e+251), -Infinity);
+assert_return(() => $$.exports["f64.no_regroup_mul_div"](7.470269158630455e-181, 7.568026329781282e-265, -1.055389683973521e-252), -0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x11\x02\x60\x04\x7d\x7d\x7d\x7d\x01\x7d\x60\x04\x7c\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x33\x02\x16\x66\x33\x32\x2e\x6e\x6f\x5f\x72\x65\x61\x73\x73\x6f\x63\x69\x61\x74\x65\x5f\x61\x64\x64\x00\x00\x16\x66\x36\x34\x2e\x6e\x6f\x5f\x72\x65\x61\x73\x73\x6f\x63\x69\x61\x74\x65\x5f\x61\x64\x64\x00\x01\x0a\x1d\x02\x0d\x00\x20\x00\x20\x01\x92\x20\x02\x92\x20\x03\x92\x0b\x0d\x00\x20\x00\x20\x01\xa0\x20\x02\xa0\x20\x03\xa0\x0b");
+assert_return(() => $$.exports["f32.no_reassociate_add"](f32(-2.41543214531e+13), f32(26125811712.0), f32(-2.38608082534e+14), f32(-2.47895346381e+12)), f32(-2.65215220384e+14));
+assert_return(() => $$.exports["f32.no_reassociate_add"](f32(0.00361810531467), f32(-0.00985943991691), f32(0.0633753761649), f32(-0.0111501989886)), f32(0.0459838397801));
+assert_return(() => $$.exports["f32.no_reassociate_add"](f32(-34206967808.0), f32(-3.77087721472e+12), f32(3.08684248842e+13), f32(4.21132075008e+11)), f32(2.74844709028e+13));
+assert_return(() => $$.exports["f32.no_reassociate_add"](f32(1.53506392572e+14), f32(9.25114682049e+14), f32(-36021854208.0), f32(2.45084604649e+15)), f32(3.52943098298e+15));
+assert_return(() => $$.exports["f32.no_reassociate_add"](f32(4.70600313997e+32), f32(-3.96552040778e+32), f32(4.80669389449e+31), f32(-3.56440727576e+28)), f32(1.2207956336e+32));
+assert_return(() => $$.exports["f64.no_reassociate_add"](-2.070465292771702e+253, 1.5946897043763697e+255, 4.5110663655941613e+257, -1.3743335091868633e+258), -9.216528875759986e+257);
+assert_return(() => $$.exports["f64.no_reassociate_add"](3.485747658213531e-164, 3.1210957391311754e-164, -6.83008546431621e-164, -2.617177347131095e-179), -2.2324206697150536e-165);
+assert_return(() => $$.exports["f64.no_reassociate_add"](-5.4125849211227263e+132, 5.976036561703795e+122, -3.558300777933963e+131, 3.7362725995762544e+119), -5.768414998318146e+132);
+assert_return(() => $$.exports["f64.no_reassociate_add"](-6.469047714189599e-96, 6.4286584974746e-93, -2.1277698072285604e-79, 8.768287273189493e-79), 6.640517465960996e-79);
+assert_return(() => $$.exports["f64.no_reassociate_add"](-1.6422137086414828e+193, -8.803213793979071e+184, 4.4995705978285785e+194, -1.1409126716627439e+194), 3.1944365544213656e+194);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x11\x02\x60\x04\x7d\x7d\x7d\x7d\x01\x7d\x60\x04\x7c\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x33\x02\x16\x66\x33\x32\x2e\x6e\x6f\x5f\x72\x65\x61\x73\x73\x6f\x63\x69\x61\x74\x65\x5f\x6d\x75\x6c\x00\x00\x16\x66\x36\x34\x2e\x6e\x6f\x5f\x72\x65\x61\x73\x73\x6f\x63\x69\x61\x74\x65\x5f\x6d\x75\x6c\x00\x01\x0a\x1d\x02\x0d\x00\x20\x00\x20\x01\x94\x20\x02\x94\x20\x03\x94\x0b\x0d\x00\x20\x00\x20\x01\xa2\x20\x02\xa2\x20\x03\xa2\x0b");
+assert_return(() => $$.exports["f32.no_reassociate_mul"](f32(1.90451493983e-35), f32(2.25488613892e-10), f32(-6.9643218332e+30), f32(2.69028318134e-17)), f32(-7.876417295e-31));
+assert_return(() => $$.exports["f32.no_reassociate_mul"](f32(1.87331245909e-17), f32(-7.56590387278e+30), f32(-3.08076840654e-38), f32(-1.59275922903e+21)), f32(-0.00695472862571));
+assert_return(() => $$.exports["f32.no_reassociate_mul"](f32(5.03555750835e-15), f32(-5.64668842283e+16), f32(-1.17405119914e-12), f32(8.49847264083e+22)), f32(2.83706539377e+13));
+assert_return(() => $$.exports["f32.no_reassociate_mul"](f32(4.63949458882e-32), f32(2.54449361736e+23), f32(-7.24609773664e+16), f32(-9.62511035846e+17)), f32(8.23345112797e+26));
+assert_return(() => $$.exports["f32.no_reassociate_mul"](f32(-1.94205358914e-30), f32(2.32003552451e-15), f32(-9.77274799347), f32(8.64065987375e+17)), f32(3.51136163758e-26));
+assert_return(() => $$.exports["f64.no_reassociate_mul"](-3.109868654414946e-201, -2.0713190487745434e+298, -7.162612845524978e-114, -8.847825329596909e+199), 4.0822261813278614e+184);
+assert_return(() => $$.exports["f64.no_reassociate_mul"](6.044271641295681e+136, 6.700545015107397e-156, -3.1469664275798185e-271, -6.4016772956405615e+162), 8.159057447560471e-127);
+assert_return(() => $$.exports["f64.no_reassociate_mul"](2.216807720454268e-151, -1.8022341865367216e+237, 7.500283778521931e-230, -4.144121524339569e+26), 1.241793627299937e-116);
+assert_return(() => $$.exports["f64.no_reassociate_mul"](2.431806596629872e+208, 6.508014075793436e-128, 1.7596421287233897e+67, -1.416141401305358e-07), -3.943741918531223e+141);
+assert_return(() => $$.exports["f64.no_reassociate_mul"](3.849767156964772e-71, 7.0008754943224875e-239, -2.5368878252183865e+219, -6.101114518858449e-181), 4.171548126376117e-270);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x07\x06\x00\x01\x02\x02\x02\x02\x07\x55\x06\x11\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x30\x00\x00\x11\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x30\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x05\x0a\x93\x01\x06\x0a\x00\x20\x00\x43\x00\x00\x00\x00\x95\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.no_fold_div_0"](f32(1.0)), Infinity);
+assert_return(() => $$.exports["f32.no_fold_div_0"](f32(-1.0)), -Infinity);
+assert_return(() => $$.exports["f32.no_fold_div_0"](Infinity), Infinity);
+assert_return(() => $$.exports["f32.no_fold_div_0"](-Infinity), -Infinity);
+assert_return_nan(() => $$.exports["f32.no_fold_div_0"](f32(0.0)));
+assert_return_nan(() => $$.exports["f32.no_fold_div_0"](f32(-0.0)));
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f64.no_fold_div_0"](1.0), Infinity);
+assert_return(() => $$.exports["f64.no_fold_div_0"](-1.0), -Infinity);
+assert_return(() => $$.exports["f64.no_fold_div_0"](Infinity), Infinity);
+assert_return(() => $$.exports["f64.no_fold_div_0"](-Infinity), -Infinity);
+assert_return_nan(() => $$.exports["f64.no_fold_div_0"](0.0));
+assert_return_nan(() => $$.exports["f64.no_fold_div_0"](-0.0));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x07\x06\x00\x01\x02\x02\x02\x02\x07\x5b\x06\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6e\x65\x67\x30\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6e\x65\x67\x30\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x05\x0a\x93\x01\x06\x0a\x00\x20\x00\x43\x00\x00\x00\x80\x95\x0b\x0e\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\xa3\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x01\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.no_fold_div_neg0"](f32(1.0)), -Infinity);
+assert_return(() => $$.exports["f32.no_fold_div_neg0"](f32(-1.0)), Infinity);
+assert_return(() => $$.exports["f32.no_fold_div_neg0"](Infinity), -Infinity);
+assert_return(() => $$.exports["f32.no_fold_div_neg0"](-Infinity), Infinity);
+assert_return_nan(() => $$.exports["f32.no_fold_div_neg0"](f32(0.0)));
+assert_return_nan(() => $$.exports["f32.no_fold_div_neg0"](f32(-0.0)));
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f64.no_fold_div_neg0"](1.0), -Infinity);
+assert_return(() => $$.exports["f64.no_fold_div_neg0"](-1.0), Infinity);
+assert_return(() => $$.exports["f64.no_fold_div_neg0"](Infinity), -Infinity);
+assert_return(() => $$.exports["f64.no_fold_div_neg0"](-Infinity), Infinity);
+assert_return_nan(() => $$.exports["f64.no_fold_div_neg0"](0.0));
+assert_return_nan(() => $$.exports["f64.no_fold_div_neg0"](-0.0));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2f\x02\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x6f\x5f\x68\x79\x70\x6f\x74\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x6f\x5f\x68\x79\x70\x6f\x74\x00\x01\x0a\x1f\x02\x0e\x00\x20\x00\x20\x00\x94\x20\x01\x20\x01\x94\x92\x91\x0b\x0e\x00\x20\x00\x20\x00\xa2\x20\x01\x20\x01\xa2\xa0\x9f\x0b");
+assert_return(() => $$.exports["f32.no_fold_to_hypot"](f32(7.28549136358e-25), f32(4.2365795867e-21)), f32(4.23665349982e-21));
+assert_return(() => $$.exports["f32.no_fold_to_hypot"](f32(-7.47028507563e-22), f32(-7.45374502637e-33)), f32(7.46804395335e-22));
+assert_return(() => $$.exports["f32.no_fold_to_hypot"](f32(-7.70894992385e-35), f32(-3.26272143385e-21)), f32(3.26276949757e-21));
+assert_return(() => $$.exports["f32.no_fold_to_hypot"](f32(-35.4281806946), f32(174209.484375)), f32(174209.5));
+assert_return(() => $$.exports["f32.no_fold_to_hypot"](f32(2.0628143114e-23), f32(-4.63447527177e-22)), f32(4.63032018361e-22));
+assert_return(() => $$.exports["f64.no_fold_to_hypot"](3.863640258986321e-192, 1.9133014752624014e-161), 1.9120893753235554e-161);
+assert_return(() => $$.exports["f64.no_fold_to_hypot"](1.3856123895032977e+119, -2.828038515930043e+123), 2.8280385193244834e+123);
+assert_return(() => $$.exports["f64.no_fold_to_hypot"](6.502729096641792e-162, -4.544399933151275e-231), 6.668276248455232e-162);
+assert_return(() => $$.exports["f64.no_fold_to_hypot"](-2.2340232024202604e-157, 3.435929714143315e-221), 2.2340232023799234e-157);
+assert_return(() => $$.exports["f64.no_fold_to_hypot"](2.797963998630554e-202, -1.906867996862016e-155), 1.9068679968620105e-155);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7d\x01\x7d\x03\x02\x01\x00\x07\x21\x01\x1d\x66\x33\x32\x2e\x6e\x6f\x5f\x61\x70\x70\x72\x6f\x78\x69\x6d\x61\x74\x65\x5f\x72\x65\x63\x69\x70\x72\x6f\x63\x61\x6c\x00\x00\x0a\x0c\x01\x0a\x00\x43\x00\x00\x80\x3f\x20\x00\x95\x0b");
+assert_return(() => $$.exports["f32.no_approximate_reciprocal"](f32(-0.00113297568168)), f32(-882.631469727));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal"](f32(3.2375301439e+38)), f32(3.08877430493e-39));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal"](f32(-1.27259901639e-28)), f32(-7.85793459579e+27));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal"](f32(1.03020679146e+23)), f32(9.7067890772e-24));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal"](f32(-2.84437629095e-25)), f32(-3.51570932455e+24));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x44\x02\x22\x66\x33\x32\x2e\x6e\x6f\x5f\x61\x70\x70\x72\x6f\x78\x69\x6d\x61\x74\x65\x5f\x72\x65\x63\x69\x70\x72\x6f\x63\x61\x6c\x5f\x73\x71\x72\x74\x00\x00\x1b\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x75\x73\x65\x5f\x72\x65\x63\x69\x70\x72\x6f\x63\x61\x6c\x5f\x73\x71\x72\x74\x00\x01\x0a\x1d\x02\x0b\x00\x43\x00\x00\x80\x3f\x20\x00\x91\x95\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x20\x00\x9f\xa3\x0b");
+assert_return(() => $$.exports["f32.no_approximate_reciprocal_sqrt"](f32(1.61178646927e-13)), f32(2490842.5));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal_sqrt"](f32(0.00744913658127)), f32(11.5863599777));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal_sqrt"](f32(2.33981704128e-20)), f32(6537460224.0));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal_sqrt"](f32(1.11235043258e-13)), f32(2998328.25));
+assert_return(() => $$.exports["f32.no_approximate_reciprocal_sqrt"](f32(1.7653063085e-26)), f32(7.52644626842e+12));
+assert_return(() => $$.exports["f64.no_fuse_reciprocal_sqrt"](4.472459252766337e+267), 1.4952947335898096e-134);
+assert_return(() => $$.exports["f64.no_fuse_reciprocal_sqrt"](4.752392260007119e+93), 1.4505872638954843e-47);
+assert_return(() => $$.exports["f64.no_fuse_reciprocal_sqrt"](2.9014415885392436e+31), 1.8564920084793608e-16);
+assert_return(() => $$.exports["f64.no_fuse_reciprocal_sqrt"](1.3966125076974778e+201), 2.6758516751072132e-101);
+assert_return(() => $$.exports["f64.no_fuse_reciprocal_sqrt"](1.5159641544070443e+44), 8.121860649480894e-23);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7d\x01\x7d\x03\x02\x01\x00\x07\x26\x01\x22\x66\x33\x32\x2e\x6e\x6f\x5f\x61\x70\x70\x72\x6f\x78\x69\x6d\x61\x74\x65\x5f\x73\x71\x72\x74\x5f\x72\x65\x63\x69\x70\x72\x6f\x63\x61\x6c\x00\x00\x0a\x0d\x01\x0b\x00\x43\x00\x00\x80\x3f\x20\x00\x95\x91\x0b");
+assert_return(() => $$.exports["f32.no_approximate_sqrt_reciprocal"](f32(1.8950570813e+18)), f32(7.26421756081e-10));
+assert_return(() => $$.exports["f32.no_approximate_sqrt_reciprocal"](f32(0.00256589404307)), f32(19.7415218353));
+assert_return(() => $$.exports["f32.no_approximate_sqrt_reciprocal"](f32(6.32654487023e+20)), f32(3.97572842703e-11));
+assert_return(() => $$.exports["f32.no_approximate_sqrt_reciprocal"](f32(14153.5390625)), f32(0.00840557646006));
+assert_return(() => $$.exports["f32.no_approximate_sqrt_reciprocal"](f32(2.61737299828e+31)), f32(1.95464181645e-16));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x0b\x0a\x00\x00\x01\x01\x02\x02\x02\x02\x02\x02\x07\x93\x01\x0a\x11\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x66\x33\x32\x5f\x73\x00\x00\x11\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x66\x33\x32\x5f\x75\x00\x01\x11\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x66\x36\x34\x5f\x73\x00\x02\x11\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x66\x36\x34\x5f\x75\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x09\x0a\xe1\x01\x0a\x06\x00\x20\x00\xb2\xa8\x0b\x06\x00\x20\x00\xb3\xa9\x0b\x06\x00\x20\x00\xb9\xb0\x0b\x06\x00\x20\x00\xba\xb1\x0b\x1f\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x10\x10\x02\x42\x80\x80\x80\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x10\x10\x02\x42\x80\x80\x80\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x80\x88\x80\x80\x80\x80\x80\x80\x70\x10\x02\x42\x80\x88\x80\x80\x80\x80\x80\x80\x70\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x10\x10\x03\x42\x80\x80\x80\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x10\x10\x03\x42\x80\x80\x80\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x80\x88\x80\x80\x80\x80\x80\x80\x70\x10\x03\x42\x80\x80\x80\x80\x80\x80\x80\x80\x70\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_f32_s"](16777216), 16777216);
+assert_return(() => $$.exports["i32.no_fold_f32_s"](16777217), 16777216);
+assert_return(() => $$.exports["i32.no_fold_f32_s"](-268435440), -268435440);
+assert_return(() => $$.exports["i32.no_fold_f32_u"](16777216), 16777216);
+assert_return(() => $$.exports["i32.no_fold_f32_u"](16777217), 16777216);
+assert_return(() => $$.exports["i32.no_fold_f32_u"](-268435440), -268435456);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2d\x02\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x73\x75\x62\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x73\x75\x62\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x92\x20\x01\x93\x0b\x0a\x00\x20\x00\x20\x01\xa0\x20\x01\xa1\x0b");
+assert_return(() => $$.exports["f32.no_fold_add_sub"](f32(1.21382819838e-14), f32(-2.09463841827e-08)), f32(1.24344978758e-14));
+assert_return(() => $$.exports["f32.no_fold_add_sub"](f32(-1.97681970349e-07), f32(3.71545661437e-06)), f32(-1.97682084035e-07));
+assert_return(() => $$.exports["f32.no_fold_add_sub"](f32(-9.59621301639e+24), f32(-3.53804139699e+30)), f32(-9.67140655692e+24));
+assert_return(() => $$.exports["f32.no_fold_add_sub"](f32(5.05434581015e-24), f32(2.45726557561e-17)), f32(4.96308367532e-24));
+assert_return(() => $$.exports["f32.no_fold_add_sub"](f32(-3.36931468232e-33), f32(-7.10149165285e-26)), f32(-6.16297582204e-33));
+assert_return(() => $$.exports["f64.no_fold_add_sub"](-8.445702651973109e-264, 1.110684389828854e-258), -8.445702651873978e-264);
+assert_return(() => $$.exports["f64.no_fold_add_sub"](8.198798715927055e-165, 4.624035606110903e-159), 8.198798715897085e-165);
+assert_return(() => $$.exports["f64.no_fold_add_sub"](-1.3604511322066714e-09, -0.1751431740707098), -1.3604511406306585e-09);
+assert_return(() => $$.exports["f64.no_fold_add_sub"](-3.944335437865966e-103, 1.663809741322667e-92), -3.9443355500325104e-103);
+assert_return(() => $$.exports["f64.no_fold_add_sub"](-5.078309818866e-187, -1.0790431644461104e-177), -5.07831047937567e-187);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2d\x02\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x5f\x61\x64\x64\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x5f\x61\x64\x64\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x93\x20\x01\x92\x0b\x0a\x00\x20\x00\x20\x01\xa1\x20\x01\xa0\x0b");
+assert_return(() => $$.exports["f32.no_fold_sub_add"](f32(-676.474365234), f32(403.036804199)), f32(-676.47442627));
+assert_return(() => $$.exports["f32.no_fold_sub_add"](f32(-6.30594311841e-34), f32(3.67186006876e-29)), f32(-6.31945763002e-34));
+assert_return(() => $$.exports["f32.no_fold_sub_add"](f32(83184800.0), f32(46216216576.0)), f32(83185664.0));
+assert_return(() => $$.exports["f32.no_fold_sub_add"](f32(2.21195696308e-12), f32(-1.04379296317e-08)), f32(2.21156426505e-12));
+assert_return(() => $$.exports["f32.no_fold_sub_add"](f32(0.149443954229), f32(-27393.6503906)), f32(0.150390625));
+assert_return(() => $$.exports["f64.no_fold_sub_add"](9.036598261794624e+76, -9.58186427535552e+77), 9.036598261794628e+76);
+assert_return(() => $$.exports["f64.no_fold_sub_add"](4.4230403564658815e-201, 2.6713491049366576e-195), 4.423040356647721e-201);
+assert_return(() => $$.exports["f64.no_fold_sub_add"](4.095348452776429e+75, -4.0501900195765687e+90), 4.0708156372493975e+75);
+assert_return(() => $$.exports["f64.no_fold_sub_add"](2.4008889207554433e-08, -0.00017253797929188484), 2.400888920756506e-08);
+assert_return(() => $$.exports["f64.no_fold_sub_add"](4.3367542918305866e-111, -3.9597706708227122e-109), 4.336754291830597e-111);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2d\x02\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x94\x20\x01\x95\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x01\xa3\x0b");
+assert_return(() => $$.exports["f32.no_fold_mul_div"](f32(-3.24767151838e+16), f32(1.01213754107e-14)), f32(-3.24767130363e+16));
+assert_return(() => $$.exports["f32.no_fold_mul_div"](f32(-1.55611630248e-08), f32(1.57998283856e-32)), f32(-1.55611452612e-08));
+assert_return(() => $$.exports["f32.no_fold_mul_div"](f32(-6.7631100034e-15), f32(-4.41323995791e+14)), f32(-6.76310957988e-15));
+assert_return(() => $$.exports["f32.no_fold_mul_div"](f32(7.50561372668e+15), f32(-2.16038408049e+18)), f32(7.50561318981e+15));
+assert_return(() => $$.exports["f32.no_fold_mul_div"](f32(-2.36257605915e-28), f32(-1.08087592696e-11)), f32(-2.36257654064e-28));
+assert_return(() => $$.exports["f64.no_fold_mul_div"](-1.3532103713575586e-252, -3.347836467564916e-62), -1.3532103713672434e-252);
+assert_return(() => $$.exports["f64.no_fold_mul_div"](7.7662174313180845e+115, 1.9595915560693953e+176), 7.766217431318085e+115);
+assert_return(() => $$.exports["f64.no_fold_mul_div"](-7.180117811902948e+71, -9.320036042623636e-167), -7.1801178119029475e+71);
+assert_return(() => $$.exports["f64.no_fold_mul_div"](1.7260010724693063e-50, 3.568792428129926e-273), 1.661286799244216e-50);
+assert_return(() => $$.exports["f64.no_fold_mul_div"](-9.145223045828962e+198, -5.562094034342845e-99), -9.145223045828963e+198);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2d\x02\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6d\x75\x6c\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x6d\x75\x6c\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x95\x20\x01\x94\x0b\x0a\x00\x20\x00\x20\x01\xa3\x20\x01\xa2\x0b");
+assert_return(() => $$.exports["f32.no_fold_div_mul"](f32(-5.1151798272e+11), f32(986062208.0)), f32(-5.11517949952e+11));
+assert_return(() => $$.exports["f32.no_fold_div_mul"](f32(-2.49448529519e-16), f32(-4.15398335463e-06)), f32(-2.49448555988e-16));
+assert_return(() => $$.exports["f32.no_fold_div_mul"](f32(2.08278550051e-38), f32(-235.198471069)), f32(2.08280133518e-38));
+assert_return(() => $$.exports["f32.no_fold_div_mul"](f32(-6.24994868347e-23), f32(-6.96312604972e+17)), f32(-6.2499190223e-23));
+assert_return(() => $$.exports["f32.no_fold_div_mul"](f32(5.83535144053e-30), f32(212781120.0)), f32(5.83535181669e-30));
+assert_return(() => $$.exports["f64.no_fold_div_mul"](3.5984644259935362e-264, -2.881226329803332e+55), 3.5985034356565485e-264);
+assert_return(() => $$.exports["f64.no_fold_div_mul"](-1.7486367047479447e-215, 1.6508738454798636e-16), -1.748636704747945e-215);
+assert_return(() => $$.exports["f64.no_fold_div_mul"](-3.140341989542684e-44, 9.428298090819196e+128), -3.1403419895426836e-44);
+assert_return(() => $$.exports["f64.no_fold_div_mul"](-3.919745428533519e-84, -2.1314747179654705e+85), -3.9197454285335185e-84);
+assert_return(() => $$.exports["f64.no_fold_div_mul"](-5.734160003788982e+186, 6.350805843612229e+297), -5.734160003788981e+186);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7c\x01\x7c\x03\x02\x01\x00\x07\x1a\x01\x16\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x65\x6d\x6f\x74\x65\x5f\x70\x72\x6f\x6d\x6f\x74\x65\x00\x00\x0a\x08\x01\x06\x00\x20\x00\xb6\xbb\x0b");
+assert_return(() => $$.exports["no_fold_demote_promote"](-1.7176297220569481e-40), -1.7176275796615013e-40);
+assert_return(() => $$.exports["no_fold_demote_promote"](-2.8464775573304055e-26), -2.846477619188087e-26);
+assert_return(() => $$.exports["no_fold_demote_promote"](2.0897069969990923e+32), 2.08970700445326e+32);
+assert_return(() => $$.exports["no_fold_demote_promote"](-4.7074160416121775e-27), -4.7074161331556024e-27);
+assert_return(() => $$.exports["no_fold_demote_promote"](2.335945149795088e+31), 2.3359452224542198e+31);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x01\x7d\x01\x7d\x60\x00\x00\x03\x03\x02\x00\x01\x07\x25\x02\x16\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x70\x72\x6f\x6d\x6f\x74\x65\x5f\x64\x65\x6d\x6f\x74\x65\x00\x00\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x01\x0a\x22\x02\x06\x00\x20\x00\xbb\xb6\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(1.40129846432e-45)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(-1.40129846432e-45)), f32(-1.40129846432e-45));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(1.17549421069e-38)), f32(1.17549421069e-38));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(-1.17549421069e-38)), f32(-1.17549421069e-38));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(1.17549435082e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(-1.17549435082e-38)), f32(-1.17549435082e-38));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(3.40282346639e+38)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["no_fold_promote_demote"](f32(-3.40282346639e+38)), f32(-3.40282346639e+38));
+assert_return(() => $$.exports["no_fold_promote_demote"](Infinity), Infinity);
+assert_return(() => $$.exports["no_fold_promote_demote"](-Infinity), -Infinity);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7c\x7d\x01\x7d\x60\x02\x7d\x7c\x01\x7d\x03\x03\x02\x00\x01\x07\x36\x02\x13\x6e\x6f\x5f\x64\x65\x6d\x6f\x74\x65\x5f\x6d\x69\x78\x65\x64\x5f\x61\x64\x64\x00\x00\x1c\x6e\x6f\x5f\x64\x65\x6d\x6f\x74\x65\x5f\x6d\x69\x78\x65\x64\x5f\x61\x64\x64\x5f\x63\x6f\x6d\x6d\x75\x74\x65\x64\x00\x01\x0a\x15\x02\x09\x00\x20\x00\x20\x01\xbb\xa0\xb6\x0b\x09\x00\x20\x00\xbb\x20\x01\xa0\xb6\x0b");
+assert_return(() => $$.exports["no_demote_mixed_add"](4.941266527909197e-29, f32(1.8767182723e-36)), f32(4.94126667572e-29));
+assert_return(() => $$.exports["no_demote_mixed_add"](140851523637.69385, f32(4.01096441856e+11)), f32(5.41947953152e+11));
+assert_return(() => $$.exports["no_demote_mixed_add"](2.0831160914192852e-36, f32(-6.05009513354e-37)), f32(1.47810657028e-36));
+assert_return(() => $$.exports["no_demote_mixed_add"](-1.0032827553674626e-06, f32(1.93129179316e-09)), f32(-1.0013515066e-06));
+assert_return(() => $$.exports["no_demote_mixed_add"](-1.3840207035752711e-06, f32(-5.20281409101e-13)), f32(-1.384021175e-06));
+assert_return(() => $$.exports["no_demote_mixed_add_commuted"](f32(1.8767182723e-36), 4.941266527909197e-29), f32(4.94126667572e-29));
+assert_return(() => $$.exports["no_demote_mixed_add_commuted"](f32(4.01096441856e+11), 140851523637.69385), f32(5.41947953152e+11));
+assert_return(() => $$.exports["no_demote_mixed_add_commuted"](f32(-6.05009513354e-37), 2.0831160914192852e-36), f32(1.47810657028e-36));
+assert_return(() => $$.exports["no_demote_mixed_add_commuted"](f32(1.93129179316e-09), -1.0032827553674626e-06), f32(-1.0013515066e-06));
+assert_return(() => $$.exports["no_demote_mixed_add_commuted"](f32(-5.20281409101e-13), -1.3840207035752711e-06), f32(-1.384021175e-06));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x07\x01\x60\x02\x7c\x7d\x01\x7d\x03\x02\x01\x00\x07\x17\x01\x13\x6e\x6f\x5f\x64\x65\x6d\x6f\x74\x65\x5f\x6d\x69\x78\x65\x64\x5f\x73\x75\x62\x00\x00\x0a\x0b\x01\x09\x00\x20\x00\x20\x01\xbb\xa1\xb6\x0b");
+assert_return(() => $$.exports["no_demote_mixed_sub"](7.869935327202668e+24, f32(4.08634705926e+18)), f32(7.8699309654e+24));
+assert_return(() => $$.exports["no_demote_mixed_sub"](-1535841968.9056544, f32(239897.28125)), f32(-1536081920.0));
+assert_return(() => $$.exports["no_demote_mixed_sub"](-102.19459272722602, f32(0.000394261383917)), f32(-102.194984436));
+assert_return(() => $$.exports["no_demote_mixed_sub"](5.645470375565188e-17, f32(5.85107700707e-22)), f32(5.64541172772e-17));
+assert_return(() => $$.exports["no_demote_mixed_sub"](27090.388466832894, f32(63120.890625)), f32(-36030.5039062));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x11\x10\x00\x00\x00\x00\x01\x01\x01\x01\x00\x00\x00\x00\x01\x01\x01\x01\x07\xc1\x04\x10\x21\x66\x33\x32\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x00\x21\x66\x33\x32\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x01\x21\x66\x33\x32\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x02\x21\x66\x33\x32\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x03\x21\x66\x36\x34\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x04\x21\x66\x36\x34\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x05\x21\x66\x36\x34\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x06\x21\x66\x36\x34\x2e\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x07\x21\x66\x33\x32\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x08\x21\x66\x33\x32\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x09\x21\x66\x33\x32\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x0a\x21\x66\x33\x32\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x0b\x21\x66\x36\x34\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x0c\x21\x66\x36\x34\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x73\x00\x0d\x21\x66\x36\x34\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x73\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x0e\x21\x66\x36\x34\x2e\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x74\x72\x75\x6e\x63\x5f\x75\x5f\x63\x6f\x6e\x76\x65\x72\x74\x5f\x75\x00\x0f\x0a\x71\x10\x06\x00\x20\x00\xa8\xb2\x0b\x06\x00\x20\x00\xa9\xb2\x0b\x06\x00\x20\x00\xa8\xb3\x0b\x06\x00\x20\x00\xa9\xb3\x0b\x06\x00\x20\x00\xaa\xb7\x0b\x06\x00\x20\x00\xab\xb7\x0b\x06\x00\x20\x00\xaa\xb8\x0b\x06\x00\x20\x00\xab\xb8\x0b\x06\x00\x20\x00\xae\xb4\x0b\x06\x00\x20\x00\xaf\xb4\x0b\x06\x00\x20\x00\xae\xb5\x0b\x06\x00\x20\x00\xaf\xb5\x0b\x06\x00\x20\x00\xb0\xb9\x0b\x06\x00\x20\x00\xb1\xb9\x0b\x06\x00\x20\x00\xb0\xba\x0b\x06\x00\x20\x00\xb1\xba\x0b");
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_s_convert_s"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_s_convert_s"](f32(-1.5)), f32(-1.0));
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_u_convert_s"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_u_convert_s"](f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_s_convert_u"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_s_convert_u"](f32(-1.5)), f32(4294967296.0));
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_u_convert_u"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i32.no_fold_trunc_u_convert_u"](f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_s_convert_s"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_s_convert_s"](-1.5), -1.0);
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_u_convert_s"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_u_convert_s"](-0.5), 0.0);
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_s_convert_u"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_s_convert_u"](-1.5), 4294967295.0);
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_u_convert_u"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i32.no_fold_trunc_u_convert_u"](-0.5), 0.0);
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_s_convert_s"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_s_convert_s"](f32(-1.5)), f32(-1.0));
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_u_convert_s"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_u_convert_s"](f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_s_convert_u"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_s_convert_u"](f32(-1.5)), f32(1.84467440737e+19));
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_u_convert_u"](f32(1.5)), f32(1.0));
+assert_return(() => $$.exports["f32.i64.no_fold_trunc_u_convert_u"](f32(-0.5)), f32(0.0));
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_s_convert_s"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_s_convert_s"](-1.5), -1.0);
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_u_convert_s"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_u_convert_s"](-0.5), 0.0);
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_s_convert_u"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_s_convert_u"](-1.5), 1.8446744073709552e+19);
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_u_convert_u"](1.5), 1.0);
+assert_return(() => $$.exports["f64.i64.no_fold_trunc_u_convert_u"](-0.5), 0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x02\x7f\x7d\x00\x60\x01\x7f\x01\x7d\x03\x04\x03\x00\x00\x01\x05\x04\x01\x01\x01\x01\x07\x16\x03\x04\x69\x6e\x69\x74\x00\x00\x03\x72\x75\x6e\x00\x01\x05\x63\x68\x65\x63\x6b\x00\x02\x0a\x39\x03\x09\x00\x20\x00\x20\x01\x38\x02\x00\x0b\x25\x01\x01\x7f\x02\x40\x03\x40\x20\x02\x20\x02\x2a\x02\x00\x20\x01\x95\x38\x02\x00\x20\x02\x41\x04\x6a\x21\x02\x20\x02\x20\x00\x49\x0d\x00\x0b\x0b\x0b\x07\x00\x20\x00\x2a\x02\x00\x0b");
+$$.exports["init"](0, f32(15.1000003815));
+$$.exports["init"](4, f32(15.1999998093));
+$$.exports["init"](8, f32(15.3000001907));
+$$.exports["init"](12, f32(15.3999996185));
+assert_return(() => $$.exports["check"](0), f32(15.1000003815));
+assert_return(() => $$.exports["check"](4), f32(15.1999998093));
+assert_return(() => $$.exports["check"](8), f32(15.3000001907));
+assert_return(() => $$.exports["check"](12), f32(15.3999996185));
+$$.exports["run"](16, f32(3.0));
+assert_return(() => $$.exports["check"](0), f32(5.03333330154));
+assert_return(() => $$.exports["check"](4), f32(5.06666660309));
+assert_return(() => $$.exports["check"](8), f32(5.09999990463));
+assert_return(() => $$.exports["check"](12), f32(5.13333320618));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x02\x7f\x7c\x00\x60\x01\x7f\x01\x7c\x03\x04\x03\x00\x00\x01\x05\x04\x01\x01\x01\x01\x07\x16\x03\x04\x69\x6e\x69\x74\x00\x00\x03\x72\x75\x6e\x00\x01\x05\x63\x68\x65\x63\x6b\x00\x02\x0a\x39\x03\x09\x00\x20\x00\x20\x01\x39\x03\x00\x0b\x25\x01\x01\x7f\x02\x40\x03\x40\x20\x02\x20\x02\x2b\x03\x00\x20\x01\xa3\x39\x03\x00\x20\x02\x41\x08\x6a\x21\x02\x20\x02\x20\x00\x49\x0d\x00\x0b\x0b\x0b\x07\x00\x20\x00\x2b\x03\x00\x0b");
+$$.exports["init"](0, 15.1);
+$$.exports["init"](8, 15.2);
+$$.exports["init"](16, 15.3);
+$$.exports["init"](24, 15.4);
+assert_return(() => $$.exports["check"](0), 15.1);
+assert_return(() => $$.exports["check"](8), 15.2);
+assert_return(() => $$.exports["check"](16), 15.3);
+assert_return(() => $$.exports["check"](24), 15.4);
+$$.exports["run"](32, 3.0);
+assert_return(() => $$.exports["check"](0), 5.033333333333333);
+assert_return(() => $$.exports["check"](8), 5.066666666666666);
+assert_return(() => $$.exports["check"](16), 5.1000000000000005);
+assert_return(() => $$.exports["check"](24), 5.133333333333334);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7d\x7d\x01\x7f\x60\x02\x7c\x7c\x01\x7f\x60\x00\x00\x03\x11\x10\x00\x00\x00\x00\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x07\xa9\x01\x10\x07\x66\x33\x32\x2e\x75\x6c\x74\x00\x00\x07\x66\x33\x32\x2e\x75\x6c\x65\x00\x01\x07\x66\x33\x32\x2e\x75\x67\x74\x00\x02\x07\x66\x33\x32\x2e\x75\x67\x65\x00\x03\x07\x66\x36\x34\x2e\x75\x6c\x74\x00\x04\x07\x66\x36\x34\x2e\x75\x6c\x65\x00\x05\x07\x66\x36\x34\x2e\x75\x67\x74\x00\x06\x07\x66\x36\x34\x2e\x75\x67\x65\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x0a\xb9\x02\x10\x08\x00\x20\x00\x20\x01\x60\x45\x0b\x08\x00\x20\x00\x20\x01\x5e\x45\x0b\x08\x00\x20\x00\x20\x01\x5f\x45\x0b\x08\x00\x20\x00\x20\x01\x5d\x45\x0b\x08\x00\x20\x00\x20\x01\x66\x45\x0b\x08\x00\x20\x00\x20\x01\x64\x45\x0b\x08\x00\x20\x00\x20\x01\x65\x45\x0b\x08\x00\x20\x00\x20\x01\x63\x45\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x40\x43\x00\x00\xc0\x7f\x10\x00\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x40\x43\x00\x00\xc0\x7f\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x40\x43\x00\x00\xc0\x7f\x10\x02\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x40\x43\x00\x00\xc0\x7f\x10\x03\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x07\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.ult"](f32(3.0), f32(2.0)), 0);
+assert_return(() => $$.exports["f32.ult"](f32(2.0), f32(2.0)), 0);
+assert_return(() => $$.exports["f32.ult"](f32(2.0), f32(3.0)), 1);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["f32.ule"](f32(3.0), f32(2.0)), 0);
+assert_return(() => $$.exports["f32.ule"](f32(2.0), f32(2.0)), 1);
+assert_return(() => $$.exports["f32.ule"](f32(2.0), f32(3.0)), 1);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f32.ugt"](f32(3.0), f32(2.0)), 1);
+assert_return(() => $$.exports["f32.ugt"](f32(2.0), f32(2.0)), 0);
+assert_return(() => $$.exports["f32.ugt"](f32(2.0), f32(3.0)), 0);
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["f32.uge"](f32(3.0), f32(2.0)), 1);
+assert_return(() => $$.exports["f32.uge"](f32(2.0), f32(2.0)), 1);
+assert_return(() => $$.exports["f32.uge"](f32(2.0), f32(3.0)), 0);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["f64.ult"](3.0, 2.0), 0);
+assert_return(() => $$.exports["f64.ult"](2.0, 2.0), 0);
+assert_return(() => $$.exports["f64.ult"](2.0, 3.0), 1);
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["f64.ule"](3.0, 2.0), 0);
+assert_return(() => $$.exports["f64.ule"](2.0, 2.0), 1);
+assert_return(() => $$.exports["f64.ule"](2.0, 3.0), 1);
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f64.ugt"](3.0, 2.0), 1);
+assert_return(() => $$.exports["f64.ugt"](2.0, 2.0), 0);
+assert_return(() => $$.exports["f64.ugt"](2.0, 3.0), 0);
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["f64.uge"](3.0, 2.0), 1);
+assert_return(() => $$.exports["f64.uge"](2.0, 2.0), 1);
+assert_return(() => $$.exports["f64.uge"](2.0, 3.0), 0);
+assert_return(() => $$.exports["assert_7"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x60\x00\x00\x03\x19\x18\x00\x00\x00\x00\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\xf7\x02\x18\x15\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x73\x65\x6c\x65\x63\x74\x00\x00\x15\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x73\x65\x6c\x65\x63\x74\x00\x01\x15\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x73\x65\x6c\x65\x63\x74\x00\x02\x15\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x73\x65\x6c\x65\x63\x74\x00\x03\x15\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x73\x65\x6c\x65\x63\x74\x00\x04\x15\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x73\x65\x6c\x65\x63\x74\x00\x05\x15\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x73\x65\x6c\x65\x63\x74\x00\x06\x15\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x73\x65\x6c\x65\x63\x74\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x10\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x11\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x12\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x13\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x14\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x15\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x16\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x17\x0a\xb9\x05\x18\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x5d\x1b\x0b\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x5f\x1b\x0b\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x5e\x1b\x0b\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x60\x1b\x0b\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x63\x1b\x0b\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x65\x1b\x0b\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x64\x1b\x0b\x0c\x00\x20\x00\x20\x01\x20\x00\x20\x01\x66\x1b\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x00\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x01\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x02\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x03\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f32.no_fold_lt_select"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_lt_select"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["f32.no_fold_le_select"](f32(0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_le_select"](f32(-0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f32.no_fold_gt_select"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_gt_select"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["f32.no_fold_ge_select"](f32(0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_ge_select"](f32(-0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["f64.no_fold_lt_select"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_lt_select"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["f64.no_fold_le_select"](0.0, -0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_le_select"](-0.0, 0.0), -0.0);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["f64.no_fold_gt_select"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_gt_select"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["f64.no_fold_ge_select"](0.0, -0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_ge_select"](-0.0, 0.0), -0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x60\x00\x00\x03\x19\x18\x00\x00\x00\x00\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\xd7\x02\x18\x11\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x69\x66\x00\x00\x11\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x69\x66\x00\x01\x11\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x69\x66\x00\x02\x11\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x69\x66\x00\x03\x11\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x69\x66\x00\x04\x11\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x69\x66\x00\x05\x11\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x69\x66\x00\x06\x11\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x69\x66\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x10\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x11\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x12\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x13\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x14\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x15\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x16\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x17\x0a\xd1\x05\x18\x0f\x00\x20\x00\x20\x01\x5d\x04\x7d\x20\x00\x05\x20\x01\x0b\x0b\x0f\x00\x20\x00\x20\x01\x5f\x04\x7d\x20\x00\x05\x20\x01\x0b\x0b\x0f\x00\x20\x00\x20\x01\x5e\x04\x7d\x20\x00\x05\x20\x01\x0b\x0b\x0f\x00\x20\x00\x20\x01\x60\x04\x7d\x20\x00\x05\x20\x01\x0b\x0b\x0f\x00\x20\x00\x20\x01\x63\x04\x7c\x20\x00\x05\x20\x01\x0b\x0b\x0f\x00\x20\x00\x20\x01\x65\x04\x7c\x20\x00\x05\x20\x01\x0b\x0b\x0f\x00\x20\x00\x20\x01\x64\x04\x7c\x20\x00\x05\x20\x01\x0b\x0b\x0f\x00\x20\x00\x20\x01\x66\x04\x7c\x20\x00\x05\x20\x01\x0b\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x00\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x01\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x01\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x02\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x03\xbc\x43\x00\x00\x00\x00\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f32.no_fold_lt_if"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_lt_if"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["f32.no_fold_le_if"](f32(0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_le_if"](f32(-0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f32.no_fold_gt_if"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_gt_if"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["f32.no_fold_ge_if"](f32(0.0), f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_ge_if"](f32(-0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["f64.no_fold_lt_if"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_lt_if"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["f64.no_fold_le_if"](0.0, -0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_le_if"](-0.0, 0.0), -0.0);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["f64.no_fold_gt_if"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_gt_if"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["f64.no_fold_ge_if"](0.0, -0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_ge_if"](-0.0, 0.0), -0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x19\x18\x00\x00\x00\x00\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\xaf\x03\x18\x1c\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x00\x1c\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x01\x1c\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x02\x1c\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x03\x1c\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x04\x1c\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x05\x1c\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x06\x1c\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x73\x65\x6c\x65\x63\x74\x5f\x74\x6f\x5f\x61\x62\x73\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x10\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x11\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x12\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x13\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x14\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x15\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x16\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x17\x0a\xf9\x04\x18\x10\x00\x20\x00\x8c\x20\x00\x20\x00\x43\x00\x00\x00\x00\x5d\x1b\x0b\x10\x00\x20\x00\x8c\x20\x00\x20\x00\x43\x00\x00\x00\x80\x5f\x1b\x0b\x10\x00\x20\x00\x20\x00\x8c\x20\x00\x43\x00\x00\x00\x80\x5e\x1b\x0b\x10\x00\x20\x00\x20\x00\x8c\x20\x00\x43\x00\x00\x00\x00\x60\x1b\x0b\x14\x00\x20\x00\x9a\x20\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x63\x1b\x0b\x14\x00\x20\x00\x9a\x20\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\x65\x1b\x0b\x14\x00\x20\x00\x20\x00\x9a\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\x64\x1b\x0b\x14\x00\x20\x00\x20\x00\x9a\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x66\x1b\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x01\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x02\xbc\x43\x00\x00\xa0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x03\xbc\x43\x00\x00\xa0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f32.no_fold_lt_select_to_abs"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_lt_select_to_abs"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["f32.no_fold_le_select_to_abs"](f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_le_select_to_abs"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f32.no_fold_gt_select_to_abs"](f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_gt_select_to_abs"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["f32.no_fold_ge_select_to_abs"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_ge_select_to_abs"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["f64.no_fold_lt_select_to_abs"](0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_lt_select_to_abs"](-0.0), -0.0);
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["f64.no_fold_le_select_to_abs"](0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_le_select_to_abs"](-0.0), 0.0);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["f64.no_fold_gt_select_to_abs"](0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_gt_select_to_abs"](-0.0), 0.0);
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["f64.no_fold_ge_select_to_abs"](0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_ge_select_to_abs"](-0.0), -0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x19\x18\x00\x00\x00\x00\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\x8f\x03\x18\x18\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x00\x18\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x01\x18\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x02\x18\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x03\x18\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x74\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x04\x18\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6c\x65\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x05\x18\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x74\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x06\x18\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x67\x65\x5f\x69\x66\x5f\x74\x6f\x5f\x61\x62\x73\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x10\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x11\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x12\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x13\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x14\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x15\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x16\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x17\x0a\x91\x05\x18\x13\x00\x20\x00\x43\x00\x00\x00\x00\x5d\x04\x7d\x20\x00\x8c\x05\x20\x00\x0b\x0b\x13\x00\x20\x00\x43\x00\x00\x00\x80\x5f\x04\x7d\x20\x00\x8c\x05\x20\x00\x0b\x0b\x13\x00\x20\x00\x43\x00\x00\x00\x80\x5e\x04\x7d\x20\x00\x05\x20\x00\x8c\x0b\x0b\x13\x00\x20\x00\x43\x00\x00\x00\x00\x60\x04\x7d\x20\x00\x05\x20\x00\x8c\x0b\x0b\x17\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x63\x04\x7c\x20\x00\x9a\x05\x20\x00\x0b\x0b\x17\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\x65\x04\x7c\x20\x00\x9a\x05\x20\x00\x0b\x0b\x17\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\x64\x04\x7c\x20\x00\x05\x20\x00\x9a\x0b\x0b\x17\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x66\x04\x7c\x20\x00\x05\x20\x00\x9a\x0b\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x00\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x01\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x01\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x02\xbc\x43\x00\x00\xa0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xa0\x7f\x10\x03\xbc\x43\x00\x00\xa0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x03\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x04\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x05\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x06\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x07\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f32.no_fold_lt_if_to_abs"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_lt_if_to_abs"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["f32.no_fold_le_if_to_abs"](f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_le_if_to_abs"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f32.no_fold_gt_if_to_abs"](f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_gt_if_to_abs"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["f32.no_fold_ge_if_to_abs"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_ge_if_to_abs"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["f64.no_fold_lt_if_to_abs"](0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_lt_if_to_abs"](-0.0), -0.0);
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["f64.no_fold_le_if_to_abs"](0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_le_if_to_abs"](-0.0), 0.0);
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["f64.no_fold_gt_if_to_abs"](0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_gt_if_to_abs"](-0.0), 0.0);
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["f64.no_fold_ge_if_to_abs"](0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_ge_if_to_abs"](-0.0), -0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x03\x02\x01\x00\x07\x18\x01\x14\x69\x6e\x63\x6f\x72\x72\x65\x63\x74\x5f\x63\x6f\x72\x72\x65\x63\x74\x69\x6f\x6e\x00\x00\x0a\x1b\x01\x19\x00\x43\xbe\x9f\xaa\x3f\x43\xcd\xcc\x9c\x3f\x92\x43\xbe\x9f\xaa\x3f\x93\x43\xcd\xcc\x9c\x3f\x93\x0b");
+assert_return(() => $$.exports["incorrect_correction"](), f32(1.19209289551e-07));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x07\x18\x01\x14\x69\x6e\x63\x6f\x72\x72\x65\x63\x74\x5f\x63\x6f\x72\x72\x65\x63\x74\x69\x6f\x6e\x00\x00\x0a\x2b\x01\x29\x00\x44\x87\x16\xd9\xce\xf7\x53\xf5\x3f\x44\x9a\x99\x99\x99\x99\x99\xf3\x3f\xa0\x44\x87\x16\xd9\xce\xf7\x53\xf5\x3f\xa1\x44\x9a\x99\x99\x99\x99\x99\xf3\x3f\xa1\x0b");
+assert_return(() => $$.exports["incorrect_correction"](), -2.220446049250313e-16);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x03\x02\x01\x00\x07\x0d\x01\x09\x63\x61\x6c\x63\x75\x6c\x61\x74\x65\x00\x00\x0a\x4a\x01\x48\x01\x05\x7d\x43\x00\x40\x1c\x43\x21\x00\x43\x55\x55\x50\x43\x21\x01\x43\x15\xc7\xe3\x3f\x21\x02\x20\x01\x8c\x20\x00\x94\x20\x00\x20\x02\x94\x20\x01\x93\x95\x21\x03\x20\x01\x8c\x20\x00\x94\x20\x00\x20\x02\x94\x20\x01\x93\x95\x21\x04\x02\x40\x20\x03\x20\x04\x5b\x0d\x00\x00\x0b\x20\x04\x0b");
+assert_return(() => $$.exports["calculate"](), f32(-466.926849365));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x07\x0d\x01\x09\x63\x61\x6c\x63\x75\x6c\x61\x74\x65\x00\x00\x0a\x56\x01\x54\x01\x05\x7c\x44\x00\x00\x00\x00\x00\x88\x63\x40\x21\x00\x44\x4b\x06\xab\xaa\xaa\x0a\x6a\x40\x21\x01\x44\x96\xd0\xe3\xaa\xe2\x78\xfc\x3f\x21\x02\x20\x01\x9a\x20\x00\xa2\x20\x00\x20\x02\xa2\x20\x01\xa1\xa3\x21\x03\x20\x01\x9a\x20\x00\xa2\x20\x00\x20\x02\xa2\x20\x01\xa1\xa3\x21\x04\x02\x40\x20\x03\x20\x04\x61\x0d\x00\x00\x0b\x20\x04\x0b");
+assert_return(() => $$.exports["calculate"](), -466.926956301738);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7d\x01\x7d\x03\x02\x01\x00\x07\x10\x01\x0c\x6c\x6c\x76\x6d\x5f\x70\x72\x32\x36\x37\x34\x36\x00\x00\x0a\x12\x01\x10\x00\x43\x00\x00\x00\x00\x43\x00\x00\x00\x80\x20\x00\x93\x93\x0b");
+assert_return(() => $$.exports["llvm_pr26746"](f32(-0.0)), f32(0.0));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7d\x03\x02\x01\x00\x07\x10\x01\x0c\x6c\x6c\x76\x6d\x5f\x70\x72\x32\x37\x31\x35\x33\x00\x00\x0a\x14\x01\x12\x00\x20\x00\x41\xff\xff\xff\xff\x00\x71\xb2\x43\x00\x00\x00\xcb\x92\x0b");
+assert_return(() => $$.exports["llvm_pr27153"](33554434), f32(25165824.0));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x07\x01\x60\x02\x7f\x7f\x01\x7d\x03\x02\x01\x00\x07\x10\x01\x0c\x6c\x6c\x76\x6d\x5f\x70\x72\x32\x37\x30\x33\x36\x00\x00\x0a\x17\x01\x15\x00\x20\x00\x41\xcb\xff\x87\x74\x72\xb2\x20\x01\x41\x80\x80\x90\x07\x71\xb2\x92\x0b");
+assert_return(() => $$.exports["llvm_pr27036"](-25034805, 14942208), f32(-10092596.0));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x17\x03\x60\x04\x7c\x7c\x7c\x7c\x01\x7c\x60\x03\x7c\x7c\x7c\x01\x7c\x60\x03\x7d\x7d\x7d\x01\x7d\x03\x04\x03\x00\x01\x02\x07\x22\x03\x08\x74\x68\x65\x70\x61\x73\x74\x30\x00\x00\x08\x74\x68\x65\x70\x61\x73\x74\x31\x00\x01\x08\x74\x68\x65\x70\x61\x73\x74\x32\x00\x02\x0a\x25\x03\x0d\x00\x20\x00\x20\x01\xa2\x20\x02\x20\x03\xa2\xa3\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x02\xa1\x0b\x0a\x00\x20\x00\x20\x01\x94\x20\x02\x94\x0b");
+assert_return(() => $$.exports["thepast0"](4.450147717014403e-308, 0.9999999999999999, 2.0, 0.5), 4.4501477170144023e-308);
+assert_return(() => $$.exports["thepast1"](5.551115123125783e-17, 0.9999999999999999, 5.551115123125783e-17), -6.162975822039155e-33);
+assert_return(() => $$.exports["thepast2"](f32(2.35098870164e-38), f32(0.5), f32(1.0)), f32(1.17549435082e-38));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7d\x01\x7d\x03\x02\x01\x00\x07\x0b\x01\x07\x69\x6e\x76\x65\x72\x73\x65\x00\x00\x0a\x0c\x01\x0a\x00\x43\x00\x00\x80\x3f\x20\x00\x95\x0b");
+assert_return(() => $$.exports["inverse"](f32(96.0)), f32(0.0104166669771));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x27\x02\x10\x66\x33\x32\x5f\x73\x71\x72\x74\x5f\x6d\x69\x6e\x75\x73\x5f\x32\x00\x00\x10\x66\x36\x34\x5f\x73\x71\x72\x74\x5f\x6d\x69\x6e\x75\x73\x5f\x32\x00\x01\x0a\x1d\x02\x0b\x00\x20\x00\x91\x43\x00\x00\x00\x40\x93\x0b\x0f\x00\x20\x00\x9f\x44\x00\x00\x00\x00\x00\x00\x00\x40\xa1\x0b");
+assert_return(() => $$.exports["f32_sqrt_minus_2"](f32(4.0)), f32(0.0));
+assert_return(() => $$.exports["f64_sqrt_minus_2"](4.0), 0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x35\x02\x17\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x72\x65\x63\x69\x70\x5f\x72\x65\x63\x69\x70\x00\x00\x17\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x72\x65\x63\x69\x70\x5f\x72\x65\x63\x69\x70\x00\x01\x0a\x2b\x02\x10\x00\x43\x00\x00\x80\x3f\x43\x00\x00\x80\x3f\x20\x00\x95\x95\x0b\x18\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x20\x00\xa3\xa3\x0b");
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](f32(-7.04357879987e+19)), f32(-7.04357836006e+19));
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](f32(1.24661006725e-23)), f32(1.24660998836e-23));
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](f32(9.71845454401e-20)), f32(9.71845519024e-20));
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](f32(-30.4007587433)), f32(-30.4007606506));
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](f32(2.33165919039e+21)), f32(2.33165904965e+21));
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](-Infinity), -Infinity);
+assert_return(() => $$.exports["f32.no_fold_recip_recip"](Infinity), Infinity);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](-6.5797153436288686e+44), -6.579715343628869e+44);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](-1.4424693186857643e+20), -1.4424693186857642e+20);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](1.8499468920623135e+50), 1.8499468920623133e+50);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](5.779584288006583e-207), 5.779584288006582e-207);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](5.150117869614164e+271), 5.1501178696141634e+271);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](-0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](-Infinity), -Infinity);
+assert_return(() => $$.exports["f64.no_fold_recip_recip"](Infinity), Infinity);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x3b\x02\x1a\x66\x33\x32\x2e\x6e\x6f\x5f\x61\x6c\x67\x65\x62\x72\x61\x69\x63\x5f\x66\x61\x63\x74\x6f\x72\x69\x6e\x67\x00\x00\x1a\x66\x36\x34\x2e\x6e\x6f\x5f\x61\x6c\x67\x65\x62\x72\x61\x69\x63\x5f\x66\x61\x63\x74\x6f\x72\x69\x6e\x67\x00\x01\x0a\x1d\x02\x0d\x00\x20\x00\x20\x01\x92\x20\x00\x20\x01\x93\x94\x0b\x0d\x00\x20\x00\x20\x01\xa0\x20\x00\x20\x01\xa1\xa2\x0b");
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(-5.37118646541e-17), f32(9.74432790571e-17)), f32(-6.61022864732e-33));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(-19756732.0), f32(32770204.0)), f32(-6.83557802476e+14));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(5.23141487002e+13), f32(-1.45309984358e+14)), f32(-1.83782213555e+28));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(195260.375), f32(-227.757232666)), f32(38126563328.0));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(-237.487060547), f32(-972341.5)), f32(-9.45447960576e+11));
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](9.639720335949767e-144, 8.019175443606207e-140), -6.430717386609473e-279);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](5.166066590392027e-114, 1.494333315888213e-120), 2.6688244016362468e-227);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](-2.866135870517635e-114, -1.2114355254268516e-111), -1.4675678175314036e-222);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](-1.2920992810078149e+54, 6.62717187728034e+56), -4.391924013896023e+113);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](2.624279568901057e+34, -1.6250233986050802e+27), 6.886843255751491e+68);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x3b\x02\x1a\x66\x33\x32\x2e\x6e\x6f\x5f\x61\x6c\x67\x65\x62\x72\x61\x69\x63\x5f\x66\x61\x63\x74\x6f\x72\x69\x6e\x67\x00\x00\x1a\x66\x36\x34\x2e\x6e\x6f\x5f\x61\x6c\x67\x65\x62\x72\x61\x69\x63\x5f\x66\x61\x63\x74\x6f\x72\x69\x6e\x67\x00\x01\x0a\x1d\x02\x0d\x00\x20\x00\x20\x00\x94\x20\x01\x20\x01\x94\x93\x0b\x0d\x00\x20\x00\x20\x00\xa2\x20\x01\x20\x01\xa2\xa1\x0b");
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(2.21029961098e-14), f32(3.14652752638e-12)), f32(-9.90014756254e-24));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(-3.28946076877e+12), f32(-15941538816.0)), f32(1.08202986009e+25));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(0.000364975421689), f32(-0.000161537143867)), f32(1.0711280396e-07));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(6.53832660214e-14), f32(-2.74127729115e-14)), f32(3.52351117404e-27));
+assert_return(() => $$.exports["f32.no_algebraic_factoring"](f32(3.60968191004e+15), f32(-5.26010442947e+15)), f32(-1.46388960479e+31));
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](2.136404543498951e+107, -2.928587558394428e+101), 4.564224373474385e+214);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](-1.2290171159244358e+93, -8.2221589190166e+99), -6.760389728956271e+199);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](5477733829752.252, -970738900948.5906), 2.9063233895797397e+25);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](-1.0689141744923551e+55, -1.7337839359373804e+50), 1.1425775121300724e+110);
+assert_return(() => $$.exports["f64.no_algebraic_factoring"](-1.0295699877022106e-71, -8.952274637805908e-72), 2.5858214767010105e-143);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x07\x01\x60\x02\x7f\x7f\x01\x7d\x03\x03\x02\x00\x00\x05\x04\x01\x01\x01\x01\x07\x21\x02\x0d\x66\x33\x32\x2e\x6b\x61\x68\x61\x6e\x5f\x73\x75\x6d\x00\x00\x0d\x66\x33\x32\x2e\x70\x6c\x61\x69\x6e\x5f\x73\x75\x6d\x00\x01\x0a\x62\x02\x37\x01\x03\x7d\x02\x40\x03\x40\x20\x03\x20\x00\x2a\x02\x00\x20\x04\x93\x22\x04\x92\x22\x02\x20\x03\x93\x20\x04\x93\x21\x04\x20\x00\x41\x04\x6a\x21\x00\x20\x02\x21\x03\x20\x01\x41\x7f\x6a\x22\x01\x0d\x00\x0b\x0b\x20\x02\x0b\x28\x01\x01\x7d\x02\x40\x03\x40\x20\x02\x20\x00\x2a\x02\x00\x92\x21\x02\x20\x00\x41\x04\x6a\x21\x00\x20\x01\x41\x7f\x6a\x21\x01\x20\x01\x0d\x00\x0b\x0b\x20\x02\x0b\x0b\x87\x08\x01\x00\x41\x00\x0b\x80\x08\xc4\xc5\x57\x24\xa5\x84\xc8\x0b\x6d\xb8\x4b\x2e\xf2\x76\x17\x1c\xca\x4a\x56\x1e\x1b\x6e\x71\x22\x5d\x17\x1e\x6e\xbf\xcd\x14\x5c\xc7\x21\x55\x51\x39\x9c\x1f\xb2\x51\xf0\xa3\x93\xd7\xc1\x2c\xae\x7e\xa8\x28\x3a\x01\x21\xf4\x0a\x58\x93\xf8\x42\x77\x9f\x83\x39\x6a\x5f\xba\xf7\x0a\xd8\x51\x6a\x34\xca\xad\xc6\x34\x0e\xd8\x26\xdc\x4c\x33\x1c\xed\x29\x90\xa8\x78\x0f\xd1\xce\x76\x31\x23\x83\xb8\x35\xe8\xf2\x44\xb0\xd3\xa1\xfc\xbb\x32\xe1\xb0\xba\x69\x44\x09\xd6\xd9\x7d\xff\x2e\xc0\x5a\x36\x14\x33\x14\x3e\xa9\xfa\x87\x6d\x8b\xbc\xce\x9d\xa7\xfd\xc4\xe9\x85\x3f\xdd\xd7\xe1\x18\xa6\x50\x26\x72\x6e\x3f\x73\x0f\xf8\x12\x93\x23\x34\x61\x76\x12\x48\xc0\x9b\x05\x93\xeb\xac\x86\xde\x94\x3e\x55\xe8\x8c\xe8\xdd\xe4\xfc\x95\x47\xbe\x56\x03\x21\x20\x4c\xe6\xbf\x7b\xf6\x7f\xd5\xba\x73\x1c\xc1\x14\x8f\xc4\x27\x96\xb3\xbd\x33\xff\x78\x41\x5f\xc0\x5a\xce\xf6\x67\x6e\x73\x9a\x17\x66\x70\x03\xf8\xce\x27\xa3\x52\xb2\x9f\x3b\xbf\xfb\xae\xed\xd3\x5a\xf8\x37\x57\xf0\xf5\x6e\xef\xb1\x4d\x70\x3d\x54\xa7\x01\x9a\x85\x08\x48\x91\xf5\x9d\x0c\x60\x87\x5b\xd9\x54\x1e\x51\x6d\x88\x8e\x08\x8c\xa5\x71\x3a\x56\x08\x67\x46\x8f\x8f\x13\x2a\x2c\xec\x2c\x1f\xb4\x62\x2b\x6f\x41\x0a\xc4\x65\x42\xa2\x31\x6b\x2c\x7d\x3e\xbb\x75\xac\x86\x97\x30\xd9\x48\xcd\x9a\x1f\x56\xc4\xc6\xe4\x12\xc0\x9d\xfb\xee\x02\x8c\xce\x1c\xf2\x1e\xa1\x78\x23\xdb\xc4\x1e\x49\x03\xd3\x71\xcc\x08\x50\xc5\xd8\x5c\xed\xd5\xb5\x65\xac\xb5\xc9\x21\xd2\xc9\x29\x76\xde\xf0\x30\x1a\x5b\x3c\xf2\x3b\xdb\x3a\x39\x82\x3a\x16\x08\x6f\xa8\xf1\xbe\x69\x69\x99\x71\xa6\x05\xd3\x14\x93\x2a\x16\xf2\x2f\x11\xc7\x7e\x20\xbb\x91\x44\xee\xf8\xe4\x01\x53\xc0\xb9\x7f\xf0\xbf\xf0\x03\x9c\x6d\xb1\xdf\xa2\x44\x01\x6d\x6b\x71\x2b\x5c\xb3\x21\x19\x46\x5e\x8f\xdb\x91\xd3\x7c\x78\x6b\xb7\x12\x00\x8f\xeb\xbd\x8a\xf5\xd4\x2e\xc4\xc1\x1e\xdf\x73\x63\x59\x47\x49\x03\x0a\xb7\xcf\x24\xcf\x9c\x0e\x44\x7a\x9e\x14\xfb\x42\xbf\x9d\x39\x30\x9e\xa0\xab\x2f\xd1\xae\x9e\x6a\x83\x43\xe3\x55\x7d\x85\xbf\x63\x8a\xf8\x96\x10\x1f\xfe\x6d\xe7\x22\x1b\xe1\x69\x46\x8a\x44\xc8\xc8\xf9\x0c\x2b\x19\x07\xa5\x02\x3e\xf2\x30\x10\x9a\x85\x8a\x5f\xef\x81\x45\xa0\x77\xb1\x03\x10\x73\x4b\xae\x98\x9d\x47\xbf\x9a\x2d\x3a\xd5\x0f\x03\x66\xe3\x3d\x53\xd9\x40\xce\x1f\x6f\x32\x2f\x21\x2b\x23\x21\x6c\x62\xd4\xa7\x3e\xa8\xce\x28\x31\x2d\x00\x3d\x67\x5e\xaf\xa0\xcf\x2e\xd2\xb9\x6b\x84\xeb\x69\x08\x3c\x62\x36\xbe\x12\xfd\x36\x7f\x88\x3e\xad\xbc\x0b\xc0\x41\xc4\x50\xb6\xe3\x50\x31\xe8\xce\xe2\x96\x65\x55\x9c\x16\x46\xe6\xb0\x2d\x3a\xe8\x81\x05\xb0\xbf\x34\xf7\xbc\x10\x1c\xfb\xcc\x3c\xf1\x85\x97\x42\x9f\xeb\x14\x8d\x3c\xbf\xd7\x17\x88\x49\x9d\x8b\x2b\xb2\x3a\x83\xd1\x4f\x04\x9e\xa1\x0f\xad\x08\x9d\x54\xaf\xd1\x82\xc3\xec\x32\x2f\x02\x8f\x05\x21\x2d\xa2\xb7\xe4\xf4\x6f\x2e\x81\x2b\x0b\x9c\xfc\xcb\xfe\x74\x02\xf9\xdb\xf4\xf3\xea\x00\xa8\xec\xd1\x99\x74\x26\xdd\xd6\x34\xd5\x25\xb1\x46\xdd\x9c\xaa\x71\xf5\x60\xb0\x88\xc8\xe0\x0b\x59\x5a\x25\x4f\x29\x66\xf9\xe3\x2e\xfe\xe9\xda\xe5\x18\x4f\x27\x62\xf4\xce\xa4\x21\x95\x74\xc7\x57\x64\x27\x9a\x4c\xfd\x54\x7d\x61\xce\xc3\xac\x87\x46\x9c\xfa\xff\x09\xca\x79\x97\x67\x24\x74\xca\xd4\x21\x83\x26\x25\x19\x12\x37\x64\x19\xe5\x65\xe0\x74\x75\x8e\xdd\xc8\xef\x74\xc7\xd8\x21\x2b\x79\x04\x51\x46\x65\x60\x03\x5d\xfa\xd8\xf4\x65\xa4\x9e\x5d\x23\xda\xd7\x8a\x92\x80\xa4\xde\x78\x3c\xf1\x57\x42\x6d\xcd\xc9\x2f\xd5\xa4\x9e\xab\x40\xf4\xcb\x1b\xd7\xa3\xca\xfc\xeb\xa7\x01\xb2\x9a\x69\x4e\x46\x9b\x18\x4e\xdd\x79\xa7\xaa\xa6\x52\x39\x1e\xef\x30\xcc\x9b\xbd\x5b\xee\x4c\x21\x6d\x30\x00\x72\xb0\x46\x5f\x08\xcf\xc5\xb9\xe0\x3e\xc2\xb3\x0c\xdc\x8e\x64\xde\x19\x42\x79\xcf\x43\xea\x43\x5d\x8e\x88\xf7\xab\x15\xdc\x3f\xc8\x67\x20\xdb\xb8\x64\xb1\x47\x1f\xde\xf2\xcb\x3f\x59\x9f\xd8\x46\x90\xdc\xae\x2f\x22\xf9\xe2\x31\x89\xd9\x9c\x1c\x4c\xd3\xa9\x4a\x57\x84\x9c\x9f\xea\x2c\x3c\xae\x3c\xc3\x1e\x8b\xe5\x4e\x17\x01\x25\xdb\x34\x46\x5f\x15\xea\x05\x0c\x7c\xd9\x45\x8c\x19\xd0\x73\x8a\x96\x16\xdd\x44\xf9\x05\xb7\x5b\x71\xb0\xe6\x21\x36\x5f\x75\x89\x91\x73\x75\xab\x7d\xae\xd3\x73\xec\x37\xc6\xea\x55\x75\xef\xea\xab\x8b\x7b\x11\xdc\x6d\x1a\xb2\x6a\xc4\x25\xcf\xaa\xe3\x9f\x49\x49\x89\xcb\x37\x9b\x0a\xa7\x01\x60\x70\xdc\xb7\xc8\x83\xe1\x42\xf5\xbe\xad\x62\x94\xad\x8d\xa1");
+assert_return(() => $$.exports["f32.kahan_sum"](0, 256), f32(-2.15581382462e+31));
+assert_return(() => $$.exports["f32.plain_sum"](0, 256), f32(-1.64875394721e+31));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x07\x01\x60\x02\x7f\x7f\x01\x7c\x03\x03\x02\x00\x00\x05\x04\x01\x01\x01\x01\x07\x21\x02\x0d\x66\x36\x34\x2e\x6b\x61\x68\x61\x6e\x5f\x73\x75\x6d\x00\x00\x0d\x66\x36\x34\x2e\x70\x6c\x61\x69\x6e\x5f\x73\x75\x6d\x00\x01\x0a\x62\x02\x37\x01\x03\x7c\x02\x40\x03\x40\x20\x03\x20\x00\x2b\x03\x00\x20\x04\xa1\x22\x04\xa0\x22\x02\x20\x03\xa1\x20\x04\xa1\x21\x04\x20\x00\x41\x08\x6a\x21\x00\x20\x02\x21\x03\x20\x01\x41\x7f\x6a\x22\x01\x0d\x00\x0b\x0b\x20\x02\x0b\x28\x01\x01\x7c\x02\x40\x03\x40\x20\x02\x20\x00\x2b\x03\x00\xa0\x21\x02\x20\x00\x41\x08\x6a\x21\x00\x20\x01\x41\x7f\x6a\x21\x01\x20\x01\x0d\x00\x0b\x0b\x20\x02\x0b\x0b\x87\x10\x01\x00\x41\x00\x0b\x80\x10\x13\x05\x84\x42\x5d\xa2\x2c\xc6\x43\xdb\x55\xa9\xcd\xda\x55\xe3\x73\xfc\x58\xd6\xba\xd5\x00\xfd\x83\x35\x42\x88\x8b\x13\x5d\x38\x4a\x47\x0d\x72\x73\xa1\x1a\xef\xc4\x45\x17\x57\xd8\xc9\x46\xe0\x8d\x6c\xe1\x37\x70\xc8\x83\x5b\x55\x5e\x5a\x2d\x73\x1e\x56\xc8\xe1\x6d\x69\x14\x78\x0a\x8a\x5a\x64\x3a\x09\xc7\xa8\x87\xc5\xf0\xd3\x5d\xe6\x03\xfc\x93\xbe\x26\xca\xd6\xa9\x91\x60\xbd\xb0\xed\xae\xf7\x30\x7e\x92\x3a\x6f\xa7\x59\x8e\xaa\x7d\xbf\x67\x58\x2a\x54\xf8\x4e\xfe\xed\x35\x58\xa6\x51\xbf\x42\xe5\x4b\x66\x27\x24\x6d\x7f\x42\x2d\x28\x92\x18\xec\x08\xae\xe7\x55\xda\xb1\xa6\x65\xa5\x72\x50\x47\x1b\xb8\xa9\x54\xd7\xa6\x06\x5b\x0f\x42\x58\x83\x8a\x17\x82\xc6\x10\x43\xa0\xc0\x2e\x6d\xbc\x5a\x85\x53\x72\x7f\xad\x44\xbc\x30\x3c\x55\xb2\x24\x9a\x74\x3a\x9e\xe1\xd8\x0f\x70\xfc\xa9\x3a\xcd\x93\x4b\xec\xe3\x7e\xdd\x5d\x27\xcd\xf8\xa0\x9d\x1c\x11\xc0\x57\x2e\xfd\xc8\x13\x32\xcc\x3a\x1a\x7d\xa3\x41\x55\xed\xc3\x82\x49\x2a\x04\x1e\xef\x73\xb9\x2e\x2e\xe3\x5f\xf4\xdf\xe6\xb2\x33\x0c\x39\x3f\x6f\x44\x6a\x03\xc1\x42\xb9\xfa\xb1\xc8\xed\xa5\x58\x99\x7f\xed\xb4\x72\x9e\x79\xeb\xfb\x43\x82\x45\xaa\xbb\x95\xd2\xff\x28\x9e\xf6\xa1\xad\x95\xd6\x55\x95\x0d\x6f\x60\x11\xc7\x78\x3e\x49\xf2\x7e\x48\xf4\xa2\x71\xd0\x13\x8e\xb3\xde\x99\x52\xe3\x45\x74\xea\x76\x0e\x1b\x2a\xc8\xee\x14\x01\xc4\x50\x5b\x36\x3c\xef\xba\x72\xa2\xa6\x08\xf8\x7b\x36\x9d\xf9\xef\x0b\xc7\x56\x2d\x5c\xf0\x9d\x5d\xde\xfc\xb8\xad\x0f\x64\x0e\x97\x15\x32\x26\xc2\x31\xe6\x05\x1e\xef\xcb\x17\x1b\x6d\x15\x0b\x74\x5d\xd3\x2e\xf8\x6b\x86\xb4\xba\x73\x52\x53\x99\xa9\x76\x20\x45\xc9\x40\x80\x6b\x14\xed\xa1\xfa\x80\x46\xe6\x26\xd2\xe6\x98\xc4\x57\xbf\xc4\x1c\xa4\x90\x7a\x36\x94\x14\xba\x15\x89\x6e\xe6\x9c\x37\x8c\xf4\xde\x12\x22\x5d\xa1\x79\x50\x67\x0d\x3d\x7a\xe9\xd4\xaa\x2e\x7f\x2a\x7a\x30\x3d\xea\x5d\x12\x48\xfe\xe1\x18\xcd\xa4\x57\xa2\x87\x3e\xb6\x9a\x8b\xdb\xda\x9d\x78\x9c\xcf\x8d\xb1\x4f\x90\xb4\x34\xe0\x9d\xf6\xca\xfe\x4c\x3b\x78\x6d\x0a\x5c\x18\x9f\x61\xb9\xdd\xb4\xe0\x0f\x76\xe0\x1b\x69\x0d\x5e\x58\x73\x70\x5e\x0e\x2d\xa1\x7d\xff\x20\xeb\x91\x34\x92\xac\x38\x72\x2a\x1f\x8e\x71\x2e\x6a\xf1\xaf\xc7\x27\x70\xd9\xc4\x57\xf7\xd2\x3c\x1d\xb8\xf0\xf0\x64\xcf\xdc\xae\xbe\xa3\xcc\x3e\x22\x7d\x4e\x69\x21\x63\x17\xed\x03\x02\x54\x9a\x0f\x50\x4e\x13\x5a\x35\xa1\x22\xa4\xdf\x86\xc2\x74\x79\x16\xb8\x69\x69\xa0\x52\x5d\x11\x64\xbd\x5b\x93\xfc\x69\xa0\xf4\x13\xd0\x81\x51\xdd\xfa\x0c\x15\xc3\x7a\xc9\x62\x7a\xa9\x1d\xc9\xe6\x5a\xb3\x5b\x97\x02\x3c\x64\x22\x12\x3c\x22\x90\x64\x2d\x30\x54\x4c\xb4\xa1\x22\x09\x57\x22\x5e\x8e\x38\x2b\x02\xa8\xae\xf6\xbe\x0d\x2b\xf2\x03\xad\xfa\x10\x01\x71\x77\x2a\x30\x02\x95\xf6\x00\x3e\xd0\xc4\x8d\x34\x19\x50\x21\x0a\xbc\x50\xda\x3c\x30\xd6\x3a\x31\x94\x8d\x3a\xfe\xef\x14\x57\x9d\x4b\x93\x00\x96\x24\x0c\x6f\xfd\xbc\x23\x76\x02\x6c\xeb\x52\x72\x80\x11\x7e\x80\x3a\x13\x12\x38\x1d\x38\x49\x95\x40\x27\x8a\x44\x7b\xe8\xdc\x6d\x8c\x8c\x8e\x3c\xb5\xb3\x18\x0e\xf6\x08\x1a\x84\x41\x35\xff\x8b\xb8\x93\x40\xea\xe1\x51\x1d\x89\xa5\x8d\x42\x68\x29\xea\x2f\xc1\x7a\x52\xeb\x90\x5d\x4d\xd6\x80\xe3\xd7\x75\x48\xce\xed\xd3\x01\x1c\x8d\x5b\xa5\x94\x0d\x78\xcf\xf1\x06\x13\x2f\x98\x02\xa4\x6d\x2e\x6c\xf2\xd5\x74\x29\x89\x4c\xf9\x03\xf5\xc7\x18\xad\x7a\xf0\x68\xf8\x5c\xd6\x59\x87\x6e\xd6\x3f\x06\xbe\x86\x20\xe3\x41\x91\x22\xf3\x6e\x8b\xf0\x68\x1c\x57\xa7\xfc\xb0\x7c\x9e\x99\x0b\x96\x1a\x89\x5f\xe6\x0d\x7c\x08\x51\xa0\xa2\x67\x9a\x47\x00\x93\x6b\xf9\x28\xf0\x68\xdb\x62\xf1\xe0\x65\x2c\x53\x33\xe0\xa7\xca\x11\x42\x30\xf6\xaf\x01\xc1\x65\x3d\x32\x01\x6f\xab\x2e\xbe\xd3\x8b\xbe\x14\xc3\xff\xec\xfb\xf0\xf9\xc5\x0c\x05\x6f\x01\x09\x6b\xe3\x34\x31\x0c\x1f\x66\xa6\x42\xbc\x1a\x87\x49\x16\x16\x8c\xb0\x90\x0d\x34\x8c\x0a\xe1\x09\x5e\x10\xa4\x6b\x56\xcc\xf0\xc9\xbb\xdc\xb8\x5c\xce\xf6\xcc\x8d\x75\x7e\xb3\x07\x88\x04\x2f\xb4\x5e\xc9\xe3\x4a\x23\x73\x19\x62\x6c\x9a\x03\x76\x44\x86\x9c\x60\xfc\xdb\x72\x8f\x27\xa0\xdd\xb3\xc5\xda\xff\xf9\xec\x6a\xb1\x7b\xd3\xcf\x50\x37\xc9\x7a\x78\x0c\xe4\x3a\xb6\xf5\xe6\xf4\x98\x6e\x42\x7d\x35\x73\x8b\x45\xc0\x56\x97\xcd\x6d\xce\xcf\xad\x31\xb3\xc3\x54\xfa\xef\xd5\xc0\xf4\x6a\x5f\x54\xe7\x49\x3e\x33\x0a\x30\x38\xfd\xd9\x05\xff\xa5\x3f\x57\x46\x14\xb5\x91\x17\xca\x6b\x98\x23\x7a\x65\xb3\x6c\x02\xb4\xcc\x79\x5d\x58\xd8\xb3\xd5\x94\xae\xf4\x6d\x75\x65\xf7\x92\xbf\x7e\x47\x4c\x3c\xee\xdb\xac\xf1\x32\x5d\xfb\x6f\x41\x1c\x34\xc8\x83\x4f\xc2\x58\x01\xbe\x05\x3e\x66\x16\xa6\x04\x6d\x5d\x4f\x86\x09\x27\x82\x25\x12\xcd\x3a\xcd\xce\x6b\xbc\xca\xac\x28\x9b\xee\x6a\x25\x86\x9e\x45\x70\xc6\xd2\xbd\x3b\x7d\x42\xe5\x27\xaf\xc7\x1d\xf4\x81\xc8\xb3\x76\x8a\xa8\x36\xa3\xae\x2a\xe6\x18\xe1\x36\x22\xad\xf6\x25\x72\xb0\x39\x8b\x01\x9a\x22\x7b\x84\xc3\x2d\x5f\x72\xa4\x98\xac\x15\x70\xe7\xd4\x18\xe2\x7d\xd2\x30\x7c\x33\x08\xcd\xca\xc4\x22\x85\x88\x75\x81\xc6\x4a\x74\x58\x8d\xe0\xe8\xac\xc5\xab\x75\x5a\xf4\x28\x12\xf0\x18\x45\x52\xf2\x97\xb2\x93\x41\x6f\x8d\x7f\xdb\x70\xfb\xa3\x5d\x1f\xa7\x8d\x98\x20\x2b\x22\x9f\x3a\x01\xb5\x8b\x1b\xd2\xcb\x14\x03\x0e\x14\x14\xd2\x19\x5a\x1f\xce\x5e\xcd\x81\x79\x15\x01\xca\xde\x73\x74\x8c\x56\x20\x9f\x77\x2d\x25\x16\xf6\x61\x51\x1d\xa4\x8e\x9b\x98\xa5\xc6\xec\xa8\x45\x57\x82\x59\x78\x0d\x90\xb4\xdf\x51\xb0\xc3\x82\x94\xcc\xb3\x53\x09\x15\x6d\x96\x6c\x3a\x40\x47\xb7\x4a\x7a\x05\x2f\xa1\x1e\x8c\x9d\xa0\x20\x88\xfb\x52\xb7\x9f\xf3\xf3\xbb\x5f\xe7\x8a\x61\xa7\x21\xb1\xac\xfa\x09\xaa\xa4\x6c\xbc\x24\x80\xba\x2a\xe9\x65\xff\x70\xff\xcc\xfa\x65\x87\x76\xf3\xc5\x15\xce\xcb\xe8\x42\x31\x00\x0c\x91\x57\xd9\xe0\x9d\x35\x54\x24\xad\xa4\xd8\xf9\x08\x67\x63\xc8\xcf\x81\xdd\x90\xa2\xd7\xc4\x07\x4a\xe6\x10\x6f\x67\xe7\x27\xd4\x23\x59\x18\xf2\xa8\x9d\x5f\xd8\x94\x30\xaa\x54\x86\x4f\x87\x9d\x82\xb5\x26\xca\xa6\x96\xbf\xcf\x55\xf9\x9d\x37\x01\x19\x48\x43\xc5\x94\x6c\xf3\x74\x97\x58\x4c\x3c\x9d\x08\xe8\x04\xc2\x58\x30\x76\xe1\xa0\xf8\xea\xe9\xc5\xae\xcf\x78\x9e\xa9\x0c\xac\xb3\x44\x42\xe0\xbc\x5d\x1b\x9c\x49\x58\x4a\x1c\x19\x49\xc1\x3a\xea\xf5\xeb\x3b\x81\xa9\x4b\x70\x0c\xcc\x9e\x1a\xd3\x2f\xb7\x52\x2f\x20\x3b\xeb\x64\x51\x1d\xa0\x2d\xb2\x3e\xbe\x13\x85\x48\x92\x32\x2e\xdb\x5c\xa1\xe7\x8c\x45\x91\x35\x01\x0a\x93\xc2\xeb\x09\xce\xf3\xd2\x22\x24\xd0\x8c\xcc\x1d\x9d\x38\xc8\x4d\xe3\x82\xcc\x64\x15\x06\x2d\xe7\x01\x2f\xab\xbb\xb5\x04\x4c\x92\x1c\x7a\xd6\x3f\xe8\x5f\x31\x15\x0c\xdc\xe4\x31\xb4\xc4\x25\x3e\x2a\xaa\x00\x9e\xc8\xe5\x21\x7a\x7f\x29\xf1\xc0\xaf\x1d\x5e\xe8\x63\x39\xad\xf8\x7e\x6c\xc8\xc5\x7f\xc2\xa8\x97\x27\x0a\xd9\xf4\x21\x6a\xea\x03\x09\xfb\xf7\x96\x3b\x83\x79\x5f\x7c\x4b\x30\x9f\x56\x35\xde\xb4\x73\xd4\x95\xf0\x14\xc3\x74\x2f\x0d\xa3\x1d\x4e\x8d\x31\x24\xb3\x1a\x84\x85\x62\x5a\x7b\x3c\x14\x39\x17\xe6\x6d\xeb\x37\xc2\x00\x58\x5b\x0b\xe3\x3c\x8a\x62\xe1\xf8\x35\x4b\x56\xe2\x87\x60\x8b\xbe\xa7\x38\x91\x77\x54\xa9\x5a\x24\x25\x90\x9f\xa5\x42\x77\xf3\x5c\x39\xdf\xff\x74\x07\x76\xa1\xcd\x1f\x62\x0b\x81\x81\x68\xaf\x05\xc1\xc0\x7f\x26\xee\xc0\x91\xa3\x6a\x7d\x29\x61\x45\x27\xe5\x57\x88\xdc\x0d\x97\x04\x1a\x33\xa9\x44\x8a\xda\x02\x10\x45\x3f\x8e\x55\xa6\x76\x8c\x4d\xe3\xf1\x89\x83\xc8\xd0\xf8\x9b\x50\x77\x9f\x47\xdf\x4c\x9c\x66\x0d\xaa\x18\xb8\x5f\x4f\xc4\x01\xce\xdc\x84\xac\x46\x9e\x69\xe1\x76\x45\x6b\x61\x89\xe4\x5d\x94\xbb\x11\x83\x9f\x78\xd8\x0a\xd2\xf5\x7e\x5d\x43\xea\xbc\x10\xf1\x3a\xc9\xe2\x64\xfb\x53\x65\xd0\xc7\xb4\xa7\xfb\xd4\x05\x53\x25\xd0\xcd\x29\x88\x00\x56\x25\x24\x7d\x5d\xb4\xf3\x41\x9f\xe9\xb5\xf7\xae\x64\x2c\xe3\xc9\x6d\xd5\x84\x3a\x72\x12\xb8\x7a\xd9\x1b\x09\xe8\x38\xda\x26\x4f\x04\xce\x03\x71\x6e\x8a\x44\x7b\x5c\x81\x59\x9c\xd2\xe4\xc3\xba\x59\xa6\xe5\x28\xa7\x8f\x9a\xe4\xd5\x4e\xb9\xca\x7f\xcb\x75\xb8\x2b\x43\x3e\xb3\x15\x46\xb1\xa5\xbc\x9d\x9e\x38\x15\xf1\xbd\x1b\x21\xaa\xf1\x82\x00\x95\xfc\xa7\x77\x47\x39\xa7\x33\x43\x92\xd7\x52\x40\x4b\x06\x81\x8a\xa0\xbd\xf1\x6b\x99\x84\x42\x5b\xe2\x3b\xc5\x5e\x12\x5c\x28\x4d\xb6\x0e\x4e\xc8\x5c\xe8\x01\x8a\xc5\xe7\xe4\x9d\x42\xee\x5d\x9c\xc4\xeb\xeb\x68\x09\x27\x92\x95\x9a\x11\x54\x73\xc4\x12\x80\xfb\x7d\xfe\xc5\x08\x60\x7f\x36\x41\xe0\x10\xba\xd6\x2b\x6c\xf1\xb4\x17\xfe\x26\x34\xe3\x4b\xf8\xa8\xe3\x91\xbe\x4f\x2a\xfc\xda\x81\xb8\xe7\xfe\xd5\x26\x50\x47\xf3\x1a\x65\x32\x81\xe0\x05\xb8\x4f\x32\x31\x26\x00\x4a\x53\x97\xc2\xc3\x0e\x2e\xa1\x26\x54\xab\x05\x8e\x56\x2f\x7d\xaf\x22\x84\x68\xa5\x8b\x97\xf6\xa4\xfd\xa8\xcc\x75\x41\x96\x86\xfd\x27\x3d\x29\x86\x8d\x7f\x4c\xd4\x8e\x73\x41\xf4\x1e\xe2\xdd\x58\x27\x97\xce\x9c\x94\xcf\x7a\x04\x2f\xdc\xed");
+assert_return(() => $$.exports["f64.kahan_sum"](0, 256), 4.996401743142033e+300);
+assert_return(() => $$.exports["f64.plain_sum"](0, 256), 4.9964017432979576e+300);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2d\x02\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x67\x5f\x73\x75\x62\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6e\x65\x67\x5f\x73\x75\x62\x00\x01\x0a\x13\x02\x08\x00\x20\x00\x20\x01\x93\x8c\x0b\x08\x00\x20\x00\x20\x01\xa1\x9a\x0b");
+assert_return(() => $$.exports["f32.no_fold_neg_sub"](f32(-0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_neg_sub"](f32(0.0), f32(-0.0)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_neg_sub"](f32(-0.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_neg_sub"](f32(0.0), f32(0.0)), f32(-0.0));
+assert_return(() => $$.exports["f64.no_fold_neg_sub"](-0.0, -0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_neg_sub"](0.0, -0.0), -0.0);
+assert_return(() => $$.exports["f64.no_fold_neg_sub"](-0.0, 0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_neg_sub"](0.0, 0.0), -0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2d\x02\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x6e\x65\x67\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x6e\x65\x67\x00\x01\x0a\x13\x02\x08\x00\x20\x00\x8c\x20\x00\x92\x0b\x08\x00\x20\x00\x9a\x20\x00\xa0\x0b");
+assert_return(() => $$.exports["f32.no_fold_add_neg"](f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_add_neg"](f32(-0.0)), f32(0.0));
+assert_return_nan(() => $$.exports["f32.no_fold_add_neg"](Infinity));
+assert_return_nan(() => $$.exports["f32.no_fold_add_neg"](-Infinity));
+assert_return(() => $$.exports["f64.no_fold_add_neg"](0.0), 0.0);
+assert_return(() => $$.exports["f64.no_fold_add_neg"](-0.0), 0.0);
+assert_return_nan(() => $$.exports["f64.no_fold_add_neg"](Infinity));
+assert_return_nan(() => $$.exports["f64.no_fold_add_neg"](-Infinity));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x33\x02\x16\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x36\x78\x5f\x76\x69\x61\x5f\x61\x64\x64\x00\x00\x16\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x36\x78\x5f\x76\x69\x61\x5f\x61\x64\x64\x00\x01\x0a\x29\x02\x13\x00\x20\x00\x20\x00\x92\x20\x00\x92\x20\x00\x92\x20\x00\x92\x20\x00\x92\x0b\x13\x00\x20\x00\x20\x00\xa0\x20\x00\xa0\x20\x00\xa0\x20\x00\xa0\x20\x00\xa0\x0b");
+assert_return(() => $$.exports["f32.no_fold_6x_via_add"](f32(-8.55513734559e+29)), f32(-5.13308270959e+30));
+assert_return(() => $$.exports["f32.no_fold_6x_via_add"](f32(-1.20950599457e-23)), f32(-7.25703628298e-23));
+assert_return(() => $$.exports["f32.no_fold_6x_via_add"](f32(6.64268923825e-24)), f32(3.98561338518e-23));
+assert_return(() => $$.exports["f32.no_fold_6x_via_add"](f32(-6.1473459656e-10)), f32(-3.68840735732e-09));
+assert_return(() => $$.exports["f32.no_fold_6x_via_add"](f32(-1.20985810077e+24)), f32(-7.25914831637e+24));
+assert_return(() => $$.exports["f64.no_fold_6x_via_add"](-3.517044906027714e+20), -2.1102269436166286e+21);
+assert_return(() => $$.exports["f64.no_fold_6x_via_add"](-1.4824294109868734e-161), -8.894576465921239e-161);
+assert_return(() => $$.exports["f64.no_fold_6x_via_add"](-7.484567838781003e+81), -4.4907407032686014e+82);
+assert_return(() => $$.exports["f64.no_fold_6x_via_add"](1.7277868192936067e+226), 1.0366720915761641e+227);
+assert_return(() => $$.exports["f64.no_fold_6x_via_add"](-4.311639752519561e+70), -2.5869838515117364e+71);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2d\x02\x13\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x64\x69\x76\x00\x00\x13\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x64\x69\x76\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x95\x20\x02\x95\x0b\x0a\x00\x20\x00\x20\x01\xa3\x20\x02\xa3\x0b");
+assert_return(() => $$.exports["f32.no_fold_div_div"](f32(-5.93847529169e+23), f32(-3.02656717395e-05), f32(-1584.86816406)), f32(-1.23803086183e+25));
+assert_return(() => $$.exports["f32.no_fold_div_div"](f32(1.54389616165e-21), f32(2.53342928037e+33), f32(-2.68447828568e-34)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_div_div"](f32(1.34174233068e+13), f32(2.93392046445e-32), f32(7.638637444e+31)), Infinity);
+assert_return(() => $$.exports["f32.no_fold_div_div"](f32(-0.000107765292341), f32(-3.42209429081e+37), f32(-1.65623238865e-13)), f32(-1.90113269357e-29));
+assert_return(() => $$.exports["f32.no_fold_div_div"](f32(1.30582499557e+14), f32(9.62453466104e+16), f32(-4.14615451007e+37)), f32(-3.27231217389e-41));
+assert_return(() => $$.exports["f64.no_fold_div_div"](4.7776287467101434e+101, 1.0278672042040401e+176, -7.18999894988884e-236), -6.464673011878799e+160);
+assert_return(() => $$.exports["f64.no_fold_div_div"](-2.1790236783875714e+238, 2.8324436844616576e-09, 1.861107682598687e+95), -4.133606807992067e+151);
+assert_return(() => $$.exports["f64.no_fold_div_div"](-7.287619347826683, -1.3467607316739855e+265, 2.462719007013688e+51), 2.19725454e-316);
+assert_return(() => $$.exports["f64.no_fold_div_div"](-2.865523978629633e+248, 1.0211980370639414e-247, 2.876458648332401e+289), -Infinity);
+assert_return(() => $$.exports["f64.no_fold_div_div"](-9.525735602663874e-268, 5.0233948816631796e-180, -2.8304570228221077e-42), 6.699534674970116e-47);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x11\x02\x60\x04\x7d\x7d\x7d\x7d\x01\x7d\x60\x04\x7c\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2f\x02\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x73\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x73\x00\x01\x0a\x1d\x02\x0d\x00\x20\x00\x20\x01\x95\x20\x02\x20\x03\x95\x94\x0b\x0d\x00\x20\x00\x20\x01\xa3\x20\x02\x20\x03\xa3\xa2\x0b");
+assert_return(() => $$.exports["f32.no_fold_mul_divs"](f32(-2.72347329039e-33), f32(3.89784291064e-28), f32(4.84712309132e-27), f32(-25.3577747345)), f32(1.33558547747e-33));
+assert_return(() => $$.exports["f32.no_fold_mul_divs"](f32(-5.37284413169e+30), f32(38340912.0), f32(1.49731622514e-05), f32(0.192138254642)), f32(-1.09204748314e+19));
+assert_return(() => $$.exports["f32.no_fold_mul_divs"](f32(-16085042176.0), f32(-1.0929202135e+12), f32(-869606016.0), f32(-1201.20605469)), f32(10654.6386719));
+assert_return(() => $$.exports["f32.no_fold_mul_divs"](f32(-1.27122314044e+33), f32(1.07681141781e-10), f32(1.85762710316e-05), f32(4.92686197158e+23)), -Infinity);
+assert_return(() => $$.exports["f32.no_fold_mul_divs"](f32(1.37838637654e-16), f32(-6.50462845086e-20), f32(6.81676837137e-28), f32(2.28926270301e-11)), f32(-6.31002953881e-14));
+assert_return(() => $$.exports["f64.no_fold_mul_divs"](-3.466499805233369e-247, -4.045567512248635e-140, -6.462341070607592e+164, 1.0045589533354074e+56), -55.12215321310017);
+assert_return(() => $$.exports["f64.no_fold_mul_divs"](-5.054883907636325e+34, 2.2223781649976275e-277, -1.5029790371100852e+109, -6.994123759538121e+140), -Infinity);
+assert_return(() => $$.exports["f64.no_fold_mul_divs"](-8.361116536344947e+92, -1.0029528876067567e+58, -1.2867801766038772e-42, -4.2230277746883753e+220), 2.540178100556387e-228);
+assert_return(() => $$.exports["f64.no_fold_mul_divs"](-1.2020032116411193e+39, -4.667409771338769e-105, 1.0888652376540085e-288, 1.8334948666517216e+67), 0.0);
+assert_return(() => $$.exports["f64.no_fold_mul_divs"](6.331839568840419e-06, 5.544474241905778e-84, 2.7822472480359097e-187, -1.4419321081893022e+106), -2.2035374770746518e-215);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x2f\x02\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x64\x69\x76\x73\x00\x00\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x64\x69\x76\x73\x00\x01\x0a\x1d\x02\x0d\x00\x20\x00\x20\x02\x95\x20\x01\x20\x02\x95\x92\x0b\x0d\x00\x20\x00\x20\x02\xa3\x20\x01\x20\x02\xa3\xa0\x0b");
+assert_return(() => $$.exports["f32.no_fold_add_divs"](f32(377.368896484), f32(-0.0401181839406), f32(-1.36292985605e+38)), f32(-2.76851214838e-36));
+assert_return(() => $$.exports["f32.no_fold_add_divs"](f32(-1.82340230412e-19), f32(-3.39702881134e-15), f32(-1.70996707361e+14)), f32(1.98671154112e-29));
+assert_return(() => $$.exports["f32.no_fold_add_divs"](f32(-1.96726383556e-14), f32(6.4140987027e-20), f32(-5.41989070176e+14)), f32(3.62969965672e-29));
+assert_return(() => $$.exports["f32.no_fold_add_divs"](f32(-4.03850582219e-31), f32(3.84822808143e-30), f32(-3.45237197913e+26)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_add_divs"](f32(0.00109344150405), f32(0.207031235099), f32(1.35097839699e-37)), f32(1.54054772769e+36));
+assert_return(() => $$.exports["f64.no_fold_add_divs"](-4.91701943214376e+129, 6.813215632201902e+130, 2.6125410100237784e+274), 2.4196801752520584e-144);
+assert_return(() => $$.exports["f64.no_fold_add_divs"](-1.020646795322455e+16, 63.422616671746226, -1.6024747869814892e-288), 6.369190976445851e+303);
+assert_return(() => $$.exports["f64.no_fold_add_divs"](-1.5270569633109837e-291, 2.5755503329232514e-294, 5.882693916421492e+151), 0.0);
+assert_return(() => $$.exports["f64.no_fold_add_divs"](2.666796487439464e+94, -2.1315692524936578e+99, 1.2377004518680012e-38), -1.7221796932462534e+137);
+assert_return(() => $$.exports["f64.no_fold_add_divs"](-1.2952888377288216e-219, 5.808769259900048e-228, 1.6745741699443756e-21), -7.735034106987796e-199);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x35\x02\x17\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x71\x72\x74\x5f\x73\x71\x75\x61\x72\x65\x00\x00\x17\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x71\x72\x74\x5f\x73\x71\x75\x61\x72\x65\x00\x01\x0a\x13\x02\x08\x00\x20\x00\x20\x00\x94\x91\x0b\x08\x00\x20\x00\x20\x00\xa2\x9f\x0b");
+assert_return(() => $$.exports["f32.no_fold_sqrt_square"](f32(-1.84600007067e-20)), f32(1.84600104002e-20));
+assert_return(() => $$.exports["f32.no_fold_sqrt_square"](f32(-1.7907473239e-22)), f32(1.79526781243e-22));
+assert_return(() => $$.exports["f32.no_fold_sqrt_square"](f32(-7.91207848456e-22)), f32(7.91442007616e-22));
+assert_return(() => $$.exports["f32.no_fold_sqrt_square"](f32(1.80129377322e-26)), f32(0.0));
+assert_return(() => $$.exports["f32.no_fold_sqrt_square"](f32(6.10501968175e+32)), Infinity);
+assert_return(() => $$.exports["f64.no_fold_sqrt_square"](6.209297167747496e-160), 6.209299542179727e-160);
+assert_return(() => $$.exports["f64.no_fold_sqrt_square"](-2.4211175303738945e-155), 2.4211175303738937e-155);
+assert_return(() => $$.exports["f64.no_fold_sqrt_square"](-1.6460687611875645e-157), 1.6460687611532367e-157);
+assert_return(() => $$.exports["f64.no_fold_sqrt_square"](-3.797811613378828e-186), 0.0);
+assert_return(() => $$.exports["f64.no_fold_sqrt_square"](8.158084284605592e+257), Infinity);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x31\x02\x15\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x73\x71\x72\x74\x73\x00\x00\x15\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x73\x71\x72\x74\x73\x00\x01\x0a\x15\x02\x09\x00\x20\x00\x91\x20\x01\x91\x94\x0b\x09\x00\x20\x00\x9f\x20\x01\x9f\xa2\x0b");
+assert_return_nan(() => $$.exports["f32.no_fold_mul_sqrts"](f32(4.38850469474e-38), f32(-1.18673337983e-25)));
+assert_return(() => $$.exports["f32.no_fold_mul_sqrts"](f32(2.53659081113e-28), f32(4.13206746597e-10)), f32(3.23749315218e-19));
+assert_return(() => $$.exports["f32.no_fold_mul_sqrts"](f32(4.21448322317e-27), f32(97.2491149902)), f32(6.40199048288e-13));
+assert_return(() => $$.exports["f32.no_fold_mul_sqrts"](f32(3.72407634228e+30), f32(0.00294490810484)), f32(1.04723751371e+14));
+assert_return(() => $$.exports["f32.no_fold_mul_sqrts"](f32(1.86605593445e-17), f32(0.00211126101203)), f32(1.98487545844e-10));
+assert_return_nan(() => $$.exports["f64.no_fold_mul_sqrts"](-1.2742064369772862e-191, -0.006829962938197246));
+assert_return(() => $$.exports["f64.no_fold_mul_sqrts"](3.7082569269527534e-194, 4.7183002857015043e-122), 4.1829020688865954e-158);
+assert_return(() => $$.exports["f64.no_fold_mul_sqrts"](2.329359505918655e-27, 2.0743399642806364e-275), 2.1981545701574452e-151);
+assert_return(() => $$.exports["f64.no_fold_mul_sqrts"](1.0541899336289437e-109, 5.98123819872803e-173), 2.511047809129887e-141);
+assert_return(() => $$.exports["f64.no_fold_mul_sqrts"](25589482.717358638, 3.913891207119902e+154), 1.0007719590506955e+81);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x31\x02\x15\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x73\x71\x72\x74\x73\x00\x00\x15\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x73\x71\x72\x74\x73\x00\x01\x0a\x15\x02\x09\x00\x20\x00\x91\x20\x01\x91\x95\x0b\x09\x00\x20\x00\x9f\x20\x01\x9f\xa3\x0b");
+assert_return_nan(() => $$.exports["f32.no_fold_div_sqrts"](f32(-58545012.0), f32(-6.44377295414e-18)));
+assert_return(() => $$.exports["f32.no_fold_div_sqrts"](f32(7407384064.0), f32(209778928.0)), f32(5.942258358));
+assert_return(() => $$.exports["f32.no_fold_div_sqrts"](f32(1.37641256948e-36), f32(54692.8984375)), f32(5.01659272899e-21));
+assert_return(() => $$.exports["f32.no_fold_div_sqrts"](f32(9.79288964811e+17), f32(1.26435517611e-09)), f32(2.7830490497e+13));
+assert_return(() => $$.exports["f32.no_fold_div_sqrts"](f32(2.91412832627e-34), f32(1.7928174343e-31)), f32(0.0403168201447));
+assert_return_nan(() => $$.exports["f64.no_fold_div_sqrts"](-1.2206137319883022e-214, -8.209583449676083e-57));
+assert_return(() => $$.exports["f64.no_fold_div_sqrts"](3.3818852462305824e-177, 7.655783976315048e+162), 2.1017671425665687e-170);
+assert_return(() => $$.exports["f64.no_fold_div_sqrts"](4.596333567064751e+157, 2.3932467846883046e-33), 1.3858366017266315e+95);
+assert_return(() => $$.exports["f64.no_fold_div_sqrts"](2.5327340978668086e-244, 4.475305129961258e+87), 2.3789399141325018e-166);
+assert_return(() => $$.exports["f64.no_fold_div_sqrts"](5.103070160197939e-238, 4.601576690980825e+284), 1.0530826009924495e-261);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x37\x02\x18\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x73\x71\x72\x74\x5f\x64\x69\x76\x00\x00\x18\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x73\x71\x72\x74\x5f\x64\x69\x76\x00\x01\x0a\x19\x02\x0b\x00\x20\x00\x20\x01\x91\x94\x20\x01\x95\x0b\x0b\x00\x20\x00\x20\x01\x9f\xa2\x20\x01\xa3\x0b");
+assert_return(() => $$.exports["f32.no_fold_mul_sqrt_div"](f32(-4.72855680666e+24), f32(8.67728170885e+27)), -Infinity);
+assert_return(() => $$.exports["f32.no_fold_mul_sqrt_div"](f32(-1.17768817886e-36), f32(9.80515309738e-30)), f32(-0.0));
+assert_return(() => $$.exports["f32.no_fold_mul_sqrt_div"](f32(816717056.0), f32(3.32317090036e-39)), f32(1.41675681435e+28));
+assert_return(() => $$.exports["f32.no_fold_mul_sqrt_div"](f32(-1.19322674463e+13), f32(8.63706680207e+33)), f32(-0.000128392552142));
+assert_return(() => $$.exports["f32.no_fold_mul_sqrt_div"](f32(-401.023498535), f32(134.330215454)), f32(-34.6005477905));
+assert_return(() => $$.exports["f64.no_fold_mul_sqrt_div"](1.4681346229104905e+210, 2.466074582285183e+228), Infinity);
+assert_return(() => $$.exports["f64.no_fold_mul_sqrt_div"](-1.7254022016758028e-249, 5.5835540747130025e-202), -0.0);
+assert_return(() => $$.exports["f64.no_fold_mul_sqrt_div"](1.6812810256029166e-128, 7.362783602442129e+168), 6.196112486187196e-213);
+assert_return(() => $$.exports["f64.no_fold_mul_sqrt_div"](-1.0605483729939836e+106, 6.22591783694072e-146), -4.2503900822233765e+178);
+assert_return(() => $$.exports["f64.no_fold_mul_sqrt_div"](2.6336349695373093e+31, 3.07914132858533e+253), 4.746142447510695e-96);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x4d\x02\x23\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6c\x75\x73\x68\x5f\x69\x6e\x74\x65\x72\x6d\x65\x64\x69\x61\x74\x65\x5f\x73\x75\x62\x6e\x6f\x72\x6d\x61\x6c\x00\x00\x23\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6c\x75\x73\x68\x5f\x69\x6e\x74\x65\x72\x6d\x65\x64\x69\x61\x74\x65\x5f\x73\x75\x62\x6e\x6f\x72\x6d\x61\x6c\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x94\x20\x02\x94\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x02\xa2\x0b");
+assert_return(() => $$.exports["f32.no_flush_intermediate_subnormal"](f32(1.17549435082e-38), f32(1.19209289551e-07), f32(8388608.0)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["f64.no_flush_intermediate_subnormal"](2.2250738585072014e-308, 2.220446049250313e-16, 4503599627370496.0), 2.2250738585072014e-308);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x13\x03\x60\x02\x7d\x7d\x01\x7f\x60\x02\x7c\x7c\x01\x7f\x60\x02\x7c\x7d\x01\x7d\x03\x08\x07\x00\x00\x00\x01\x01\x01\x02\x07\x7f\x07\x0f\x66\x33\x32\x2e\x72\x65\x63\x6f\x64\x69\x6e\x67\x5f\x65\x71\x00\x00\x0f\x66\x33\x32\x2e\x72\x65\x63\x6f\x64\x69\x6e\x67\x5f\x6c\x65\x00\x01\x0f\x66\x33\x32\x2e\x72\x65\x63\x6f\x64\x69\x6e\x67\x5f\x6c\x74\x00\x02\x0f\x66\x36\x34\x2e\x72\x65\x63\x6f\x64\x69\x6e\x67\x5f\x65\x71\x00\x03\x0f\x66\x36\x34\x2e\x72\x65\x63\x6f\x64\x69\x6e\x67\x5f\x6c\x65\x00\x04\x0f\x66\x36\x34\x2e\x72\x65\x63\x6f\x64\x69\x6e\x67\x5f\x6c\x74\x00\x05\x0f\x72\x65\x63\x6f\x64\x69\x6e\x67\x5f\x64\x65\x6d\x6f\x74\x65\x00\x06\x0a\x4c\x07\x0a\x00\x20\x00\x20\x01\x94\x20\x00\x5b\x0b\x0a\x00\x20\x00\x20\x01\x94\x20\x00\x5f\x0b\x0a\x00\x20\x00\x20\x01\x94\x20\x00\x5d\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x00\x61\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x00\x65\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x00\x63\x0b\x08\x00\x20\x00\xb6\x20\x01\x94\x0b");
+assert_return(() => $$.exports["f32.recoding_eq"](-Infinity, f32(3.0)), 1);
+assert_return(() => $$.exports["f32.recoding_le"](-Infinity, f32(3.0)), 1);
+assert_return(() => $$.exports["f32.recoding_lt"](-Infinity, f32(3.0)), 0);
+assert_return(() => $$.exports["f32.recoding_eq"](f32(0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["f32.recoding_le"](f32(0.0), f32(1.0)), 1);
+assert_return(() => $$.exports["f32.recoding_lt"](f32(0.0), f32(1.0)), 0);
+assert_return(() => $$.exports["f64.recoding_eq"](-Infinity, 3.0), 1);
+assert_return(() => $$.exports["f64.recoding_le"](-Infinity, 3.0), 1);
+assert_return(() => $$.exports["f64.recoding_lt"](-Infinity, 3.0), 0);
+assert_return(() => $$.exports["f64.recoding_eq"](0.0, 1.0), 1);
+assert_return(() => $$.exports["f64.recoding_le"](0.0, 1.0), 1);
+assert_return(() => $$.exports["f64.recoding_lt"](0.0, 1.0), 0);
+assert_return(() => $$.exports["recoding_demote"](2.3860049081905093e-40, f32(1221.0)), f32(2.91331206297e-37));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x02\x60\x03\x7d\x7d\x7d\x01\x7f\x60\x03\x7c\x7c\x7c\x01\x7f\x03\x03\x02\x00\x01\x07\x41\x02\x1d\x66\x33\x32\x2e\x6e\x6f\x5f\x65\x78\x74\x65\x6e\x64\x65\x64\x5f\x70\x72\x65\x63\x69\x73\x69\x6f\x6e\x5f\x64\x69\x76\x00\x00\x1d\x66\x36\x34\x2e\x6e\x6f\x5f\x65\x78\x74\x65\x6e\x64\x65\x64\x5f\x70\x72\x65\x63\x69\x73\x69\x6f\x6e\x5f\x64\x69\x76\x00\x01\x0a\x17\x02\x0a\x00\x20\x00\x20\x01\x95\x20\x02\x5b\x0b\x0a\x00\x20\x00\x20\x01\xa3\x20\x02\x61\x0b");
+assert_return(() => $$.exports["f32.no_extended_precision_div"](f32(3.0), f32(7.0), f32(0.428571432829)), 1);
+assert_return(() => $$.exports["f64.no_extended_precision_div"](3.0, 7.0, 0.42857142857142855), 1);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0b\x02\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x35\x02\x17\x66\x33\x32\x2e\x6e\x6f\x5f\x64\x69\x73\x74\x72\x69\x62\x75\x74\x65\x5f\x65\x78\x61\x63\x74\x00\x00\x17\x66\x36\x34\x2e\x6e\x6f\x5f\x64\x69\x73\x74\x72\x69\x62\x75\x74\x65\x5f\x65\x78\x61\x63\x74\x00\x01\x0a\x31\x02\x13\x00\x43\x00\x00\x00\xc1\x20\x00\x94\x43\x00\x00\x00\x41\x20\x00\x94\x92\x0b\x1b\x00\x44\x00\x00\x00\x00\x00\x00\x20\xc0\x20\x00\xa2\x44\x00\x00\x00\x00\x00\x00\x20\x40\x20\x00\xa2\xa0\x0b");
+assert_return(() => $$.exports["f32.no_distribute_exact"](f32(-0.0)), f32(0.0));
+assert_return(() => $$.exports["f64.no_distribute_exact"](-0.0), 0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x29\x06\x60\x01\x7d\x01\x7d\x60\x04\x7d\x7d\x7d\x7d\x01\x7d\x60\x03\x7d\x7d\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x04\x7c\x7c\x7c\x7c\x01\x7c\x60\x03\x7c\x7c\x7c\x01\x7c\x03\x0b\x0a\x00\x01\x02\x02\x01\x03\x04\x05\x05\x04\x07\xb5\x01\x0a\x08\x66\x33\x32\x2e\x73\x71\x72\x74\x00\x00\x0f\x66\x33\x32\x2e\x78\x6b\x63\x64\x5f\x73\x71\x72\x74\x5f\x32\x00\x01\x0f\x66\x33\x32\x2e\x78\x6b\x63\x64\x5f\x73\x71\x72\x74\x5f\x33\x00\x02\x0f\x66\x33\x32\x2e\x78\x6b\x63\x64\x5f\x73\x71\x72\x74\x5f\x35\x00\x03\x16\x66\x33\x32\x2e\x78\x6b\x63\x64\x5f\x62\x65\x74\x74\x65\x72\x5f\x73\x71\x72\x74\x5f\x35\x00\x04\x08\x66\x36\x34\x2e\x73\x71\x72\x74\x00\x05\x0f\x66\x36\x34\x2e\x78\x6b\x63\x64\x5f\x73\x71\x72\x74\x5f\x32\x00\x06\x0f\x66\x36\x34\x2e\x78\x6b\x63\x64\x5f\x73\x71\x72\x74\x5f\x33\x00\x07\x0f\x66\x36\x34\x2e\x78\x6b\x63\x64\x5f\x73\x71\x72\x74\x5f\x35\x00\x08\x16\x66\x36\x34\x2e\x78\x6b\x63\x64\x5f\x62\x65\x74\x74\x65\x72\x5f\x73\x71\x72\x74\x5f\x35\x00\x09\x0a\x89\x01\x0a\x05\x00\x20\x00\x91\x0b\x10\x00\x20\x00\x20\x01\x95\x20\x02\x20\x03\x20\x02\x93\x95\x92\x0b\x0a\x00\x20\x00\x20\x01\x94\x20\x02\x95\x0b\x0d\x00\x20\x00\x20\x01\x95\x20\x02\x20\x00\x95\x92\x0b\x13\x00\x20\x00\x20\x01\x20\x02\x94\x92\x20\x03\x20\x01\x20\x02\x94\x93\x95\x0b\x05\x00\x20\x00\x9f\x0b\x10\x00\x20\x00\x20\x01\xa3\x20\x02\x20\x03\x20\x02\xa1\xa3\xa0\x0b\x0a\x00\x20\x00\x20\x01\xa2\x20\x02\xa3\x0b\x0d\x00\x20\x00\x20\x01\xa3\x20\x02\x20\x00\xa3\xa0\x0b\x13\x00\x20\x00\x20\x01\x20\x02\xa2\xa0\x20\x03\x20\x01\x20\x02\xa2\xa1\xa3\x0b");
+assert_return(() => $$.exports["f32.sqrt"](f32(2.0)), f32(1.41421353817));
+assert_return(() => $$.exports["f32.xkcd_sqrt_2"](f32(3.0), f32(5.0), f32(3.14159274101), f32(7.0)), f32(1.41422009468));
+assert_return(() => $$.exports["f32.sqrt"](f32(3.0)), f32(1.73205077648));
+assert_return(() => $$.exports["f32.xkcd_sqrt_3"](f32(2.0), f32(2.71828174591), f32(3.14159274101)), f32(1.73051190376));
+assert_return(() => $$.exports["f32.sqrt"](f32(5.0)), f32(2.23606801033));
+assert_return(() => $$.exports["f32.xkcd_sqrt_5"](f32(2.0), f32(2.71828174591), f32(3.0)), f32(2.23575878143));
+assert_return(() => $$.exports["f32.xkcd_better_sqrt_5"](f32(13.0), f32(4.0), f32(3.14159274101), f32(24.0)), f32(2.23606801033));
+assert_return(() => $$.exports["f64.sqrt"](2.0), 1.4142135623730951);
+assert_return(() => $$.exports["f64.xkcd_sqrt_2"](3.0, 5.0, 3.141592653589793, 7.0), 1.4142200580539208);
+assert_return(() => $$.exports["f64.sqrt"](3.0), 1.7320508075688772);
+assert_return(() => $$.exports["f64.xkcd_sqrt_3"](2.0, 2.718281828459045, 3.141592653589793), 1.7305119588645301);
+assert_return(() => $$.exports["f64.sqrt"](5.0), 2.23606797749979);
+assert_return(() => $$.exports["f64.xkcd_sqrt_5"](2.0, 2.718281828459045, 3.0), 2.2357588823428847);
+assert_return(() => $$.exports["f64.xkcd_better_sqrt_5"](13.0, 4.0, 3.141592653589793, 24.0), 2.2360678094452893);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x29\x02\x11\x66\x33\x32\x2e\x63\x6f\x6d\x70\x75\x74\x65\x5f\x72\x61\x64\x69\x78\x00\x00\x11\x66\x36\x34\x2e\x63\x6f\x6d\x70\x75\x74\x65\x5f\x72\x61\x64\x69\x78\x00\x01\x0a\x9d\x01\x02\x43\x00\x03\x40\x20\x00\x20\x00\x92\x22\x00\x43\x00\x00\x80\x3f\x92\x20\x00\x93\x43\x00\x00\x80\xbf\x92\x43\x00\x00\x00\x00\x5b\x0d\x00\x0b\x03\x40\x20\x00\x20\x01\x43\x00\x00\x80\x3f\x92\x22\x01\x92\x20\x00\x93\x20\x01\x93\x43\x00\x00\x00\x00\x5c\x0d\x00\x0b\x20\x01\x0b\x57\x00\x03\x40\x20\x00\x20\x00\xa0\x22\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xa0\x20\x00\xa1\x44\x00\x00\x00\x00\x00\x00\xf0\xbf\xa0\x44\x00\x00\x00\x00\x00\x00\x00\x00\x61\x0d\x00\x0b\x03\x40\x20\x00\x20\x01\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xa0\x22\x01\xa0\x20\x00\xa1\x20\x01\xa1\x44\x00\x00\x00\x00\x00\x00\x00\x00\x62\x0d\x00\x0b\x20\x01\x0b");
+assert_return(() => $$.exports["f32.compute_radix"](f32(1.0), f32(1.0)), f32(2.0));
+assert_return(() => $$.exports["f64.compute_radix"](1.0, 1.0), 2.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x02\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x03\x03\x02\x00\x01\x07\x37\x02\x18\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x31\x5f\x6d\x75\x6c\x5f\x61\x64\x64\x00\x00\x18\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x75\x62\x31\x5f\x6d\x75\x6c\x5f\x61\x64\x64\x00\x01\x0a\x27\x02\x10\x00\x20\x00\x43\x00\x00\x80\x3f\x93\x20\x01\x94\x20\x01\x92\x0b\x14\x00\x20\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xa1\x20\x01\xa2\x20\x01\xa0\x0b");
+assert_return(() => $$.exports["f32.no_fold_sub1_mul_add"](f32(2.32830643654e-10), f32(1.0)), f32(0.0));
+assert_return(() => $$.exports["f64.no_fold_sub1_mul_add"](5.421010862427522e-20, 1.0), 0.0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x12\x03\x60\x03\x7d\x7d\x7d\x01\x7f\x60\x03\x7c\x7c\x7c\x01\x7f\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x9f\x01\x06\x1f\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x6c\x65\x5f\x6d\x6f\x6e\x6f\x74\x6f\x6e\x69\x63\x69\x74\x79\x00\x00\x1f\x66\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x67\x65\x5f\x6d\x6f\x6e\x6f\x74\x6f\x6e\x69\x63\x69\x74\x79\x00\x01\x1f\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x6c\x65\x5f\x6d\x6f\x6e\x6f\x74\x6f\x6e\x69\x63\x69\x74\x79\x00\x02\x1f\x66\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x61\x64\x64\x5f\x67\x65\x5f\x6d\x6f\x6e\x6f\x74\x6f\x6e\x69\x63\x69\x74\x79\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x83\x01\x06\x0d\x00\x20\x00\x20\x02\x92\x20\x01\x20\x02\x92\x5f\x0b\x0d\x00\x20\x00\x20\x02\x92\x20\x01\x20\x02\x92\x60\x0b\x0d\x00\x20\x00\x20\x02\xa0\x20\x01\x20\x02\xa0\x65\x0b\x0d\x00\x20\x00\x20\x02\xa0\x20\x01\x20\x02\xa0\x66\x0b\x1e\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["f32.no_fold_add_le_monotonicity"](Infinity, -Infinity, Infinity), 0);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f64.no_fold_add_le_monotonicity"](Infinity, -Infinity, Infinity), 0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7d\x7d\x01\x7f\x60\x02\x7c\x7c\x01\x7f\x60\x00\x00\x03\x11\x10\x00\x00\x00\x00\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x07\xc1\x01\x10\x0a\x66\x33\x32\x2e\x6e\x6f\x74\x5f\x6c\x74\x00\x00\x0a\x66\x33\x32\x2e\x6e\x6f\x74\x5f\x6c\x65\x00\x01\x0a\x66\x33\x32\x2e\x6e\x6f\x74\x5f\x67\x74\x00\x02\x0a\x66\x33\x32\x2e\x6e\x6f\x74\x5f\x67\x65\x00\x03\x0a\x66\x36\x34\x2e\x6e\x6f\x74\x5f\x6c\x74\x00\x04\x0a\x66\x36\x34\x2e\x6e\x6f\x74\x5f\x6c\x65\x00\x05\x0a\x66\x36\x34\x2e\x6e\x6f\x74\x5f\x67\x74\x00\x06\x0a\x66\x36\x34\x2e\x6e\x6f\x74\x5f\x67\x65\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x0a\xb9\x02\x10\x08\x00\x20\x00\x20\x01\x5d\x45\x0b\x08\x00\x20\x00\x20\x01\x5f\x45\x0b\x08\x00\x20\x00\x20\x01\x5e\x45\x0b\x08\x00\x20\x00\x20\x01\x60\x45\x0b\x08\x00\x20\x00\x20\x01\x63\x45\x0b\x08\x00\x20\x00\x20\x01\x65\x45\x0b\x08\x00\x20\x00\x20\x01\x64\x45\x0b\x08\x00\x20\x00\x20\x01\x66\x45\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x00\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x01\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x02\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x00\x00\x10\x03\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x04\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x05\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x06\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\x00\x00\x10\x07\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x00\x01\x7d\x60\x00\x01\x7c\x03\x03\x02\x00\x01\x07\x1d\x02\x0b\x66\x33\x32\x2e\x65\x70\x73\x69\x6c\x6f\x6e\x00\x00\x0b\x66\x36\x34\x2e\x65\x70\x73\x69\x6c\x6f\x6e\x00\x01\x0a\x55\x02\x1f\x00\x43\x00\x00\x80\x3f\x43\x00\x00\x40\x40\x43\x00\x00\x80\x40\x43\x00\x00\x40\x40\x95\x43\x00\x00\x80\x3f\x93\x94\x93\x0b\x33\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x44\x00\x00\x00\x00\x00\x00\x08\x40\x44\x00\x00\x00\x00\x00\x00\x10\x40\x44\x00\x00\x00\x00\x00\x00\x08\x40\xa3\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xa1\xa2\xa1\x0b");
+assert_return(() => $$.exports["f32.epsilon"](), f32(-1.19209289551e-07));
+assert_return(() => $$.exports["f64.epsilon"](), 2.220446049250313e-16);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7d\x7d\x01\x7f\x60\x02\x7c\x7c\x01\x7f\x60\x00\x00\x03\x11\x10\x00\x00\x00\x00\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x07\x91\x02\x10\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x6c\x74\x00\x00\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x6c\x65\x00\x01\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x67\x74\x00\x02\x14\x66\x33\x32\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x67\x65\x00\x03\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x6c\x74\x00\x04\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x6c\x65\x00\x05\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x67\x74\x00\x06\x14\x66\x36\x34\x2e\x6e\x6f\x5f\x74\x72\x69\x63\x68\x6f\x74\x6f\x6d\x79\x5f\x67\x65\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x0a\xe1\x02\x10\x0d\x00\x20\x00\x20\x01\x5d\x20\x00\x20\x01\x60\x72\x0b\x0d\x00\x20\x00\x20\x01\x5f\x20\x00\x20\x01\x5e\x72\x0b\x0d\x00\x20\x00\x20\x01\x5e\x20\x00\x20\x01\x5f\x72\x0b\x0d\x00\x20\x00\x20\x01\x60\x20\x00\x20\x01\x5d\x72\x0b\x0d\x00\x20\x00\x20\x01\x63\x20\x00\x20\x01\x66\x72\x0b\x0d\x00\x20\x00\x20\x01\x65\x20\x00\x20\x01\x64\x72\x0b\x0d\x00\x20\x00\x20\x01\x64\x20\x00\x20\x01\x65\x72\x0b\x0d\x00\x20\x00\x20\x01\x66\x20\x00\x20\x01\x63\x72\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x00\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x01\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x02\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\x00\x00\x43\x00\x00\xc0\x7f\x10\x03\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x04\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x05\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x07\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
diff --git a/JSTests/wasm/spec-tests/float_literals.wast.js b/JSTests/wasm/spec-tests/float_literals.wast.js
new file mode 100644
index 0000000..5e3ea89
--- /dev/null
+++ b/JSTests/wasm/spec-tests/float_literals.wast.js
@@ -0,0 +1,155 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x00\x03\x5b\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\xfb\x0b\x5a\x07\x66\x33\x32\x2e\x6e\x61\x6e\x00\x00\x10\x66\x33\x32\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x01\x10\x66\x33\x32\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x02\x0d\x66\x33\x32\x2e\x70\x6c\x61\x69\x6e\x5f\x6e\x61\x6e\x00\x03\x22\x66\x33\x32\x2e\x69\x6e\x66\x6f\x72\x6d\x61\x6c\x6c\x79\x5f\x6b\x6e\x6f\x77\x6e\x5f\x61\x73\x5f\x70\x6c\x61\x69\x6e\x5f\x73\x6e\x61\x6e\x00\x04\x10\x66\x33\x32\x2e\x61\x6c\x6c\x5f\x6f\x6e\x65\x73\x5f\x6e\x61\x6e\x00\x05\x0c\x66\x33\x32\x2e\x6d\x69\x73\x63\x5f\x6e\x61\x6e\x00\x06\x15\x66\x33\x32\x2e\x6d\x69\x73\x63\x5f\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x07\x15\x66\x33\x32\x2e\x6d\x69\x73\x63\x5f\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x08\x0c\x66\x33\x32\x2e\x69\x6e\x66\x69\x6e\x69\x74\x79\x00\x09\x15\x66\x33\x32\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x69\x6e\x66\x69\x6e\x69\x74\x79\x00\x0a\x15\x66\x33\x32\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x69\x6e\x66\x69\x6e\x69\x74\x79\x00\x0b\x08\x66\x33\x32\x2e\x7a\x65\x72\x6f\x00\x0c\x11\x66\x33\x32\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x0d\x11\x66\x33\x32\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x0e\x08\x66\x33\x32\x2e\x6d\x69\x73\x63\x00\x0f\x10\x66\x33\x32\x2e\x6d\x69\x6e\x5f\x70\x6f\x73\x69\x74\x69\x76\x65\x00\x10\x0e\x66\x33\x32\x2e\x6d\x69\x6e\x5f\x6e\x6f\x72\x6d\x61\x6c\x00\x11\x0e\x66\x33\x32\x2e\x6d\x61\x78\x5f\x66\x69\x6e\x69\x74\x65\x00\x12\x11\x66\x33\x32\x2e\x6d\x61\x78\x5f\x73\x75\x62\x6e\x6f\x72\x6d\x61\x6c\x00\x13\x10\x66\x33\x32\x2e\x74\x72\x61\x69\x6c\x69\x6e\x67\x5f\x64\x6f\x74\x00\x14\x0c\x66\x33\x32\x5f\x64\x65\x63\x2e\x7a\x65\x72\x6f\x00\x15\x15\x66\x33\x32\x5f\x64\x65\x63\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x16\x15\x66\x33\x32\x5f\x64\x65\x63\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x17\x0c\x66\x33\x32\x5f\x64\x65\x63\x2e\x6d\x69\x73\x63\x00\x18\x14\x66\x33\x32\x5f\x64\x65\x63\x2e\x6d\x69\x6e\x5f\x70\x6f\x73\x69\x74\x69\x76\x65\x00\x19\x12\x66\x33\x32\x5f\x64\x65\x63\x2e\x6d\x69\x6e\x5f\x6e\x6f\x72\x6d\x61\x6c\x00\x1a\x15\x66\x33\x32\x5f\x64\x65\x63\x2e\x6d\x61\x78\x5f\x73\x75\x62\x6e\x6f\x72\x6d\x61\x6c\x00\x1b\x12\x66\x33\x32\x5f\x64\x65\x63\x2e\x6d\x61\x78\x5f\x66\x69\x6e\x69\x74\x65\x00\x1c\x14\x66\x33\x32\x5f\x64\x65\x63\x2e\x74\x72\x61\x69\x6c\x69\x6e\x67\x5f\x64\x6f\x74\x00\x1d\x07\x66\x36\x34\x2e\x6e\x61\x6e\x00\x1e\x10\x66\x36\x34\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x1f\x10\x66\x36\x34\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x20\x0d\x66\x36\x34\x2e\x70\x6c\x61\x69\x6e\x5f\x6e\x61\x6e\x00\x21\x22\x66\x36\x34\x2e\x69\x6e\x66\x6f\x72\x6d\x61\x6c\x6c\x79\x5f\x6b\x6e\x6f\x77\x6e\x5f\x61\x73\x5f\x70\x6c\x61\x69\x6e\x5f\x73\x6e\x61\x6e\x00\x22\x10\x66\x36\x34\x2e\x61\x6c\x6c\x5f\x6f\x6e\x65\x73\x5f\x6e\x61\x6e\x00\x23\x0c\x66\x36\x34\x2e\x6d\x69\x73\x63\x5f\x6e\x61\x6e\x00\x24\x15\x66\x36\x34\x2e\x6d\x69\x73\x63\x5f\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x25\x15\x66\x36\x34\x2e\x6d\x69\x73\x63\x5f\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x6e\x61\x6e\x00\x26\x0c\x66\x36\x34\x2e\x69\x6e\x66\x69\x6e\x69\x74\x79\x00\x27\x15\x66\x36\x34\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x69\x6e\x66\x69\x6e\x69\x74\x79\x00\x28\x15\x66\x36\x34\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x69\x6e\x66\x69\x6e\x69\x74\x79\x00\x29\x08\x66\x36\x34\x2e\x7a\x65\x72\x6f\x00\x2a\x11\x66\x36\x34\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x2b\x11\x66\x36\x34\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x2c\x08\x66\x36\x34\x2e\x6d\x69\x73\x63\x00\x2d\x10\x66\x36\x34\x2e\x6d\x69\x6e\x5f\x70\x6f\x73\x69\x74\x69\x76\x65\x00\x2e\x0e\x66\x36\x34\x2e\x6d\x69\x6e\x5f\x6e\x6f\x72\x6d\x61\x6c\x00\x2f\x11\x66\x36\x34\x2e\x6d\x61\x78\x5f\x73\x75\x62\x6e\x6f\x72\x6d\x61\x6c\x00\x30\x0e\x66\x36\x34\x2e\x6d\x61\x78\x5f\x66\x69\x6e\x69\x74\x65\x00\x31\x10\x66\x36\x34\x2e\x74\x72\x61\x69\x6c\x69\x6e\x67\x5f\x64\x6f\x74\x00\x32\x0c\x66\x36\x34\x5f\x64\x65\x63\x2e\x7a\x65\x72\x6f\x00\x33\x15\x66\x36\x34\x5f\x64\x65\x63\x2e\x70\x6f\x73\x69\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x34\x15\x66\x36\x34\x5f\x64\x65\x63\x2e\x6e\x65\x67\x61\x74\x69\x76\x65\x5f\x7a\x65\x72\x6f\x00\x35\x0c\x66\x36\x34\x5f\x64\x65\x63\x2e\x6d\x69\x73\x63\x00\x36\x14\x66\x36\x34\x5f\x64\x65\x63\x2e\x6d\x69\x6e\x5f\x70\x6f\x73\x69\x74\x69\x76\x65\x00\x37\x12\x66\x36\x34\x5f\x64\x65\x63\x2e\x6d\x69\x6e\x5f\x6e\x6f\x72\x6d\x61\x6c\x00\x38\x15\x66\x36\x34\x5f\x64\x65\x63\x2e\x6d\x61\x78\x5f\x73\x75\x62\x6e\x6f\x72\x6d\x61\x6c\x00\x39\x12\x66\x36\x34\x5f\x64\x65\x63\x2e\x6d\x61\x78\x5f\x66\x69\x6e\x69\x74\x65\x00\x3a\x14\x66\x36\x34\x5f\x64\x65\x63\x2e\x74\x72\x61\x69\x6c\x69\x6e\x67\x5f\x64\x6f\x74\x00\x3b\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x3c\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x3d\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x3e\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x3f\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x40\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x41\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x42\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x43\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x44\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x45\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x46\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x47\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x48\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x49\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x4a\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x4b\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x4c\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x4d\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x4e\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x4f\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x50\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x51\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x52\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x53\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x54\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x55\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x56\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x57\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x58\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x59\x0a\xb6\x0a\x5a\x08\x00\x43\x00\x00\xc0\x7f\xbc\x0b\x08\x00\x43\x00\x00\xc0\x7f\xbc\x0b\x08\x00\x43\x00\x00\xc0\xff\xbc\x0b\x08\x00\x43\x00\x00\xc0\x7f\xbc\x0b\x08\x00\x43\x00\x00\xa0\x7f\xbc\x0b\x08\x00\x43\xff\xff\xff\xff\xbc\x0b\x08\x00\x43\x45\x23\x81\x7f\xbc\x0b\x08\x00\x43\x50\x40\xb0\x7f\xbc\x0b\x08\x00\x43\xde\xbc\xaa\xff\xbc\x0b\x08\x00\x43\x00\x00\x80\x7f\xbc\x0b\x08\x00\x43\x00\x00\x80\x7f\xbc\x0b\x08\x00\x43\x00\x00\x80\xff\xbc\x0b\x08\x00\x43\x00\x00\x00\x00\xbc\x0b\x08\x00\x43\x00\x00\x00\x00\xbc\x0b\x08\x00\x43\x00\x00\x00\x80\xbc\x0b\x08\x00\x43\xdb\x0f\xc9\x40\xbc\x0b\x08\x00\x43\x01\x00\x00\x00\xbc\x0b\x08\x00\x43\x00\x00\x80\x00\xbc\x0b\x08\x00\x43\xff\xff\x7f\x7f\xbc\x0b\x08\x00\x43\xff\xff\x7f\x00\xbc\x0b\x08\x00\x43\x00\x00\x80\x44\xbc\x0b\x08\x00\x43\x00\x00\x00\x00\xbc\x0b\x08\x00\x43\x00\x00\x00\x00\xbc\x0b\x08\x00\x43\x00\x00\x00\x80\xbc\x0b\x08\x00\x43\xdb\x0f\xc9\x40\xbc\x0b\x08\x00\x43\x01\x00\x00\x00\xbc\x0b\x08\x00\x43\x00\x00\x80\x00\xbc\x0b\x08\x00\x43\xff\xff\x7f\x00\xbc\x0b\x08\x00\x43\xff\xff\x7f\x7f\xbc\x0b\x08\x00\x43\xf9\x02\x15\x50\xbc\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x0b\x0c\x00\x44\xff\xff\xff\xff\xff\xff\xff\xff\xbd\x0b\x0c\x00\x44\xbc\x9a\x78\x56\x34\x12\xf0\x7f\xbd\x0b\x0c\x00\x44\x09\x08\x07\x06\x05\x04\xf3\x7f\xbd\x0b\x0c\x00\x44\x45\x23\x01\xef\xcd\xab\xf2\xff\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x7f\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\xf0\xff\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\xbd\x0b\x0c\x00\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\xbd\x0b\x0c\x00\x44\x01\x00\x00\x00\x00\x00\x00\x00\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x0b\x0c\x00\x44\xff\xff\xff\xff\xff\xff\x0f\x00\xbd\x0b\x0c\x00\x44\xff\xff\xff\xff\xff\xff\xef\x7f\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x30\x46\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x00\x80\xbd\x0b\x0c\x00\x44\x18\x2d\x44\x54\xfb\x21\x19\x40\xbd\x0b\x0c\x00\x44\x01\x00\x00\x00\x00\x00\x00\x00\xbd\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x10\x00\xbd\x0b\x0c\x00\x44\xff\xff\xff\xff\xff\xff\x0f\x00\xbd\x0b\x0c\x00\x44\xff\xff\xff\xff\xff\xff\xef\x7f\xbd\x0b\x0c\x00\x44\x7d\xc3\x94\x25\xad\x49\xb2\x54\xbd\x0b\x18\x00\x02\x40\x10\x1e\x42\x80\x80\x80\x80\x80\x80\x80\xfc\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x1f\x42\x80\x80\x80\x80\x80\x80\x80\xfc\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x10\x20\x42\x80\x80\x80\x80\x80\x80\x80\x7c\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x21\x42\x80\x80\x80\x80\x80\x80\x80\xfc\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x22\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x23\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x24\x42\xbc\xb5\xe2\xb3\xc5\xc6\x84\xf8\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x25\x42\x89\x90\x9c\xb0\xd0\x80\xc1\xf9\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x10\x26\x42\xc5\xc6\x84\xf8\xde\xf9\xaa\x79\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x27\x42\x80\x80\x80\x80\x80\x80\x80\xf8\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x28\x42\x80\x80\x80\x80\x80\x80\x80\xf8\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x10\x29\x42\x80\x80\x80\x80\x80\x80\x80\x78\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x2a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x2b\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x2c\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x2d\x42\x98\xda\x90\xa2\xb5\xbf\xc8\x8c\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x2e\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x10\x2f\x42\x80\x80\x80\x80\x80\x80\x80\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x10\x30\x42\xff\xff\xff\xff\xff\xff\xff\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x31\x42\xff\xff\xff\xff\xff\xff\xff\xf7\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x32\x42\x80\x80\x80\x80\x80\x80\x80\x98\xc6\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x33\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x34\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x35\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x36\x42\x98\xda\x90\xa2\xb5\xbf\xc8\x8c\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x37\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x10\x38\x42\x80\x80\x80\x80\x80\x80\x80\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x16\x00\x02\x40\x10\x39\x42\xff\xff\xff\xff\xff\xff\xff\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x3a\x42\xff\xff\xff\xff\xff\xff\xff\xf7\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x3b\x42\xfd\x86\xd3\xac\xd2\xb5\x92\xd9\xd4\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.nan"](), 2143289344);
+assert_return(() => $$.exports["f32.positive_nan"](), 2143289344);
+assert_return(() => $$.exports["f32.negative_nan"](), -4194304);
+assert_return(() => $$.exports["f32.plain_nan"](), 2143289344);
+assert_return(() => $$.exports["f32.informally_known_as_plain_snan"](), 2141192192);
+assert_return(() => $$.exports["f32.all_ones_nan"](), -1);
+assert_return(() => $$.exports["f32.misc_nan"](), 2139169605);
+assert_return(() => $$.exports["f32.misc_positive_nan"](), 2142257232);
+assert_return(() => $$.exports["f32.misc_negative_nan"](), -5587746);
+assert_return(() => $$.exports["f32.infinity"](), 2139095040);
+assert_return(() => $$.exports["f32.positive_infinity"](), 2139095040);
+assert_return(() => $$.exports["f32.negative_infinity"](), -8388608);
+assert_return(() => $$.exports["f32.zero"](), 0);
+assert_return(() => $$.exports["f32.positive_zero"](), 0);
+assert_return(() => $$.exports["f32.negative_zero"](), -2147483648);
+assert_return(() => $$.exports["f32.misc"](), 1086918619);
+assert_return(() => $$.exports["f32.min_positive"](), 1);
+assert_return(() => $$.exports["f32.min_normal"](), 8388608);
+assert_return(() => $$.exports["f32.max_subnormal"](), 8388607);
+assert_return(() => $$.exports["f32.max_finite"](), 2139095039);
+assert_return(() => $$.exports["f32.trailing_dot"](), 1149239296);
+assert_return(() => $$.exports["f32_dec.zero"](), 0);
+assert_return(() => $$.exports["f32_dec.positive_zero"](), 0);
+assert_return(() => $$.exports["f32_dec.negative_zero"](), -2147483648);
+assert_return(() => $$.exports["f32_dec.misc"](), 1086918619);
+assert_return(() => $$.exports["f32_dec.min_positive"](), 1);
+assert_return(() => $$.exports["f32_dec.min_normal"](), 8388608);
+assert_return(() => $$.exports["f32_dec.max_subnormal"](), 8388607);
+assert_return(() => $$.exports["f32_dec.max_finite"](), 2139095039);
+assert_return(() => $$.exports["f32_dec.trailing_dot"](), 1343554297);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
diff --git a/JSTests/wasm/spec-tests/float_memory.wast.js b/JSTests/wasm/spec-tests/float_memory.wast.js
new file mode 100644
index 0000000..3fdc505
--- /dev/null
+++ b/JSTests/wasm/spec-tests/float_memory.wast.js
@@ -0,0 +1,184 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7d\x60\x00\x01\x7f\x60\x00\x00\x03\x09\x08\x00\x01\x02\x02\x02\x02\x02\x02\x05\x04\x01\x01\x01\x01\x07\x58\x08\x08\x66\x33\x32\x2e\x6c\x6f\x61\x64\x00\x00\x08\x69\x33\x32\x2e\x6c\x6f\x61\x64\x00\x01\x09\x66\x33\x32\x2e\x73\x74\x6f\x72\x65\x00\x02\x09\x69\x33\x32\x2e\x73\x74\x6f\x72\x65\x00\x03\x05\x72\x65\x73\x65\x74\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x0a\x75\x08\x07\x00\x41\x00\x2a\x02\x00\x0b\x07\x00\x41\x00\x28\x02\x00\x0b\x0c\x00\x41\x00\x43\x00\x00\xa0\x7f\x38\x02\x00\x0b\x0d\x00\x41\x00\x41\x80\x80\x80\xfd\x07\x36\x02\x00\x0b\x09\x00\x41\x00\x41\x00\x36\x02\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x0a\x01\x00\x41\x00\x0b\x04\x00\x00\xa0\x7f");
+assert_return(() => $$.exports["i32.load"](), 2141192192);
+assert_return(() => $$.exports["assert_0"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["i32.load"](), 0);
+assert_return(() => $$.exports["f32.load"](), f32(0.0));
+$$.exports["f32.store"]();
+assert_return(() => $$.exports["i32.load"](), 2141192192);
+assert_return(() => $$.exports["assert_1"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["i32.load"](), 0);
+assert_return(() => $$.exports["f32.load"](), f32(0.0));
+$$.exports["i32.store"]();
+assert_return(() => $$.exports["i32.load"](), 2141192192);
+assert_return(() => $$.exports["assert_2"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7c\x60\x00\x01\x7e\x60\x00\x00\x03\x0e\x0d\x00\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x05\x04\x01\x01\x01\x01\x07\x8f\x01\x0d\x08\x66\x36\x34\x2e\x6c\x6f\x61\x64\x00\x00\x08\x69\x36\x34\x2e\x6c\x6f\x61\x64\x00\x01\x09\x66\x36\x34\x2e\x73\x74\x6f\x72\x65\x00\x02\x09\x69\x36\x34\x2e\x73\x74\x6f\x72\x65\x00\x03\x05\x72\x65\x73\x65\x74\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0c\x0a\xf5\x01\x0d\x07\x00\x41\x00\x2b\x03\x00\x0b\x07\x00\x41\x00\x29\x03\x00\x0b\x10\x00\x41\x00\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x39\x03\x00\x0b\x12\x00\x41\x00\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x37\x03\x00\x0b\x09\x00\x41\x00\x42\x00\x37\x03\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x0e\x01\x00\x41\x00\x0b\x08\x00\x00\x00\x00\x00\x00\xf4\x7f");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["f64.load"](), 0.0);
+$$.exports["f64.store"]();
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f64.load"](), 0.0);
+$$.exports["i64.store"]();
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7d\x60\x00\x01\x7f\x60\x00\x00\x03\x09\x08\x00\x01\x02\x02\x02\x02\x02\x02\x05\x04\x01\x01\x01\x01\x07\x58\x08\x08\x66\x33\x32\x2e\x6c\x6f\x61\x64\x00\x00\x08\x69\x33\x32\x2e\x6c\x6f\x61\x64\x00\x01\x09\x66\x33\x32\x2e\x73\x74\x6f\x72\x65\x00\x02\x09\x69\x33\x32\x2e\x73\x74\x6f\x72\x65\x00\x03\x05\x72\x65\x73\x65\x74\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x0a\x75\x08\x07\x00\x41\x01\x2a\x02\x00\x0b\x07\x00\x41\x01\x28\x02\x00\x0b\x0c\x00\x41\x01\x43\x00\x00\xa0\x7f\x38\x02\x00\x0b\x0d\x00\x41\x01\x41\x80\x80\x80\xfd\x07\x36\x02\x00\x0b\x09\x00\x41\x01\x41\x00\x36\x02\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x00\x00\xa0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x0b\x01\x00\x41\x00\x0b\x05\x00\x00\x00\xa0\x7f");
+assert_return(() => $$.exports["i32.load"](), 2141192192);
+assert_return(() => $$.exports["assert_0"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["i32.load"](), 0);
+assert_return(() => $$.exports["f32.load"](), f32(0.0));
+$$.exports["f32.store"]();
+assert_return(() => $$.exports["i32.load"](), 2141192192);
+assert_return(() => $$.exports["assert_1"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["i32.load"](), 0);
+assert_return(() => $$.exports["f32.load"](), f32(0.0));
+$$.exports["i32.store"]();
+assert_return(() => $$.exports["i32.load"](), 2141192192);
+assert_return(() => $$.exports["assert_2"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7c\x60\x00\x01\x7e\x60\x00\x00\x03\x0e\x0d\x00\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x05\x04\x01\x01\x01\x01\x07\x8f\x01\x0d\x08\x66\x36\x34\x2e\x6c\x6f\x61\x64\x00\x00\x08\x69\x36\x34\x2e\x6c\x6f\x61\x64\x00\x01\x09\x66\x36\x34\x2e\x73\x74\x6f\x72\x65\x00\x02\x09\x69\x36\x34\x2e\x73\x74\x6f\x72\x65\x00\x03\x05\x72\x65\x73\x65\x74\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0c\x0a\xf5\x01\x0d\x07\x00\x41\x01\x2b\x03\x00\x0b\x07\x00\x41\x01\x29\x03\x00\x0b\x10\x00\x41\x01\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x39\x03\x00\x0b\x12\x00\x41\x01\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x37\x03\x00\x0b\x09\x00\x41\x01\x42\x00\x37\x03\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x80\x80\x80\x80\x80\x80\x80\xfa\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x0f\x01\x00\x41\x00\x0b\x09\x00\x00\x00\x00\x00\x00\x00\xf4\x7f");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["f64.load"](), 0.0);
+$$.exports["f64.store"]();
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f64.load"](), 0.0);
+$$.exports["i64.store"]();
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7d\x60\x00\x01\x7f\x60\x00\x00\x03\x09\x08\x00\x01\x02\x02\x02\x02\x02\x02\x05\x04\x01\x01\x01\x01\x07\x58\x08\x08\x66\x33\x32\x2e\x6c\x6f\x61\x64\x00\x00\x08\x69\x33\x32\x2e\x6c\x6f\x61\x64\x00\x01\x09\x66\x33\x32\x2e\x73\x74\x6f\x72\x65\x00\x02\x09\x69\x33\x32\x2e\x73\x74\x6f\x72\x65\x00\x03\x05\x72\x65\x73\x65\x74\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x0a\x75\x08\x07\x00\x41\x00\x2a\x02\x00\x0b\x07\x00\x41\x00\x28\x02\x00\x0b\x0c\x00\x41\x00\x43\x01\x00\xd0\x7f\x38\x02\x00\x0b\x0d\x00\x41\x00\x41\x81\x80\xc0\xfe\x07\x36\x02\x00\x0b\x09\x00\x41\x00\x41\x00\x36\x02\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x01\x00\xd0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x01\x00\xd0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x10\x00\xbc\x43\x01\x00\xd0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x0a\x01\x00\x41\x00\x0b\x04\x01\x00\xd0\x7f");
+assert_return(() => $$.exports["i32.load"](), 2144337921);
+assert_return(() => $$.exports["assert_0"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["i32.load"](), 0);
+assert_return(() => $$.exports["f32.load"](), f32(0.0));
+$$.exports["f32.store"]();
+assert_return(() => $$.exports["i32.load"](), 2144337921);
+assert_return(() => $$.exports["assert_1"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["i32.load"](), 0);
+assert_return(() => $$.exports["f32.load"](), f32(0.0));
+$$.exports["i32.store"]();
+assert_return(() => $$.exports["i32.load"](), 2144337921);
+assert_return(() => $$.exports["assert_2"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7c\x60\x00\x01\x7e\x60\x00\x00\x03\x0e\x0d\x00\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x05\x04\x01\x01\x01\x01\x07\x8f\x01\x0d\x08\x66\x36\x34\x2e\x6c\x6f\x61\x64\x00\x00\x08\x69\x36\x34\x2e\x6c\x6f\x61\x64\x00\x01\x09\x66\x36\x34\x2e\x73\x74\x6f\x72\x65\x00\x02\x09\x69\x36\x34\x2e\x73\x74\x6f\x72\x65\x00\x03\x05\x72\x65\x73\x65\x74\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0c\x0a\xf5\x01\x0d\x07\x00\x41\x00\x2b\x03\x00\x0b\x07\x00\x41\x00\x29\x03\x00\x0b\x10\x00\x41\x00\x44\x01\x00\x00\x00\x00\x00\xfc\x7f\x39\x03\x00\x0b\x12\x00\x41\x00\x42\x81\x80\x80\x80\x80\x80\x80\xfe\xff\x00\x37\x03\x00\x0b\x09\x00\x41\x00\x42\x00\x37\x03\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x81\x80\x80\x80\x80\x80\x80\xfe\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x01\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x81\x80\x80\x80\x80\x80\x80\xfe\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x01\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x01\x42\x81\x80\x80\x80\x80\x80\x80\xfe\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x00\xbd\x44\x01\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x0e\x01\x00\x41\x00\x0b\x08\x01\x00\x00\x00\x00\x00\xfc\x7f");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["f64.load"](), 0.0);
+$$.exports["f64.store"]();
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+$$.exports["reset"]();
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["f64.load"](), 0.0);
+$$.exports["i64.store"]();
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
diff --git a/JSTests/wasm/spec-tests/float_misc.wast.js b/JSTests/wasm/spec-tests/float_misc.wast.js
new file mode 100644
index 0000000..dc1205b
--- /dev/null
+++ b/JSTests/wasm/spec-tests/float_misc.wast.js
@@ -0,0 +1,512 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x1a\x05\x60\x02\x7d\x7d\x01\x7d\x60\x01\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x60\x01\x7c\x01\x7c\x60\x00\x00\x03\x3f\x3e\x00\x00\x00\x00\x01\x01\x01\x00\x01\x01\x01\x01\x00\x00\x02\x02\x02\x02\x03\x03\x03\x02\x03\x03\x03\x03\x02\x02\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x07\xc5\x05\x3e\x07\x66\x33\x32\x2e\x61\x64\x64\x00\x00\x07\x66\x33\x32\x2e\x73\x75\x62\x00\x01\x07\x66\x33\x32\x2e\x6d\x75\x6c\x00\x02\x07\x66\x33\x32\x2e\x64\x69\x76\x00\x03\x08\x66\x33\x32\x2e\x73\x71\x72\x74\x00\x04\x07\x66\x33\x32\x2e\x61\x62\x73\x00\x05\x07\x66\x33\x32\x2e\x6e\x65\x67\x00\x06\x0c\x66\x33\x32\x2e\x63\x6f\x70\x79\x73\x69\x67\x6e\x00\x07\x08\x66\x33\x32\x2e\x63\x65\x69\x6c\x00\x08\x09\x66\x33\x32\x2e\x66\x6c\x6f\x6f\x72\x00\x09\x09\x66\x33\x32\x2e\x74\x72\x75\x6e\x63\x00\x0a\x0b\x66\x33\x32\x2e\x6e\x65\x61\x72\x65\x73\x74\x00\x0b\x07\x66\x33\x32\x2e\x6d\x69\x6e\x00\x0c\x07\x66\x33\x32\x2e\x6d\x61\x78\x00\x0d\x07\x66\x36\x34\x2e\x61\x64\x64\x00\x0e\x07\x66\x36\x34\x2e\x73\x75\x62\x00\x0f\x07\x66\x36\x34\x2e\x6d\x75\x6c\x00\x10\x07\x66\x36\x34\x2e\x64\x69\x76\x00\x11\x08\x66\x36\x34\x2e\x73\x71\x72\x74\x00\x12\x07\x66\x36\x34\x2e\x61\x62\x73\x00\x13\x07\x66\x36\x34\x2e\x6e\x65\x67\x00\x14\x0c\x66\x36\x34\x2e\x63\x6f\x70\x79\x73\x69\x67\x6e\x00\x15\x08\x66\x36\x34\x2e\x63\x65\x69\x6c\x00\x16\x09\x66\x36\x34\x2e\x66\x6c\x6f\x6f\x72\x00\x17\x09\x66\x36\x34\x2e\x74\x72\x75\x6e\x63\x00\x18\x0b\x66\x36\x34\x2e\x6e\x65\x61\x72\x65\x73\x74\x00\x19\x07\x66\x36\x34\x2e\x6d\x69\x6e\x00\x1a\x07\x66\x36\x34\x2e\x6d\x61\x78\x00\x1b\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x1c\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x1d\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x1e\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x1f\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x20\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x21\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x22\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x23\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x24\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x25\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x00\x3d\x0a\xbf\x0a\x3e\x07\x00\x20\x00\x20\x01\x92\x0b\x07\x00\x20\x00\x20\x01\x93\x0b\x07\x00\x20\x00\x20\x01\x94\x0b\x07\x00\x20\x00\x20\x01\x95\x0b\x05\x00\x20\x00\x91\x0b\x05\x00\x20\x00\x8b\x0b\x05\x00\x20\x00\x8c\x0b\x07\x00\x20\x00\x20\x01\x98\x0b\x05\x00\x20\x00\x8d\x0b\x05\x00\x20\x00\x8e\x0b\x05\x00\x20\x00\x8f\x0b\x05\x00\x20\x00\x90\x0b\x07\x00\x20\x00\x20\x01\x96\x0b\x07\x00\x20\x00\x20\x01\x97\x0b\x07\x00\x20\x00\x20\x01\xa0\x0b\x07\x00\x20\x00\x20\x01\xa1\x0b\x07\x00\x20\x00\x20\x01\xa2\x0b\x07\x00\x20\x00\x20\x01\xa3\x0b\x05\x00\x20\x00\x9f\x0b\x05\x00\x20\x00\x99\x0b\x05\x00\x20\x00\x9a\x0b\x07\x00\x20\x00\x20\x01\xa6\x0b\x05\x00\x20\x00\x9b\x0b\x05\x00\x20\x00\x9c\x0b\x05\x00\x20\x00\x9d\x0b\x05\x00\x20\x00\x9e\x0b\x07\x00\x20\x00\x20\x01\xa4\x0b\x07\x00\x20\x00\x20\x01\xa5\x0b\x1e\x00\x02\x40\x43\x00\x00\xa0\x7f\x43\x00\x00\x80\x3f\x10\x00\xbc\x43\x00\x00\xe0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf4\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x10\x0e\xbd\x44\x00\x00\x00\x00\x00\x00\xfc\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x05\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x05\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xe2\xf1\x80\x7f\x10\x05\xbc\x43\xe2\xf1\x80\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xe2\xf1\x80\xff\x10\x05\xbc\x43\xe2\xf1\x80\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x13\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x13\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\x10\x13\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\xff\x10\x13\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\x7f\x10\x06\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\x00\x00\xc0\xff\x10\x06\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xe2\xf1\x80\x7f\x10\x06\xbc\x43\xe2\xf1\x80\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x43\xe2\xf1\x80\xff\x10\x06\xbc\x43\xe2\xf1\x80\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x14\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x14\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\x10\x14\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\xff\x10\x14\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\x7f\x10\x07\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\xc0\xff\x10\x07\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\x7f\x10\x07\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\x00\x00\xc0\xff\x43\x00\x00\xc0\xff\x10\x07\xbc\x43\x00\x00\xc0\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xe2\xf1\x80\x7f\x43\x00\x00\xc0\x7f\x10\x07\xbc\x43\xe2\xf1\x80\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xe2\xf1\x80\x7f\x43\x00\x00\xc0\xff\x10\x07\xbc\x43\xe2\xf1\x80\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xe2\xf1\x80\xff\x43\x00\x00\xc0\x7f\x10\x07\xbc\x43\xe2\xf1\x80\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x43\xe2\xf1\x80\xff\x43\x00\x00\xc0\xff\x10\x07\xbc\x43\xe2\xf1\x80\xff\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x15\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x15\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x15\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x15\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x15\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x15\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x15\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2a\x00\x02\x40\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\xff\x44\x00\x00\x00\x00\x00\x00\xf8\xff\x10\x15\xbd\x44\x6b\x7a\xe2\xf1\x00\x00\xf0\xff\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["f32.add"](f32(1.12345683575), f32(1.23450000222e-10)), f32(1.12345683575));
+assert_return(() => $$.exports["f64.add"](1.123456789, 1.2345e-10), 1.12345678912345);
+assert_return(() => $$.exports["f32.add"](f32(1.0), f32(5.96046447754e-08)), f32(1.0));
+assert_return(() => $$.exports["f32.add"](f32(1.0), f32(5.96046518808e-08)), f32(1.00000011921));
+assert_return(() => $$.exports["f64.add"](1.0, 1.1102230246251565e-16), 1.0);
+assert_return(() => $$.exports["f64.add"](1.0, 1.1102230246251568e-16), 1.0000000000000002);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["f32.add"](f32(1.40129846432e-45), f32(1.17549421069e-38)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["f64.add"](5e-324, 2.225073858507201e-308), 2.2250738585072014e-308);
+assert_return(() => $$.exports["f32.add"](f32(2147483648.0), f32(1024.25)), f32(2147484672.0));
+assert_return(() => $$.exports["f64.add"](9.223372036854776e+18, 1024.25), 9.223372036854778e+18);
+assert_return(() => $$.exports["f64.add"](-3.645561009778199e-304, 2.92e-320), -3.6455610097781983e-304);
+assert_return(() => $$.exports["f32.add"](f32(8388608.0), f32(0.5)), f32(8388608.0));
+assert_return(() => $$.exports["f32.add"](f32(8388609.0), f32(0.5)), f32(8388610.0));
+assert_return(() => $$.exports["f64.add"](4503599627370496.0, 0.5), 4503599627370496.0);
+assert_return(() => $$.exports["f64.add"](4503599627370497.0, 0.5), 4503599627370498.0);
+assert_return(() => $$.exports["f32.add"](f32(-6.20760015658e+30), f32(2.30979900343e-30)), f32(-6.20760015658e+30));
+assert_return(() => $$.exports["f32.add"](f32(2.09865807495e+20), f32(-5.27015250546e+15)), f32(2.09860529839e+20));
+assert_return(() => $$.exports["f32.add"](f32(1.96349204943e-25), f32(4.62200670123e-38)), f32(1.96349204943e-25));
+assert_return(() => $$.exports["f32.add"](f32(6.40904986624e+11), f32(-6.44495490993e+16)), f32(-6.44489091492e+16));
+assert_return(() => $$.exports["f32.add"](f32(6.0196598497e-05), f32(1.20372792216e+32)), f32(1.20372792216e+32));
+assert_return(() => $$.exports["f64.add"](9.218993827002741e-125, -1.2830782438780485e+75), -1.2830782438780485e+75);
+assert_return(() => $$.exports["f64.add"](-9.650340787014896e+22, 4.670208988478548e-56), -9.650340787014896e+22);
+assert_return(() => $$.exports["f64.add"](2.8559147675434106e-45, -0.00026124280570653086), -0.00026124280570653086);
+assert_return(() => $$.exports["f64.add"](4.179099281652967e+149, 7.93355647415127e+19), 4.179099281652967e+149);
+assert_return(() => $$.exports["f64.add"](8.265442868747023e+96, 4.360332783900625e+118), 4.360332783900625e+118);
+assert_return(() => $$.exports["f32.add"](f32(5.23840412782e+21), f32(-1570182.5)), f32(5.23840412782e+21));
+assert_return(() => $$.exports["f32.add"](f32(4.25893790178e-14), f32(-5.7092352567e-24)), f32(4.25893790178e-14));
+assert_return(() => $$.exports["f32.add"](f32(-2.72510258716e-13), f32(8.37115587335e+37)), f32(8.37115587335e+37));
+assert_return(() => $$.exports["f32.add"](f32(-8.84535974739e-14), f32(-1.51656256735e-32)), f32(-8.84535974739e-14));
+assert_return(() => $$.exports["f32.add"](f32(0.00105210347101), f32(-7.58213472342e-33)), f32(0.00105210347101));
+assert_return(() => $$.exports["f64.add"](1.5111352281889246e+54, -2.760218100603169e-159), 1.5111352281889246e+54);
+assert_return(() => $$.exports["f64.add"](6.238671976036028e+46, -8.592185488839212e-19), 6.238671976036028e+46);
+assert_return(() => $$.exports["f64.add"](4.195022848436354e-122, -2.9225342022551453e-295), 4.195022848436354e-122);
+assert_return(() => $$.exports["f64.add"](-2.1522054671482452e+44, -1.1122204120471372e+42), -2.1633276712687165e+44);
+assert_return(() => $$.exports["f64.add"](-13.6911535055856, 2.0661178989244198e+87), 2.0661178989244198e+87);
+assert_return(() => $$.exports["f32.add"](f32(-6.45602103061e-36), f32(2.02199490333e-13)), f32(2.02199490333e-13));
+assert_return(() => $$.exports["f32.add"](f32(-2.68231688096e-05), f32(1.11960156701e-08)), f32(-2.68119729299e-05));
+assert_return(() => $$.exports["f32.add"](f32(-1.2852617216e+11), f32(2.73563047337e-33)), f32(-1.2852617216e+11));
+assert_return(() => $$.exports["f32.add"](f32(4.15897312732e-36), f32(-1573528704.0)), f32(-1573528704.0));
+assert_return(() => $$.exports["f32.add"](f32(-9.3387686441e-37), f32(7.86475144986e+28)), f32(7.86475144986e+28));
+assert_return(() => $$.exports["f64.add"](2.1986596650683218e-234, -2.3544759484546134e+302), -2.3544759484546134e+302);
+assert_return(() => $$.exports["f64.add"](-3.141756195935957e+155, -3.011409851461166e+148), -3.1417564970769423e+155);
+assert_return(() => $$.exports["f64.add"](-1.3722858367681836e-291, 1.1571842749688977e-85), 1.1571842749688977e-85);
+assert_return(() => $$.exports["f64.add"](-9.828583756551075e-154, 1.6862581574752944e-259), -9.828583756551075e-154);
+assert_return(() => $$.exports["f64.add"](-6.725842035221635e+290, 8.374007930974482e+240), -6.725842035221635e+290);
+assert_return(() => $$.exports["f64.add"](-2.1089660532788995e+242, 5.814832334211963e+248), 5.814830225245911e+248);
+assert_return(() => $$.exports["f64.add"](1.0231579266682148e+236, 4.502043007974949e+224), 1.0231579266727168e+236);
+assert_return(() => $$.exports["f64.add"](-1.3052997857095656e+188, 1.5489943422018657e+203), 1.5489943422018645e+203);
+assert_return(() => $$.exports["f64.add"](4.7629997434721684e+139, 4.555864510582597e+155), 4.555864510582597e+155);
+assert_return(() => $$.exports["f64.add"](3.958952516558414e-300, 2.3092460710062946e-290), 2.30924607140219e-290);
+assert_return(() => $$.exports["f64.add"](-4.3780558475415996e+226, -4.9680759347383435e+286), -4.9680759347383435e+286);
+assert_return(() => $$.exports["f64.add"](2.117431116854608e+58, -2.6385928474612128e+82), -2.6385928474612128e+82);
+assert_return(() => $$.exports["f64.add"](-9.508489561700635e+90, 7.858068235728165e-128), -9.508489561700635e+90);
+assert_return(() => $$.exports["f64.add"](-5.079144928553737e-96, -3.540217207424998e+140), -3.540217207424998e+140);
+assert_return(() => $$.exports["f64.add"](-4.165382103988111e-60, 1.0865942283516648e-298), -4.165382103988111e-60);
+assert_return(() => $$.exports["f32.add"](f32(9.72156491625e+34), f32(3.05590867039e+38)), f32(3.05688080629e+38));
+assert_return(() => $$.exports["f32.add"](f32(2.70465627829e+38), f32(-2.30236846838e+32)), f32(2.70465404722e+38));
+assert_return(() => $$.exports["f32.add"](f32(3.57209281934e+35), f32(-2.36494052076e+38)), f32(-2.36136838278e+38));
+assert_return(() => $$.exports["f32.add"](f32(-1.48423409279e+36), f32(-3.28991392884e+38)), f32(-3.30475619053e+38));
+assert_return(() => $$.exports["f32.add"](f32(-2.19885598148e+38), f32(-8.1560928643e+37)), f32(-3.0144652172e+38));
+assert_return(() => $$.exports["f64.add"](9.039020493954763e+307, 2.2943337422040356e+295), 9.039020493957058e+307);
+assert_return(() => $$.exports["f64.add"](1.6591605973624605e+308, 1.257734933144416e+298), 1.659160597488234e+308);
+assert_return(() => $$.exports["f64.add"](-1.363512925613943e+308, 6.050703060387358e+304), -1.3629078553079044e+308);
+assert_return(() => $$.exports["f64.add"](-3.4377613258227424e+301, 1.6994715275879349e+308), 1.6994711838118022e+308);
+assert_return(() => $$.exports["f64.add"](9.227342700864557e+307, -3.926941645101868e+298), 9.227342696937615e+307);
+assert_return(() => $$.exports["f32.add"](f32(8.31345537333e-39), f32(8.73008943274e-43)), f32(8.31432838227e-39));
+assert_return(() => $$.exports["f32.add"](f32(5.184804318e-44), f32(-2.80259692865e-45)), f32(4.90454462514e-44));
+assert_return(() => $$.exports["f32.add"](f32(-1.12103877146e-44), f32(5.18628408918e-39)), f32(5.18627287879e-39));
+assert_return(() => $$.exports["f32.add"](f32(-2.80259692865e-44), f32(2.36752828347e-37)), f32(2.36752805926e-37));
+assert_return(() => $$.exports["f32.add"](f32(6.34788204339e-43), f32(-3.326962814e-41)), f32(-3.26348399357e-41));
+assert_return(() => $$.exports["f64.add"](2.8461489375936755e-308, -5.130160608603642e-308), -2.284011671009967e-308);
+assert_return(() => $$.exports["f64.add"](4.7404811354775e-308, -8.895417776504167e-308), -4.154936641026667e-308);
+assert_return(() => $$.exports["f64.add"](-9.330082001250494e-309, -2.9863980609419717e-308), -3.919406261067021e-308);
+assert_return(() => $$.exports["f64.add"](1.4418693884494008e-307, -1.6324914377759187e-307), -1.906220493265178e-308);
+assert_return(() => $$.exports["f64.add"](-4.3203619362281506e-308, 2.521511966399844e-308), -1.7988499698283067e-308);
+assert_return(() => $$.exports["f32.add"](f32(3.40282326356e+38), f32(2.02824096037e+31)), f32(3.40282346639e+38));
+assert_return(() => $$.exports["f64.add"](1.7976931348623155e+308, 1.99584030953472e+292), 1.7976931348623157e+308);
+assert_return(() => $$.exports["f32.sub"](f32(65536.0), f32(7.27595761418e-12)), f32(65536.0));
+assert_return(() => $$.exports["f64.sub"](65536.0, 7.275957614183426e-12), 65535.99999999999);
+assert_return(() => $$.exports["f32.sub"](f32(1.0), f32(2.98023223877e-08)), f32(1.0));
+assert_return(() => $$.exports["f32.sub"](f32(1.0), f32(2.98023259404e-08)), f32(0.999999940395));
+assert_return(() => $$.exports["f64.sub"](1.0, 5.551115123125783e-17), 1.0);
+assert_return(() => $$.exports["f64.sub"](1.0, 5.551115123125784e-17), 0.9999999999999999);
+assert_return(() => $$.exports["f32.sub"](f32(2.37920805984e-32), f32(-7.22129761698e+35)), f32(7.22129761698e+35));
+assert_return(() => $$.exports["f32.sub"](f32(-8.4228402384e+35), f32(-1.11184141353e+13)), f32(-8.4228402384e+35));
+assert_return(() => $$.exports["f32.sub"](f32(1.45494437218), f32(-3.37926145558e-25)), f32(1.45494437218));
+assert_return(() => $$.exports["f32.sub"](f32(9.48089142841e-36), f32(1.85895024984e-23)), f32(-1.85895024984e-23));
+assert_return(() => $$.exports["f32.sub"](f32(6.18116700934e-06), f32(-9.39598642425e-33)), f32(6.18116700934e-06));
+assert_return(() => $$.exports["f64.sub"](-7.75701650124413e-101, -2.524845082116609e-272), -7.75701650124413e-101);
+assert_return(() => $$.exports["f64.sub"](-2.099187106483271e+166, -3.8165079778426864e-48), -2.099187106483271e+166);
+assert_return(() => $$.exports["f64.sub"](2.8592030964162332e-139, -2.0889465194336087e-252), 2.8592030964162332e-139);
+assert_return(() => $$.exports["f64.sub"](3.03879528930943e-303, -2.3204941114021897e+46), 2.3204941114021897e+46);
+assert_return(() => $$.exports["f64.sub"](-1.4953904039036317e-43, -1.0592252695645683e-162), -1.4953904039036317e-43);
+assert_return(() => $$.exports["f32.sub"](f32(-4.48601655272e+32), f32(-8.98414805089e+33)), f32(8.5355464343e+33));
+assert_return(() => $$.exports["f32.sub"](f32(-8.99427424567e+32), f32(91.5793838501)), f32(-8.99427424567e+32));
+assert_return(() => $$.exports["f32.sub"](f32(-1.19749997533e-25), f32(6.31404049045e-08)), f32(-6.31404049045e-08));
+assert_return(() => $$.exports["f32.sub"](f32(-1.18004866619e-23), f32(-0.000315587356454)), f32(0.000315587356454));
+assert_return(() => $$.exports["f32.sub"](f32(-7.36483805054e+29), f32(3.08245132955e-18)), f32(-7.36483805054e+29));
+assert_return(() => $$.exports["f64.sub"](-9.410469964196796e+60, -1.730627569138597e+271), 1.730627569138597e+271);
+assert_return(() => $$.exports["f64.sub"](2.877908564233173e-111, 2.339448785991429e-136), 2.877908564233173e-111);
+assert_return(() => $$.exports["f64.sub"](-9.719219783531962e-61, 1.572015082308034e-153), -9.719219783531962e-61);
+assert_return(() => $$.exports["f64.sub"](-3.4908896031751274e-299, -1.9928479721303208e-99), 1.9928479721303208e-99);
+assert_return(() => $$.exports["f64.sub"](-7.538298763725556e+33, 4.447012580193329e+51), -4.447012580193329e+51);
+assert_return(() => $$.exports["f32.sub"](f32(7.58469764467e+28), f32(4.63917531306e-05)), f32(7.58469764467e+28));
+assert_return(() => $$.exports["f32.sub"](f32(-567139.875), f32(-3.0334842277e-11)), f32(-567139.875));
+assert_return(() => $$.exports["f32.sub"](f32(-1.74122608693e-11), f32(-1.78777933677e-17)), f32(-1.7412243522e-11));
+assert_return(() => $$.exports["f32.sub"](f32(-6.56455449644e-05), f32(0.000144738063682)), f32(-0.000210383615922));
+assert_return(() => $$.exports["f32.sub"](f32(-1.60161148233e-10), f32(-8.53800749739e-32)), f32(-1.60161148233e-10));
+assert_return(() => $$.exports["f64.sub"](-9.358725267183177e-48, -3.1137147338685164e+217), 3.1137147338685164e+217);
+assert_return(() => $$.exports["f64.sub"](-4.390767596767215e+228, -6.789045715895856e+271), 6.789045715895856e+271);
+assert_return(() => $$.exports["f64.sub"](3.6288281010831153e-240, 3.3831996832450044e+54), -3.3831996832450044e+54);
+assert_return(() => $$.exports["f64.sub"](-3.645097751812619e-173, 3.1423490969686624e-164), -3.1423491006137603e-164);
+assert_return(() => $$.exports["f64.sub"](-8.021529638989887e-169, -6.774972769072139e-05), 6.774972769072139e-05);
+assert_return(() => $$.exports["f64.sub"](5.816988065793039e-24, 2.5021499241540866e-35), 5.816988065768018e-24);
+assert_return(() => $$.exports["f64.sub"](4.3336683304809554e-296, 1.6945582607476316e-304), 4.3336683135353726e-296);
+assert_return(() => $$.exports["f64.sub"](6.908052676315257e-77, 1.2001773734799856e-60), -1.2001773734799856e-60);
+assert_return(() => $$.exports["f64.sub"](-2.2044291547443813e-12, -2.7947429925618632e-21), -2.204429151949638e-12);
+assert_return(() => $$.exports["f64.sub"](4.016393569117761e-08, 0.17053881989395447), -0.17053877973001877);
+assert_return(() => $$.exports["f64.sub"](-1.0015106898667285e-245, -4.785375958943186e-231), 4.7853759589431757e-231);
+assert_return(() => $$.exports["f64.sub"](-15618959953.641388, 5.982344106207189e+110), -5.982344106207189e+110);
+assert_return(() => $$.exports["f64.sub"](3.883207154037668e+34, 4.2192279274320304e-178), 3.883207154037668e+34);
+assert_return(() => $$.exports["f64.sub"](1.0705986890807897e-147, -1.7466607734737216e-209), 1.0705986890807897e-147);
+assert_return(() => $$.exports["f64.sub"](9.49378346261834e-18, 1.4584885434950294e-186), 9.49378346261834e-18);
+assert_return(() => $$.exports["f32.sub"](f32(23.1406917572), f32(3.14159274101)), f32(19.9990997314));
+assert_return(() => $$.exports["f64.sub"](23.14069263277927, 3.141592653589793), 19.999099979189477);
+assert_return(() => $$.exports["f32.sub"](f32(2999999.0), f32(2999998.0)), f32(1.0));
+assert_return(() => $$.exports["f32.sub"](f32(1999999.0), f32(1999995.0)), f32(4.0));
+assert_return(() => $$.exports["f32.sub"](f32(1999999.0), f32(1999993.0)), f32(6.0));
+assert_return(() => $$.exports["f32.sub"](f32(400002.0), f32(400001.0)), f32(1.0));
+assert_return(() => $$.exports["f32.sub"](f32(400002.0), f32(400000.0)), f32(2.0));
+assert_return(() => $$.exports["f64.sub"](2999999999999999.0, 2999999999999998.0), 1.0);
+assert_return(() => $$.exports["f64.sub"](1999999999999999.0, 1999999999999995.0), 4.0);
+assert_return(() => $$.exports["f64.sub"](1999999999999999.0, 1999999999999993.0), 6.0);
+assert_return(() => $$.exports["f64.sub"](400000000000002.0, 400000000000001.0), 1.0);
+assert_return(() => $$.exports["f64.sub"](400000000000002.0, 400000000000000.0), 2.0);
+assert_return(() => $$.exports["f32.sub"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(1.17549421069e-38));
+assert_return(() => $$.exports["f64.sub"](2.2250738585072014e-308, 5e-324), 2.225073858507201e-308);
+assert_return(() => $$.exports["f32.sub"](f32(1.17549435082e-38), f32(1.17549421069e-38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["f64.sub"](2.2250738585072014e-308, 2.225073858507201e-308), 5e-324);
+assert_return(() => $$.exports["f32.mul"](f32(9.99999986991e+14), f32(9.99999986991e+14)), f32(9.9999993949e+29));
+assert_return(() => $$.exports["f32.mul"](f32(1.00000002004e+20), f32(1.00000002004e+20)), Infinity);
+assert_return(() => $$.exports["f32.mul"](f32(9.99999956202e+24), f32(9.99999956202e+24)), Infinity);
+assert_return(() => $$.exports["f64.mul"](1000000000000000.0, 1000000000000000.0), 1e+30);
+assert_return(() => $$.exports["f64.mul"](1e+20, 1e+20), 1e+40);
+assert_return(() => $$.exports["f64.mul"](1e+25, 1e+25), 1.0000000000000003e+50);
+assert_return(() => $$.exports["f32.mul"](f32(1848874880.0), f32(19954563072.0)), f32(3.68934925455e+19));
+assert_return(() => $$.exports["f64.mul"](1848874847.0, 19954562207.0), 3.689348814741911e+19);
+assert_return(() => $$.exports["f32.mul"](f32(77.0999984741), f32(850.0)), f32(65535.0));
+assert_return(() => $$.exports["f64.mul"](77.1, 850.0), 65534.99999999999);
+assert_return(() => $$.exports["f32.mul"](f32(-2.49383943148e+18), f32(2.11760539659e-11)), f32(-52809680.0));
+assert_return(() => $$.exports["f32.mul"](f32(-6.77724842063e+30), f32(-3.47582418302e-31)), f32(2.35565233231));
+assert_return(() => $$.exports["f32.mul"](f32(-8.3843975881e+27), f32(-1.19489907302e-29)), f32(0.100185088813));
+assert_return(() => $$.exports["f32.mul"](f32(-6.56765410037e+23), f32(-4.68897659886e-23)), f32(30.7955760956));
+assert_return(() => $$.exports["f32.mul"](f32(1.33282037162e+16), f32(45.5672225952)), f32(6.07329197656e+17));
+assert_return(() => $$.exports["f64.mul"](-9.942622609334243e+127, 5.8317724151424514e+284), -Infinity);
+assert_return(() => $$.exports["f64.mul"](-2.748155824301909e-297, -2.093035437779455e-66), 0.0);
+assert_return(() => $$.exports["f64.mul"](4.648882573713025e+182, -1.5927288648725436e+32), -7.404409464555696e+214);
+assert_return(() => $$.exports["f64.mul"](-8.261927764172427e-95, 3.6684744190529535e+175), -3.0308670654929913e+81);
+assert_return(() => $$.exports["f64.mul"](2.5383895833176925e+239, 7.842892881810105e-259), 1.9908317594263248e-19);
+assert_return(() => $$.exports["f32.mul"](f32(-2.01533334574e-27), f32(-5.03135328303e+27)), f32(10.1398544312));
+assert_return(() => $$.exports["f32.mul"](f32(1.22863253125e+22), f32(749601.8125)), f32(9.20985190161e+27));
+assert_return(() => $$.exports["f32.mul"](f32(-2.76351386219e-10), f32(-3.55247136163e+22)), f32(9.81730433434e+12));
+assert_return(() => $$.exports["f32.mul"](f32(2.18931219293e+20), f32(-40298.7851562)), f32(-8.82266206225e+24));
+assert_return(() => $$.exports["f32.mul"](f32(1691996288.0), f32(-1.22103352316e+20)), f32(-2.0659841458e+29));
+assert_return(() => $$.exports["f64.mul"](-7.576316076452304e-193, 4.601355879514986e-95), -3.486132652344772e-287);
+assert_return(() => $$.exports["f64.mul"](1.2228616081443885e-83, -8.055526185180067e-192), -9.850793705258527e-275);
+assert_return(() => $$.exports["f64.mul"](-2.0686512460392508e+99, -3.668010715832548e+251), Infinity);
+assert_return(() => $$.exports["f64.mul"](1.543238835610281e+285, 7.370621385787007e-133), 1.1374629165126177e+153);
+assert_return(() => $$.exports["f64.mul"](2.2358765662420587e+102, -7.60669005920257e+50), -1.700762005003744e+153);
+assert_return(() => $$.exports["f32.mul"](f32(-1.10087033061e+14), f32(-5.4038020774e+28)), Infinity);
+assert_return(() => $$.exports["f32.mul"](f32(-0.1936635077), f32(2.97489539984e-30)), f32(-5.76128683287e-31));
+assert_return(() => $$.exports["f32.mul"](f32(-3.43007127412e-06), f32(7.79915232792e+31)), f32(-2.67516490338e+26));
+assert_return(() => $$.exports["f32.mul"](f32(-9.90038494858e+16), f32(2.09337736553e-29)), f32(-2.07252422689e-12));
+assert_return(() => $$.exports["f32.mul"](f32(-129919.070312), f32(1.84809985644e-36)), f32(-2.40103419814e-31));
+assert_return(() => $$.exports["f64.mul"](-6.625572200844895e-150, -3.737402068174001e+130), 2.4762427246273877e-19);
+assert_return(() => $$.exports["f64.mul"](8.21076848561758e+143, -1.2976552328552289e-230), -1.0654746691124455e-86);
+assert_return(() => $$.exports["f64.mul"](-1.0223449294906041e+52, 1.9708555833346805e+108), -2.0148942123804574e+160);
+assert_return(() => $$.exports["f64.mul"](2.918243080119086e+231, -6.36331709416897e+112), -Infinity);
+assert_return(() => $$.exports["f64.mul"](3.407037798802672e+24, 1.225791423971563e+21), 4.1763177149192664e+45);
+assert_return(() => $$.exports["f64.mul"](4.4091927284399547e-103, 1.1518840702296592e-173), 5.078878866462432e-276);
+assert_return(() => $$.exports["f64.mul"](-0.002980041826472432, 6.3125412993218e+217), -1.8811637103313594e+215);
+assert_return(() => $$.exports["f64.mul"](-3.083445780813001e+110, -1.0081049555008529e-196), 3.1084369716557833e-86);
+assert_return(() => $$.exports["f64.mul"](3.493875013156773e+233, 2.1313169159308099e+18), 7.44655491768901e+251);
+assert_return(() => $$.exports["f64.mul"](-1.2500108005100234e-83, 1.0352657041604675e+270), -1.294093311598199e+187);
+assert_return(() => $$.exports["f64.mul"](8.947461661755698e-181, 2.0853844141312436e-128), 1.8658897095462173e-308);
+assert_return(() => $$.exports["f64.mul"](-1.161813037330394e-17, -1.8737038135583668e-291), 2.1768935186877886e-308);
+assert_return(() => $$.exports["f64.mul"](-2.1752326768352433e-147, -6.631210068072052e-162), 1.4424424827029184e-308);
+assert_return(() => $$.exports["f64.mul"](-7.149518157441743e-233, 2.2770445062365393e-77), -1.627977104264113e-309);
+assert_return(() => $$.exports["f64.mul"](-4.817739302150786e-156, -2.5375023049719763e-153), 1.2225024583961697e-308);
+assert_return(() => $$.exports["f64.mul"](4.6576441629501554e+256, 7.021344893525714e-266), 3.270292605938992e-09);
+assert_return(() => $$.exports["f64.mul"](0.012451716278313712, 1.945309177849331e-45), 2.422243795617958e-47);
+assert_return(() => $$.exports["f64.mul"](-3.8312314777598586, 9.039887741742674e-13), -3.4633902471580017e-12);
+assert_return(() => $$.exports["f64.mul"](9.843582638849689e-113, 3.375405654777583e-62), 3.3226084502443684e-174);
+assert_return(() => $$.exports["f64.mul"](-2.6054453709451446e+23, 3.2887528185809035e-105), -8.568665807354412e-82);
+assert_return(() => $$.exports["f32.mul"](f32(2.64697796017e-23), f32(2.64697796017e-23)), f32(0.0));
+assert_return(() => $$.exports["f32.mul"](f32(2.64697827571e-23), f32(2.64697827571e-23)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["f64.mul"](1.5717277847026285e-162, 1.5717277847026285e-162), 0.0);
+assert_return(() => $$.exports["f64.mul"](1.5717277847026288e-162, 1.5717277847026288e-162), 5e-324);
+assert_return(() => $$.exports["f32.mul"](f32(1.84467429742e+19), f32(1.84467429742e+19)), f32(3.40282326356e+38));
+assert_return(() => $$.exports["f32.mul"](f32(1.84467440737e+19), f32(1.84467440737e+19)), Infinity);
+assert_return(() => $$.exports["f64.mul"](1.3407807929942596e+154, 1.3407807929942596e+154), 1.7976931348623155e+308);
+assert_return(() => $$.exports["f64.mul"](1.3407807929942597e+154, 1.3407807929942597e+154), Infinity);
+assert_return(() => $$.exports["f32.mul"](f32(1.17549435082e-38), f32(1.19209289551e-07)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["f64.mul"](2.2250738585072014e-308, 2.220446049250313e-16), 5e-324);
+assert_return(() => $$.exports["f32.div"](f32(1.12345683575), f32(100.0)), f32(0.011234568432));
+assert_return(() => $$.exports["f32.div"](f32(8391667.0), f32(12582905.0)), f32(0.666910171509));
+assert_return(() => $$.exports["f32.div"](f32(65536.0), f32(7.27595761418e-12)), f32(9.00719925474e+15));
+assert_return(() => $$.exports["f32.div"](f32(1.8622957468), f32(3.40282346639e+38)), f32(5.47279497449e-39));
+assert_return(() => $$.exports["f32.div"](f32(4.0), f32(3.0)), f32(1.33333337307));
+assert_return(() => $$.exports["f64.div"](1.123456789, 100.0), 0.01123456789);
+assert_return(() => $$.exports["f64.div"](8391667.0, 12582905.0), 0.6669101451532854);
+assert_return(() => $$.exports["f64.div"](65536.0, 7.275957614183426e-12), 9007199254740992.0);
+assert_return(() => $$.exports["f64.div"](1.8622957468032837, 1.7976931348623157e+308), 1.035936395755283e-308);
+assert_return(() => $$.exports["f64.div"](4.0, 3.0), 1.3333333333333333);
+assert_return(() => $$.exports["f32.div"](f32(4195835.0), f32(3145727.0)), f32(1.33382046223));
+assert_return(() => $$.exports["f64.div"](4195835.0, 3145727.0), 1.333820449136241);
+assert_return(() => $$.exports["f32.div"](f32(5.0296329364e-15), f32(3.36324376381e+38)), f32(0.0));
+assert_return(() => $$.exports["f32.div"](f32(8.92198679354e-27), f32(3.54097526211e+20)), f32(0.0));
+assert_return(() => $$.exports["f32.div"](f32(-104167.46875), f32(1.5866622669e-24)), f32(-6.56519491718e+28));
+assert_return(() => $$.exports["f32.div"](f32(-2.49386573826e-23), f32(-3.62300875064e-37)), f32(6.88341070643e+13));
+assert_return(() => $$.exports["f32.div"](f32(-4.14220419072e+12), f32(1.19549483882e-24)), f32(-3.46484498333e+36));
+assert_return(() => $$.exports["f64.div"](1.9390116382448384e+44, 2.5290742357348314e+67), 7.666883046955921e-24);
+assert_return(() => $$.exports["f64.div"](6.600332149752304e-189, 3.007915153468629e-293), 2.1943212534239927e+104);
+assert_return(() => $$.exports["f64.div"](-9.348275173661903e+89, 4.809309529035847e+192), -1.9437873809582001e-103);
+assert_return(() => $$.exports["f64.div"](-1.7598339088417535e+208, 1.9938607258068285e+74), -8.826262968440915e+133);
+assert_return(() => $$.exports["f64.div"](-4.566268877844991e+162, 3.128249582233453e+136), -1.4596881603624626e+26);
+assert_return(() => $$.exports["f32.div"](f32(-1.03940637604e+21), f32(-1.2965965898e-26)), Infinity);
+assert_return(() => $$.exports["f32.div"](f32(2.68315626201e-14), f32(3.1241038463e+13)), f32(8.58856325341e-28));
+assert_return(() => $$.exports["f32.div"](f32(1.27342474461), f32(-6.92783706823e+26)), f32(-1.838127376e-27));
+assert_return(() => $$.exports["f32.div"](f32(6.89888271446e-16), f32(3.762675552e-39)), f32(1.83350457958e+23));
+assert_return(() => $$.exports["f32.div"](f32(1.81991622049e+27), f32(2.05067030525e+26)), f32(8.87473869324));
+assert_return(() => $$.exports["f64.div"](2.1137715924428077e-308, -1.6733261612910253e+109), -0.0);
+assert_return(() => $$.exports["f64.div"](-8.116644948016275e-298, 6.517571349002277e-162), -1.2453480772801648e-136);
+assert_return(() => $$.exports["f64.div"](-9.335476912259029e-122, -39099281466396.5), 2.3876338802497726e-135);
+assert_return(() => $$.exports["f64.div"](-1.6868569854885902e+24, 1.3535993861076857e-238), -1.2462010568276012e+262);
+assert_return(() => $$.exports["f64.div"](-1.733887733249412e+71, -7.002616047521747e+16), 2.47605712134259e+54);
+assert_return(() => $$.exports["f32.div"](f32(93506192.0), f32(2.87608846382e-36)), Infinity);
+assert_return(() => $$.exports["f32.div"](f32(-2.00575393467e+23), f32(246697216.0)), f32(-8.1304281206e+14));
+assert_return(() => $$.exports["f32.div"](f32(3.8471221248e+11), f32(-1.07037848166e+29)), f32(-3.59417007189e-18));
+assert_return(() => $$.exports["f32.div"](f32(-4.15666500377e+33), f32(-901.419189453)), f32(4.61124534608e+30));
+assert_return(() => $$.exports["f32.div"](f32(-6.70238686512e+27), f32(-14000.2548828)), f32(4.7873321685e+23));
+assert_return(() => $$.exports["f64.div"](-1.0085269598907525e-197, 1.8780374032850215e-208), -53701111496.85621);
+assert_return(() => $$.exports["f64.div"](-3.25716645629511e+235, -5.885738519211168e-167), Infinity);
+assert_return(() => $$.exports["f64.div"](-3.1640946861233317e-225, 4.5854510556516254e-20), -6.900291046010721e-206);
+assert_return(() => $$.exports["f64.div"](-5.268422429466566e+95, -1.4816907071451201e-177), 3.5556829803013436e+272);
+assert_return(() => $$.exports["f64.div"](4.03995627001749e+54, -4.7097881971884274e+64), -8.57778757955442e-11);
+assert_return(() => $$.exports["f64.div"](-2.039595604683476e+176, -7.474088739461226e+58), 2.728888665604071e+117);
+assert_return(() => $$.exports["f64.div"](-3.0426171229468766e+164, -2.6556792326588243e+99), 1.1457020432022042e+65);
+assert_return(() => $$.exports["f64.div"](4.923524051248073e+55, -3.663408283100367e+290), -1.3439736089369927e-235);
+assert_return(() => $$.exports["f64.div"](2.892608435563416e+65, 5.171948758373355e+128), 5.592879146144478e-64);
+assert_return(() => $$.exports["f64.div"](-4.215425823442686e+248, 1.4285058546706491e+105), -2.9509335293656034e+143);
+assert_return(() => $$.exports["f64.div"](1.8622957433108482, 1.7976931348623157e+308), 1.0359363938125513e-308);
+assert_return(() => $$.exports["f64.div"](8.566632480779937e-305, 5381.2699796556235), 1.591935084685746e-308);
+assert_return(() => $$.exports["f64.div"](-8.196220919495565e-44, -1.0406557086484777e+265), 7.876015911295176e-309);
+assert_return(() => $$.exports["f64.div"](-7.052801866447111e-119, -1.3767429405781133e+190), 5.122816800851397e-309);
+assert_return(() => $$.exports["f64.div"](2.2655621734165475e-258, 1.332199329634947e+50), 1.7006180103974106e-308);
+assert_return(() => $$.exports["f64.div"](4.196304106554003e-303, -9789327.297653636), -4.2866113053139e-310);
+assert_return(() => $$.exports["f32.div"](f32(1.03886078499e+27), f32(6.21107950387e+12)), f32(1.67259297284e+14));
+assert_return(() => $$.exports["f32.div"](f32(1.86903296399e+27), f32(-1.12355728108e+32)), f32(-1.66349600477e-05));
+assert_return(() => $$.exports["f32.div"](f32(3.29074724534e+24), f32(0.906478822231)), f32(3.63025265249e+24));
+assert_return(() => $$.exports["f32.div"](f32(-908946.5625), f32(-17034289152.0)), f32(5.33598176844e-05));
+assert_return(() => $$.exports["f32.div"](f32(-2.40924766031e-13), f32(-8.98408116377e+16)), f32(2.68168516711e-30));
+assert_return(() => $$.exports["f64.div"](3.910973045785834e+18, -8.392730733897136e-260), -4.6599529638070336e+277);
+assert_return(() => $$.exports["f64.div"](8.379351966732404e-40, -2.1077277802048832e-157), -3.975538039318286e+117);
+assert_return(() => $$.exports["f64.div"](4.561142017854715e+201, 1.5005780677368491e+192), 3039589952.6465592);
+assert_return(() => $$.exports["f64.div"](-6.236072401827852e+54, 8.31706325046099e+232), -7.497925907299316e-179);
+assert_return(() => $$.exports["f64.div"](-9.757271330468098e-263, -3.5613812243480865e-195), 2.739743575824061e-68);
+assert_return(() => $$.exports["f64.div"](1.046256872449641e-17, 1.8150892711657447), 5.764217160391678e-18);
+assert_return(() => $$.exports["f64.div"](2.2038268106596436e-31, -2.859803943943555e-13), -7.706216418530616e-19);
+assert_return(() => $$.exports["f64.div"](7.596539988437179e-13, 2.1055358831337124e-34), 3.6078891123579866e+21);
+assert_return(() => $$.exports["f64.div"](1.1206961145008669e+27, 1.597132338028665e+29), 0.007016927074960728);
+assert_return(() => $$.exports["f64.div"](0.0006342142502301953, -6391950865520085.0), -9.922076429769178e-20);
+assert_return(() => $$.exports["f32.div"](f32(1.17549435082e-38), f32(1.17549421069e-38)), f32(1.00000011921));
+assert_return(() => $$.exports["f32.div"](f32(1.17549421069e-38), f32(1.17549435082e-38)), f32(0.999999880791));
+assert_return(() => $$.exports["f64.div"](2.2250738585072014e-308, 2.225073858507201e-308), 1.0000000000000002);
+assert_return(() => $$.exports["f64.div"](2.225073858507201e-308, 2.2250738585072014e-308), 0.9999999999999998);
+assert_return(() => $$.exports["f32.div"](f32(2.38418564891e-07), f32(3.40282346639e+38)), f32(0.0));
+assert_return(() => $$.exports["f32.div"](f32(2.38418579102e-07), f32(3.40282346639e+38)), f32(1.40129846432e-45));
+assert_return(() => $$.exports["f64.div"](4.4408920985006257e-16, 1.7976931348623157e+308), 0.0);
+assert_return(() => $$.exports["f64.div"](4.440892098500626e-16, 1.7976931348623157e+308), 5e-324);
+assert_return(() => $$.exports["f32.div"](f32(1.0), f32(2.93873587706e-39)), Infinity);
+assert_return(() => $$.exports["f32.div"](f32(1.0), f32(2.93873727835e-39)), f32(3.40282204662e+38));
+assert_return(() => $$.exports["f64.div"](1.0, 5.562684646268003e-309), Infinity);
+assert_return(() => $$.exports["f64.div"](1.0, 5.56268464626801e-309), 1.7976931348623143e+308);
+assert_return(() => $$.exports["f32.div"](f32(1.0), f32(8.50706018714e+37)), f32(1.17549421069e-38));
+assert_return(() => $$.exports["f32.div"](f32(1.0), f32(8.50705917302e+37)), f32(1.17549435082e-38));
+assert_return(() => $$.exports["f64.div"](1.0, 4.494232837155791e+307), 2.225073858507201e-308);
+assert_return(() => $$.exports["f64.div"](1.0, 4.49423283715579e+307), 2.2250738585072014e-308);
+assert_return(() => $$.exports["f32.div"](f32(1.17549435082e-38), f32(1.40129846432e-45)), f32(8388608.0));
+assert_return(() => $$.exports["f64.div"](2.2250738585072014e-308, 5e-324), 4503599627370496.0);
+assert_return(() => $$.exports["f32.div"](f32(1.0), f32(3.0)), f32(0.333333343267));
+assert_return(() => $$.exports["f32.div"](f32(3.0), f32(9.0)), f32(0.333333343267));
+assert_return(() => $$.exports["f32.div"](f32(9.0), f32(27.0)), f32(0.333333343267));
+assert_return(() => $$.exports["f64.div"](1.0, 3.0), 0.3333333333333333);
+assert_return(() => $$.exports["f64.div"](3.0, 9.0), 0.3333333333333333);
+assert_return(() => $$.exports["f64.div"](9.0, 27.0), 0.3333333333333333);
+assert_return(() => $$.exports["f32.sqrt"](f32(171.0)), f32(13.0766963959));
+assert_return(() => $$.exports["f32.sqrt"](f32(1.60794996873e-07)), f32(0.000400992517825));
+assert_return(() => $$.exports["f64.sqrt"](171.0), 13.076696830622021);
+assert_return(() => $$.exports["f64.sqrt"](1.60795e-07), 0.00040099251863345283);
+assert_return(() => $$.exports["f64.sqrt"](4.316357580352844e-50), 2.0775845543209175e-25);
+assert_return(() => $$.exports["f64.sqrt"](6.762533004796485e+101), 8.223462169181838e+50);
+assert_return(() => $$.exports["f64.sqrt"](1.7485296624861996e+121), 4.1815423739168294e+60);
+assert_return(() => $$.exports["f64.sqrt"](9.593720960603523e-12), 3.0973732355987585e-06);
+assert_return(() => $$.exports["f64.sqrt"](6.348452898717835e-112), 2.519613640762773e-56);
+assert_return(() => $$.exports["f64.sqrt"](0.9999999999999999), 0.9999999999999999);
+assert_return(() => $$.exports["f32.sqrt"](f32(0.129639416933)), f32(0.360054731369));
+assert_return(() => $$.exports["f32.sqrt"](f32(2.34587582271e+30)), f32(1.53162520042e+15));
+assert_return(() => $$.exports["f32.sqrt"](f32(0.0787865743041)), f32(0.280689448118));
+assert_return(() => $$.exports["f32.sqrt"](f32(5.13710260448e-22)), f32(2.26651770269e-11));
+assert_return(() => $$.exports["f32.sqrt"](f32(0.000901671533938)), f32(0.0300278458744));
+assert_return(() => $$.exports["f64.sqrt"](9.591922760825561e-279), 9.793836204892116e-140);
+assert_return(() => $$.exports["f64.sqrt"](9.357875352164005e+218), 3.059064457013615e+109);
+assert_return(() => $$.exports["f64.sqrt"](1.4770669978336558e+116), 1.2153464517715332e+58);
+assert_return(() => $$.exports["f64.sqrt"](4.880045718002789e+31), 6985732401117859.0);
+assert_return(() => $$.exports["f64.sqrt"](7.61897768717454e+300), 2.760249569726357e+150);
+assert_return(() => $$.exports["f32.sqrt"](f32(154481008.0)), f32(12429.0390625));
+assert_return(() => $$.exports["f32.sqrt"](f32(1.04713048251e-34)), f32(1.02329396885e-17));
+assert_return(() => $$.exports["f32.sqrt"](f32(3.79063712899e-05)), f32(0.00615681521595));
+assert_return(() => $$.exports["f32.sqrt"](f32(8.96075347353e-37)), f32(9.46612568309e-19));
+assert_return(() => $$.exports["f32.sqrt"](f32(1.68771198742e-37)), f32(4.1081772611e-19));
+assert_return(() => $$.exports["f64.sqrt"](3.169962643789095e+209), 5.630242129597177e+104);
+assert_return(() => $$.exports["f64.sqrt"](4.0573669271847993e-230), 2.0142906759414837e-115);
+assert_return(() => $$.exports["f64.sqrt"](1.5299861660588838e-09), 3.911503759500793e-05);
+assert_return(() => $$.exports["f64.sqrt"](2.822766928951239e-73), 5.312971794533864e-37);
+assert_return(() => $$.exports["f64.sqrt"](1.4375957727045067e+280), 1.1989978201416826e+140);
+assert_return(() => $$.exports["f32.sqrt"](f32(4.64023422985e+35)), f32(6.81192670823e+17));
+assert_return(() => $$.exports["f32.sqrt"](f32(47536.1328125)), f32(218.027832031));
+assert_return(() => $$.exports["f32.sqrt"](f32(0.812613010406)), f32(0.901450514793));
+assert_return(() => $$.exports["f32.sqrt"](f32(9.54960499196e-27)), f32(9.77220827045e-14));
+assert_return(() => $$.exports["f32.sqrt"](f32(6.8856485336e-29)), f32(8.29798113767e-15));
+assert_return(() => $$.exports["f64.sqrt"](2.3497689174953322e+222), 1.532895599020146e+111);
+assert_return(() => $$.exports["f64.sqrt"](2.9262574743429683e-115), 5.409489323718985e-58);
+assert_return(() => $$.exports["f64.sqrt"](3.773350874844908e+290), 1.942511486412605e+145);
+assert_return(() => $$.exports["f64.sqrt"](3.5498432023945234e-14), 1.8841027579180822e-07);
+assert_return(() => $$.exports["f64.sqrt"](1.3747419336166767e-148), 1.1724938949165905e-74);
+assert_return_nan(() => $$.exports["f64.sqrt"](-1.5535152663257847e-290));
+assert_return(() => $$.exports["f64.sqrt"](1.87632963480297e+31), 4331662076851067.0);
+assert_return(() => $$.exports["f64.sqrt"](2.74405777036165e-229), 5.23837548325972e-115);
+assert_return(() => $$.exports["f64.sqrt"](1.5613859952920445e-83), 3.9514377070783294e-42);
+assert_return(() => $$.exports["f64.sqrt"](6.193037689450712e+170), 2.4885814612848646e+85);
+assert_return(() => $$.exports["f32.sqrt"](f32(1.00000011921)), f32(1.0));
+assert_return(() => $$.exports["f32.sqrt"](f32(1.00000023842)), f32(1.00000011921));
+assert_return(() => $$.exports["f64.sqrt"](1.0000000000000002), 1.0);
+assert_return(() => $$.exports["f64.sqrt"](1.0000000000000004), 1.0000000000000002);
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_return(() => $$.exports["assert_23"]());
+assert_return(() => $$.exports["assert_24"]());
+assert_return(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["assert_32"]());
+assert_return(() => $$.exports["assert_33"]());
+assert_return(() => $$.exports["f32.ceil"](f32(0.999999940395)), f32(1.0));
+assert_return(() => $$.exports["f32.ceil"](f32(1.17549435082e-38)), f32(1.0));
+assert_return(() => $$.exports["f64.ceil"](0.9999999999999999), 1.0);
+assert_return(() => $$.exports["f64.ceil"](2.2250738585072014e-308), 1.0);
+assert_return(() => $$.exports["f32.ceil"](f32(8388607.5)), f32(8388608.0));
+assert_return(() => $$.exports["f32.ceil"](f32(-8388607.5)), f32(-8388607.0));
+assert_return(() => $$.exports["f64.ceil"](4503599627370495.5), 4503599627370496.0);
+assert_return(() => $$.exports["f64.ceil"](-4503599627370495.5), -4503599627370495.0);
+assert_return(() => $$.exports["f32.floor"](f32(-0.999999940395)), f32(-1.0));
+assert_return(() => $$.exports["f32.floor"](f32(-1.17549435082e-38)), f32(-1.0));
+assert_return(() => $$.exports["f64.floor"](-0.9999999999999999), -1.0);
+assert_return(() => $$.exports["f64.floor"](-2.2250738585072014e-308), -1.0);
+assert_return(() => $$.exports["f32.floor"](f32(-8388607.5)), f32(-8388608.0));
+assert_return(() => $$.exports["f32.floor"](f32(8388607.5)), f32(8388607.0));
+assert_return(() => $$.exports["f64.floor"](-4503599627370495.5), -4503599627370496.0);
+assert_return(() => $$.exports["f64.floor"](4503599627370495.5), 4503599627370495.0);
+assert_return(() => $$.exports["f32.trunc"](f32(-8388607.5)), f32(-8388607.0));
+assert_return(() => $$.exports["f32.trunc"](f32(8388607.5)), f32(8388607.0));
+assert_return(() => $$.exports["f64.trunc"](-4503599627370495.5), -4503599627370495.0);
+assert_return(() => $$.exports["f64.trunc"](4503599627370495.5), 4503599627370495.0);
+assert_return(() => $$.exports["f32.nearest"](f32(8388609.0)), f32(8388609.0));
+assert_return(() => $$.exports["f32.nearest"](f32(8388610.0)), f32(8388610.0));
+assert_return(() => $$.exports["f32.nearest"](f32(0.499999970198)), f32(0.0));
+assert_return(() => $$.exports["f32.nearest"](f32(2.81474959933e+14)), f32(2.81474959933e+14));
+assert_return(() => $$.exports["f64.nearest"](4503599627370497.0), 4503599627370497.0);
+assert_return(() => $$.exports["f64.nearest"](4503599627370498.0), 4503599627370498.0);
+assert_return(() => $$.exports["f64.nearest"](0.49999999999999994), 0.0);
+assert_return(() => $$.exports["f64.nearest"](8.112963841460667e+31), 8.112963841460667e+31);
+assert_return(() => $$.exports["f32.nearest"](f32(4.5)), f32(4.0));
+assert_return(() => $$.exports["f32.nearest"](f32(-4.5)), f32(-4.0));
+assert_return(() => $$.exports["f32.nearest"](f32(-3.5)), f32(-4.0));
+assert_return(() => $$.exports["f64.nearest"](4.5), 4.0);
+assert_return(() => $$.exports["f64.nearest"](-4.5), -4.0);
+assert_return(() => $$.exports["f64.nearest"](-3.5), -4.0);
+assert_return(() => $$.exports["f32.nearest"](f32(-8388607.5)), f32(-8388608.0));
+assert_return(() => $$.exports["f32.nearest"](f32(8388607.5)), f32(8388608.0));
+assert_return(() => $$.exports["f64.nearest"](-4503599627370495.5), -4503599627370496.0);
+assert_return(() => $$.exports["f64.nearest"](4503599627370495.5), 4503599627370496.0);
diff --git a/JSTests/wasm/spec-tests/forward.wast.js b/JSTests/wasm/spec-tests/forward.wast.js
new file mode 100644
index 0000000..b8c6df6
--- /dev/null
+++ b/JSTests/wasm/spec-tests/forward.wast.js
@@ -0,0 +1,99 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x03\x02\x00\x00\x07\x0e\x02\x04\x65\x76\x65\x6e\x00\x00\x03\x6f\x64\x64\x00\x01\x0a\x2b\x02\x14\x00\x20\x00\x41\x00\x46\x04\x7f\x41\x01\x05\x20\x00\x41\x01\x6b\x10\x01\x0b\x0b\x14\x00\x20\x00\x41\x00\x46\x04\x7f\x41\x00\x05\x20\x00\x41\x01\x6b\x10\x00\x0b\x0b");
+assert_return(() => $$.exports["even"](13), 0);
+assert_return(() => $$.exports["even"](20), 1);
+assert_return(() => $$.exports["odd"](13), 1);
+assert_return(() => $$.exports["odd"](20), 0);
diff --git a/JSTests/wasm/spec-tests/func.wast.js b/JSTests/wasm/spec-tests/func.wast.js
new file mode 100644
index 0000000..3c0c6cb
--- /dev/null
+++ b/JSTests/wasm/spec-tests/func.wast.js
@@ -0,0 +1,191 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x73\x13\x60\x00\x00\x60\x01\x7f\x00\x60\x03\x7f\x7c\x7e\x00\x60\x02\x7f\x7c\x00\x60\x05\x7f\x7d\x7e\x7f\x7c\x00\x60\x00\x01\x7f\x60\x04\x7f\x7d\x7e\x7f\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x02\x7f\x7f\x01\x7f\x60\x02\x7e\x7e\x01\x7e\x60\x02\x7d\x7d\x01\x7d\x60\x02\x7c\x7c\x01\x7c\x60\x06\x7d\x7f\x7e\x7f\x7c\x7f\x01\x7c\x60\x01\x7f\x01\x7f\x60\x08\x7c\x7e\x7c\x7e\x7c\x7e\x7d\x7f\x00\x60\x00\x00\x60\x08\x7c\x7e\x7c\x7e\x7c\x7e\x7d\x7f\x00\x03\x5a\x59\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x02\x03\x04\x05\x00\x06\x00\x05\x07\x08\x09\x05\x07\x08\x09\x09\x0a\x0b\x0c\x0d\x0a\x0b\x0c\x0d\x0e\x00\x00\x05\x07\x08\x09\x00\x05\x00\x05\x07\x08\x09\x05\x00\x05\x07\x08\x09\x05\x01\x0f\x01\x0f\x01\x0f\x05\x07\x08\x09\x00\x10\x00\x10\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x05\x01\x70\x01\x05\x05\x07\x86\x08\x3f\x01\x66\x00\x02\x01\x67\x00\x04\x0f\x6c\x6f\x63\x61\x6c\x2d\x66\x69\x72\x73\x74\x2d\x69\x33\x32\x00\x17\x0f\x6c\x6f\x63\x61\x6c\x2d\x66\x69\x72\x73\x74\x2d\x69\x36\x34\x00\x18\x0f\x6c\x6f\x63\x61\x6c\x2d\x66\x69\x72\x73\x74\x2d\x66\x33\x32\x00\x19\x0f\x6c\x6f\x63\x61\x6c\x2d\x66\x69\x72\x73\x74\x2d\x66\x36\x34\x00\x1a\x10\x6c\x6f\x63\x61\x6c\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x33\x32\x00\x1b\x10\x6c\x6f\x63\x61\x6c\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x36\x34\x00\x1c\x10\x6c\x6f\x63\x61\x6c\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x33\x32\x00\x1d\x10\x6c\x6f\x63\x61\x6c\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x36\x34\x00\x1e\x0b\x6c\x6f\x63\x61\x6c\x2d\x6d\x69\x78\x65\x64\x00\x1f\x0f\x70\x61\x72\x61\x6d\x2d\x66\x69\x72\x73\x74\x2d\x69\x33\x32\x00\x20\x0f\x70\x61\x72\x61\x6d\x2d\x66\x69\x72\x73\x74\x2d\x69\x36\x34\x00\x21\x0f\x70\x61\x72\x61\x6d\x2d\x66\x69\x72\x73\x74\x2d\x66\x33\x32\x00\x22\x0f\x70\x61\x72\x61\x6d\x2d\x66\x69\x72\x73\x74\x2d\x66\x36\x34\x00\x23\x10\x70\x61\x72\x61\x6d\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x33\x32\x00\x24\x10\x70\x61\x72\x61\x6d\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x69\x36\x34\x00\x25\x10\x70\x61\x72\x61\x6d\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x33\x32\x00\x26\x10\x70\x61\x72\x61\x6d\x2d\x73\x65\x63\x6f\x6e\x64\x2d\x66\x36\x34\x00\x27\x0b\x70\x61\x72\x61\x6d\x2d\x6d\x69\x78\x65\x64\x00\x28\x05\x65\x6d\x70\x74\x79\x00\x29\x0a\x76\x61\x6c\x75\x65\x2d\x76\x6f\x69\x64\x00\x2a\x09\x76\x61\x6c\x75\x65\x2d\x69\x33\x32\x00\x2b\x09\x76\x61\x6c\x75\x65\x2d\x69\x36\x34\x00\x2c\x09\x76\x61\x6c\x75\x65\x2d\x66\x33\x32\x00\x2d\x09\x76\x61\x6c\x75\x65\x2d\x66\x36\x34\x00\x2e\x10\x76\x61\x6c\x75\x65\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x6f\x69\x64\x00\x2f\x0f\x76\x61\x6c\x75\x65\x2d\x62\x6c\x6f\x63\x6b\x2d\x69\x33\x32\x00\x30\x0c\x72\x65\x74\x75\x72\x6e\x2d\x65\x6d\x70\x74\x79\x00\x31\x0a\x72\x65\x74\x75\x72\x6e\x2d\x69\x33\x32\x00\x32\x0a\x72\x65\x74\x75\x72\x6e\x2d\x69\x36\x34\x00\x33\x0a\x72\x65\x74\x75\x72\x6e\x2d\x66\x33\x32\x00\x34\x0a\x72\x65\x74\x75\x72\x6e\x2d\x66\x36\x34\x00\x35\x10\x72\x65\x74\x75\x72\x6e\x2d\x62\x6c\x6f\x63\x6b\x2d\x69\x33\x32\x00\x36\x0b\x62\x72\x65\x61\x6b\x2d\x65\x6d\x70\x74\x79\x00\x37\x09\x62\x72\x65\x61\x6b\x2d\x69\x33\x32\x00\x38\x09\x62\x72\x65\x61\x6b\x2d\x69\x36\x34\x00\x39\x09\x62\x72\x65\x61\x6b\x2d\x66\x33\x32\x00\x3a\x09\x62\x72\x65\x61\x6b\x2d\x66\x36\x34\x00\x3b\x0f\x62\x72\x65\x61\x6b\x2d\x62\x6c\x6f\x63\x6b\x2d\x69\x33\x32\x00\x3c\x11\x62\x72\x65\x61\x6b\x2d\x62\x72\x5f\x69\x66\x2d\x65\x6d\x70\x74\x79\x00\x3d\x0f\x62\x72\x65\x61\x6b\x2d\x62\x72\x5f\x69\x66\x2d\x6e\x75\x6d\x00\x3e\x14\x62\x72\x65\x61\x6b\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x65\x6d\x70\x74\x79\x00\x3f\x12\x62\x72\x65\x61\x6b\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x6e\x75\x6d\x00\x40\x1b\x62\x72\x65\x61\x6b\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x6e\x65\x73\x74\x65\x64\x2d\x65\x6d\x70\x74\x79\x00\x41\x19\x62\x72\x65\x61\x6b\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x6e\x65\x73\x74\x65\x64\x2d\x6e\x75\x6d\x00\x42\x0e\x69\x6e\x69\x74\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x33\x32\x00\x43\x0e\x69\x6e\x69\x74\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x36\x34\x00\x44\x0e\x69\x6e\x69\x74\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x33\x32\x00\x45\x0e\x69\x6e\x69\x74\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x36\x34\x00\x46\x19\x73\x69\x67\x6e\x61\x74\x75\x72\x65\x2d\x65\x78\x70\x6c\x69\x63\x69\x74\x2d\x72\x65\x75\x73\x65\x64\x00\x4c\x19\x73\x69\x67\x6e\x61\x74\x75\x72\x65\x2d\x69\x6d\x70\x6c\x69\x63\x69\x74\x2d\x72\x65\x75\x73\x65\x64\x00\x4d\x1c\x73\x69\x67\x6e\x61\x74\x75\x72\x65\x2d\x65\x78\x70\x6c\x69\x63\x69\x74\x2d\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x00\x4e\x1c\x73\x69\x67\x6e\x61\x74\x75\x72\x65\x2d\x69\x6d\x70\x6c\x69\x63\x69\x74\x2d\x64\x75\x70\x6c\x69\x63\x61\x74\x65\x00\x4f\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x50\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x51\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x52\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x53\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x54\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x55\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x56\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x57\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x58\x09\x0b\x01\x00\x41\x00\x0b\x05\x4b\x49\x48\x4b\x47\x0a\xcc\x07\x59\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x04\x01\x01\x7f\x0b\x04\x01\x01\x7f\x0b\x08\x03\x01\x7f\x01\x7c\x01\x7e\x0b\x06\x02\x01\x7f\x01\x7c\x0b\x0c\x05\x01\x7f\x01\x7d\x01\x7e\x01\x7f\x01\x7c\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x03\x00\x00\x0b\x02\x00\x0b\x10\x06\x01\x7d\x01\x7f\x01\x7e\x01\x7f\x01\x7c\x01\x7f\x00\x00\x0b\x10\x06\x01\x7d\x01\x7f\x01\x7e\x01\x7f\x01\x7c\x01\x7f\x00\x00\x0b\x06\x01\x02\x7f\x20\x00\x0b\x06\x01\x02\x7e\x20\x00\x0b\x06\x01\x02\x7d\x20\x00\x0b\x06\x01\x02\x7c\x20\x00\x0b\x06\x01\x02\x7f\x20\x01\x0b\x06\x01\x02\x7e\x20\x01\x0b\x06\x01\x02\x7d\x20\x01\x0b\x06\x01\x02\x7c\x20\x01\x0b\x28\x06\x01\x7d\x01\x7f\x01\x7e\x01\x7f\x01\x7c\x01\x7f\x20\x00\x8c\x1a\x20\x01\x45\x1a\x20\x02\x50\x1a\x20\x03\x45\x1a\x20\x04\x9a\x1a\x20\x05\x45\x1a\x20\x04\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x04\x00\x20\x01\x0b\x1c\x00\x20\x00\x8c\x1a\x20\x01\x45\x1a\x20\x02\x50\x1a\x20\x03\x45\x1a\x20\x04\x9a\x1a\x20\x05\x45\x1a\x20\x04\x0b\x02\x00\x0b\x04\x00\x10\x00\x0b\x05\x00\x41\xcd\x00\x0b\x05\x00\x42\xe1\x3c\x0b\x07\x00\x43\x66\x66\x9b\x42\x0b\x0b\x00\x44\xe1\x7a\x14\xae\x47\x71\x53\x40\x0b\x09\x00\x02\x40\x10\x00\x10\x00\x0b\x0b\x0a\x00\x02\x7f\x10\x00\x41\xcd\x00\x0b\x0b\x03\x00\x0f\x0b\x06\x00\x41\xce\x00\x0f\x0b\x06\x00\x42\xc6\x3d\x0f\x0b\x08\x00\x43\x66\x66\x9d\x42\x0f\x0b\x0c\x00\x44\x52\xb8\x1e\x85\xeb\xb1\x53\x40\x0f\x0b\x0b\x00\x02\x7f\x10\x00\x41\xcd\x00\x0b\x0f\x0b\x04\x00\x0c\x00\x0b\x07\x00\x41\xcf\x00\x0c\x00\x0b\x07\x00\x42\xab\x3e\x0c\x00\x0b\x09\x00\x43\xcd\xcc\x9f\x42\x0c\x00\x0b\x0d\x00\x44\xc3\xf5\x28\x5c\x8f\xf2\x53\x40\x0c\x00\x0b\x0c\x00\x02\x7f\x10\x00\x41\xcd\x00\x0b\x0c\x00\x0b\x06\x00\x20\x00\x0d\x00\x0b\x0b\x00\x41\x32\x20\x00\x0d\x00\x1a\x41\x33\x0b\x09\x00\x20\x00\x0e\x02\x00\x00\x00\x0b\x0c\x00\x41\x32\x20\x00\x0e\x01\x00\x00\x41\x33\x0b\x0c\x00\x02\x40\x20\x00\x0e\x02\x00\x01\x00\x0b\x0b\x13\x00\x02\x7f\x41\x32\x20\x00\x0e\x02\x00\x01\x00\x41\x33\x0b\x41\x02\x6a\x0b\x06\x01\x01\x7f\x20\x00\x0b\x06\x01\x01\x7e\x20\x00\x0b\x06\x01\x01\x7d\x20\x00\x0b\x06\x01\x01\x7c\x20\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x0c\x00\x41\x01\x11\x00\x00\x41\x04\x11\x00\x00\x0b\x89\x01\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x41\x00\x41\x00\x11\x10\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x41\x00\x41\x02\x11\x10\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x41\x00\x41\x03\x11\x10\x00\x0b\x07\x00\x41\x01\x11\x11\x00\x0b\x2f\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x41\x00\x41\x00\x11\x12\x00\x0b\x0f\x00\x02\x40\x10\x18\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x1c\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x02\x42\x03\x10\x21\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x02\x42\x03\x10\x25\x42\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2e\x00\x02\x40\x43\x00\x00\x80\x3f\x41\x02\x42\x03\x41\x04\x44\x00\x00\x00\x00\x00\x00\x16\x40\x41\x06\x10\x28\xbd\x44\x00\x00\x00\x00\x00\x00\x16\x40\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x2c\x42\xe1\x3c\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x33\x42\xc6\x3d\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x10\x00\x02\x40\x10\x39\x42\xab\x3e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x44\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["local-first-i32"](), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["local-first-f32"](), f32(0.0));
+assert_return(() => $$.exports["local-first-f64"](), 0.0);
+assert_return(() => $$.exports["local-second-i32"](), 0);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["local-second-f32"](), f32(0.0));
+assert_return(() => $$.exports["local-second-f64"](), 0.0);
+assert_return(() => $$.exports["local-mixed"](), 0.0);
+assert_return(() => $$.exports["param-first-i32"](2, 3), 2);
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["param-first-f32"](f32(2.0), f32(3.0)), f32(2.0));
+assert_return(() => $$.exports["param-first-f64"](2.0, 3.0), 2.0);
+assert_return(() => $$.exports["param-second-i32"](2, 3), 3);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["param-second-f32"](f32(2.0), f32(3.0)), f32(3.0));
+assert_return(() => $$.exports["param-second-f64"](2.0, 3.0), 3.0);
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["empty"]());
+assert_return(() => $$.exports["value-void"]());
+assert_return(() => $$.exports["value-i32"](), 77);
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["value-f32"](), f32(77.6999969482));
+assert_return(() => $$.exports["value-f64"](), 77.77);
+assert_return(() => $$.exports["value-block-void"]());
+assert_return(() => $$.exports["value-block-i32"](), 77);
+assert_return(() => $$.exports["return-empty"]());
+assert_return(() => $$.exports["return-i32"](), 78);
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["return-f32"](), f32(78.6999969482));
+assert_return(() => $$.exports["return-f64"](), 78.78);
+assert_return(() => $$.exports["return-block-i32"](), 77);
+assert_return(() => $$.exports["break-empty"]());
+assert_return(() => $$.exports["break-i32"](), 79);
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["break-f32"](), f32(79.9000015259));
+assert_return(() => $$.exports["break-f64"](), 79.79);
+assert_return(() => $$.exports["break-block-i32"](), 77);
+assert_return(() => $$.exports["break-br_if-empty"](0));
+assert_return(() => $$.exports["break-br_if-empty"](2));
+assert_return(() => $$.exports["break-br_if-num"](0), 51);
+assert_return(() => $$.exports["break-br_if-num"](1), 50);
+assert_return(() => $$.exports["break-br_table-empty"](0));
+assert_return(() => $$.exports["break-br_table-empty"](1));
+assert_return(() => $$.exports["break-br_table-empty"](5));
+assert_return(() => $$.exports["break-br_table-empty"](-1));
+assert_return(() => $$.exports["break-br_table-num"](0), 50);
+assert_return(() => $$.exports["break-br_table-num"](1), 50);
+assert_return(() => $$.exports["break-br_table-num"](10), 50);
+assert_return(() => $$.exports["break-br_table-num"](-100), 50);
+assert_return(() => $$.exports["break-br_table-nested-empty"](0));
+assert_return(() => $$.exports["break-br_table-nested-empty"](1));
+assert_return(() => $$.exports["break-br_table-nested-empty"](3));
+assert_return(() => $$.exports["break-br_table-nested-empty"](-2));
+assert_return(() => $$.exports["break-br_table-nested-num"](0), 52);
+assert_return(() => $$.exports["break-br_table-nested-num"](1), 50);
+assert_return(() => $$.exports["break-br_table-nested-num"](2), 52);
+assert_return(() => $$.exports["break-br_table-nested-num"](-3), 52);
+assert_return(() => $$.exports["init-local-i32"](), 0);
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["init-local-f32"](), f32(0.0));
+assert_return(() => $$.exports["init-local-f64"](), 0.0);
+assert_return(() => $$.exports["signature-explicit-reused"]());
+assert_return(() => $$.exports["signature-implicit-reused"]());
+assert_return(() => $$.exports["signature-explicit-duplicate"]());
+assert_return(() => $$.exports["signature-implicit-duplicate"]());
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x08\x01\x06\x01\x01\x7f\x20\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x01\x01\x7d\x20\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x02\x01\x7c\x01\x7e\x20\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7e\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x20\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7c\x7e\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x00\x02\x7f\x7f\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x00\x02\x7f\x7f\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x03\x02\x01\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x41\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x43\x00\x00\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x01\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x0f\x41\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x01\x0f\x41\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x42\x01\x0f\x41\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x42\x01\x0f\x41\x01\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x0c\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x43\x00\x00\x00\x00\x0c\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x0c\x00\x41\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x42\x01\x0c\x00\x41\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x01\x0c\x00\x41\x01\x0c\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x02\x40\x0c\x01\x0b\x41\x01\x0c\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x40\x01\x0c\x01\x0b\x41\x01\x0c\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x02\x40\x42\x01\x0c\x01\x0b\x41\x01\x0c\x00\x0b");
diff --git a/JSTests/wasm/spec-tests/func_ptrs.wast.js b/JSTests/wasm/spec-tests/func_ptrs.wast.js
new file mode 100644
index 0000000..bf4b1bb
--- /dev/null
+++ b/JSTests/wasm/spec-tests/func_ptrs.wast.js
@@ -0,0 +1,130 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x1b\x07\x60\x00\x00\x60\x00\x00\x60\x00\x00\x60\x00\x01\x7f\x60\x00\x01\x7f\x60\x01\x7f\x01\x7f\x60\x01\x7f\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x06\x03\x07\x06\x00\x01\x04\x05\x05\x06\x07\x1c\x04\x03\x6f\x6e\x65\x00\x03\x03\x74\x77\x6f\x00\x04\x05\x74\x68\x72\x65\x65\x00\x05\x04\x66\x6f\x75\x72\x00\x06\x0a\x23\x06\x02\x00\x0b\x02\x00\x0b\x04\x00\x41\x0d\x0b\x07\x00\x20\x00\x41\x01\x6a\x0b\x07\x00\x20\x00\x41\x02\x6b\x0b\x06\x00\x20\x00\x10\x00\x0b");
+assert_return(() => $$.exports["one"](), 13);
+assert_return(() => $$.exports["two"](13), 14);
+assert_return(() => $$.exports["three"](13), 11);
+$$.exports["four"](83);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x01\x09\x06\x01\x00\x42\x00\x0b\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x01\x09\x06\x01\x00\x41\x00\x0b\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x04\x01\x70\x00\x01\x09\x05\x01\x00\x01\x0b\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x03\x02\x01\x2a\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x2b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x00\x01\x7f\x60\x00\x01\x7f\x60\x01\x7f\x01\x7f\x03\x08\x07\x00\x00\x00\x01\x01\x02\x02\x04\x05\x01\x70\x01\x07\x07\x07\x11\x02\x05\x63\x61\x6c\x6c\x74\x00\x05\x05\x63\x61\x6c\x6c\x75\x00\x06\x09\x0d\x01\x00\x41\x00\x0b\x07\x00\x01\x02\x03\x04\x00\x02\x0a\x2a\x07\x04\x00\x41\x01\x0b\x04\x00\x41\x02\x0b\x04\x00\x41\x03\x0b\x04\x00\x41\x04\x0b\x04\x00\x41\x05\x0b\x07\x00\x20\x00\x11\x00\x00\x0b\x07\x00\x20\x00\x11\x01\x00\x0b");
+assert_return(() => $$.exports["callt"](0), 1);
+assert_return(() => $$.exports["callt"](1), 2);
+assert_return(() => $$.exports["callt"](2), 3);
+assert_return(() => $$.exports["callt"](3), 4);
+assert_return(() => $$.exports["callt"](4), 5);
+assert_return(() => $$.exports["callt"](5), 1);
+assert_return(() => $$.exports["callt"](6), 3);
+assert_trap(() => $$.exports["callt"](7));
+assert_trap(() => $$.exports["callt"](100));
+assert_trap(() => $$.exports["callt"](-1));
+assert_return(() => $$.exports["callu"](0), 1);
+assert_return(() => $$.exports["callu"](1), 2);
+assert_return(() => $$.exports["callu"](2), 3);
+assert_return(() => $$.exports["callu"](3), 4);
+assert_return(() => $$.exports["callu"](4), 5);
+assert_return(() => $$.exports["callu"](5), 1);
+assert_return(() => $$.exports["callu"](6), 3);
+assert_trap(() => $$.exports["callu"](7));
+assert_trap(() => $$.exports["callu"](100));
+assert_trap(() => $$.exports["callu"](-1));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0a\x02\x60\x00\x01\x7f\x60\x01\x7f\x01\x7f\x03\x04\x03\x00\x00\x01\x04\x05\x01\x70\x01\x02\x02\x07\x09\x01\x05\x63\x61\x6c\x6c\x74\x00\x02\x09\x08\x01\x00\x41\x00\x0b\x02\x00\x01\x0a\x13\x03\x04\x00\x41\x01\x0b\x04\x00\x41\x02\x0b\x07\x00\x20\x00\x11\x00\x00\x0b");
+assert_return(() => $$.exports["callt"](0), 1);
+assert_return(() => $$.exports["callt"](1), 2);
diff --git a/JSTests/wasm/spec-tests/get_local.wast.js b/JSTests/wasm/spec-tests/get_local.wast.js
new file mode 100644
index 0000000..00061ab
--- /dev/null
+++ b/JSTests/wasm/spec-tests/get_local.wast.js
@@ -0,0 +1,117 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x39\x0b\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x05\x7e\x7d\x7c\x7f\x7f\x00\x60\x05\x7e\x7d\x7c\x7f\x7f\x01\x7c\x60\x00\x00\x03\x0f\x0e\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0a\x0a\x0a\x07\xc9\x01\x0e\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x33\x32\x00\x00\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x36\x34\x00\x01\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x33\x32\x00\x02\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x36\x34\x00\x03\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x69\x33\x32\x00\x04\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x69\x36\x34\x00\x05\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x66\x33\x32\x00\x06\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x66\x36\x34\x00\x07\x0a\x74\x79\x70\x65\x2d\x6d\x69\x78\x65\x64\x00\x08\x04\x72\x65\x61\x64\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0d\x0a\x8b\x02\x0e\x06\x01\x01\x7f\x20\x00\x0b\x06\x01\x01\x7e\x20\x00\x0b\x06\x01\x01\x7d\x20\x00\x0b\x06\x01\x01\x7c\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b\x2c\x03\x01\x7d\x02\x7e\x01\x7c\x20\x00\x50\x1a\x20\x01\x8c\x1a\x20\x02\x9a\x1a\x20\x03\x45\x1a\x20\x04\x45\x1a\x20\x05\x8c\x1a\x20\x06\x50\x1a\x20\x07\x50\x1a\x20\x08\x9a\x1a\x0b\x3f\x03\x01\x7d\x02\x7e\x01\x7c\x43\x00\x00\xb0\x40\x21\x05\x42\x06\x21\x06\x44\x00\x00\x00\x00\x00\x00\x20\x40\x21\x08\x20\x00\xba\x20\x01\xbb\x20\x02\x20\x03\xb8\x20\x04\xb7\x20\x05\xbb\x20\x06\xba\x20\x07\xba\x20\x08\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x03\x10\x05\x42\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x42\x01\x43\xcd\xcc\x0c\x40\x44\x66\x66\x66\x66\x66\x66\x0a\x40\x41\x04\x41\x05\x10\x08\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x42\x01\x43\x00\x00\x00\x40\x44\x66\x66\x66\x66\x66\x66\x0a\x40\x41\x04\x41\x05\x10\x09\xbd\x44\x66\x66\x66\x66\x66\x66\x41\x40\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-local-i32"](), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["type-local-f32"](), f32(0.0));
+assert_return(() => $$.exports["type-local-f64"](), 0.0);
+assert_return(() => $$.exports["type-param-i32"](2), 2);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["type-param-f32"](f32(4.40000009537)), f32(4.40000009537));
+assert_return(() => $$.exports["type-param-f64"](5.5), 5.5);
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x08\x01\x06\x01\x01\x7f\x20\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x01\x01\x7d\x20\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x02\x01\x7c\x01\x7e\x20\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7e\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x20\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7c\x7e\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x02\x01\x7f\x01\x7e\x20\x03\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7f\x01\x7e\x20\xf7\xa4\xea\x06\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7f\x7e\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x20\x02\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x02\x01\x7f\x01\x7e\x20\xf7\xf2\xce\xd4\x02\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x02\x01\x7f\x01\x7e\x20\x03\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7e\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7f\x01\x7e\x20\xf7\xa8\x99\x66\x0b");
diff --git a/JSTests/wasm/spec-tests/globals.wast.js b/JSTests/wasm/spec-tests/globals.wast.js
new file mode 100644
index 0000000..de40af6
--- /dev/null
+++ b/JSTests/wasm/spec-tests/globals.wast.js
@@ -0,0 +1,127 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x24\x09\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x01\x7f\x00\x60\x01\x7e\x00\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x01\x7d\x00\x60\x01\x7c\x00\x60\x00\x00\x03\x11\x10\x00\x01\x00\x01\x02\x03\x04\x05\x04\x05\x06\x07\x08\x08\x08\x08\x06\x3d\x08\x7f\x00\x41\x7e\x0b\x7d\x00\x43\x00\x00\x40\xc0\x0b\x7c\x00\x44\x00\x00\x00\x00\x00\x00\x10\xc0\x0b\x7e\x00\x42\x7b\x0b\x7f\x01\x41\x74\x0b\x7d\x01\x43\x00\x00\x50\xc1\x0b\x7c\x01\x44\x00\x00\x00\x00\x00\x00\x2c\xc0\x0b\x7e\x01\x42\x71\x0b\x07\x8d\x01\x10\x05\x67\x65\x74\x2d\x61\x00\x00\x05\x67\x65\x74\x2d\x62\x00\x01\x05\x67\x65\x74\x2d\x78\x00\x02\x05\x67\x65\x74\x2d\x79\x00\x03\x05\x73\x65\x74\x2d\x78\x00\x04\x05\x73\x65\x74\x2d\x79\x00\x05\x05\x67\x65\x74\x2d\x31\x00\x06\x05\x67\x65\x74\x2d\x32\x00\x07\x05\x67\x65\x74\x2d\x35\x00\x08\x05\x67\x65\x74\x2d\x36\x00\x09\x05\x73\x65\x74\x2d\x35\x00\x0a\x05\x73\x65\x74\x2d\x36\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0f\x0a\x81\x01\x10\x04\x00\x23\x00\x0b\x04\x00\x23\x03\x0b\x04\x00\x23\x04\x0b\x04\x00\x23\x07\x0b\x06\x00\x20\x00\x24\x04\x0b\x06\x00\x20\x00\x24\x07\x0b\x04\x00\x23\x01\x0b\x04\x00\x23\x02\x0b\x04\x00\x23\x05\x0b\x04\x00\x23\x06\x0b\x06\x00\x20\x00\x24\x05\x0b\x06\x00\x20\x00\x24\x06\x0b\x0f\x00\x02\x40\x10\x01\x42\x7b\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x03\x42\x71\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x00\x02\x40\x42\x07\x10\x05\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x03\x42\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["get-a"](), -2);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["get-x"](), -12);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["get-1"](), f32(-3.0));
+assert_return(() => $$.exports["get-2"](), -4.0);
+assert_return(() => $$.exports["get-5"](), f32(-13.0));
+assert_return(() => $$.exports["get-6"](), -14.0);
+assert_return(() => $$.exports["set-x"](6));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["set-5"](f32(8.0)));
+assert_return(() => $$.exports["set-6"](9.0));
+assert_return(() => $$.exports["get-x"](), 6);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["get-5"](), f32(8.0));
+assert_return(() => $$.exports["get-6"](), 9.0);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x06\x09\x01\x7d\x00\x43\x00\x00\x00\x00\x0b\x0a\x08\x01\x06\x00\x41\x01\x24\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x08\x01\x01\x6d\x01\x61\x03\x7f\x01");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x08\x01\x01\x6d\x01\x61\x03\x7f\x01");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x09\x01\x7d\x01\x43\x00\x00\x00\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x09\x01\x7d\x01\x43\x00\x00\x00\x00\x0b\x07\x05\x01\x01\x61\x03\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x09\x01\x7d\x00\x43\x00\x00\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7d\x00\x20\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x09\x01\x7f\x00\x43\x00\x00\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x23\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x0b\x02\x7f\x00\x23\x01\x0b\x7f\x00\x41\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x94\x80\x80\x80\x00\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x02");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x06\x01\x7f\x00\x41\x00\x0b");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x86\x80\x80\x80\x00\x01\x7f\xff\x41\x00\x0b");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x86\x80\x80\x80\x00\x01\x7f\xd4\x41\x00\x0b");
+assert_malformed("\x00\x61\x73\x6d\x0d\x00\x00\x00\x06\x86\x80\x80\x80\x00\x01\x7f\x02\x41\x00\x0b");
diff --git a/JSTests/wasm/spec-tests/i32.wast.js b/JSTests/wasm/spec-tests/i32.wast.js
new file mode 100644
index 0000000..f3f24e3
--- /dev/null
+++ b/JSTests/wasm/spec-tests/i32.wast.js
@@ -0,0 +1,437 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x02\x60\x02\x7f\x7f\x01\x7f\x60\x01\x7f\x01\x7f\x03\x1e\x1d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\xc5\x01\x1d\x03\x61\x64\x64\x00\x00\x03\x73\x75\x62\x00\x01\x03\x6d\x75\x6c\x00\x02\x05\x64\x69\x76\x5f\x73\x00\x03\x05\x64\x69\x76\x5f\x75\x00\x04\x05\x72\x65\x6d\x5f\x73\x00\x05\x05\x72\x65\x6d\x5f\x75\x00\x06\x03\x61\x6e\x64\x00\x07\x02\x6f\x72\x00\x08\x03\x78\x6f\x72\x00\x09\x03\x73\x68\x6c\x00\x0a\x05\x73\x68\x72\x5f\x73\x00\x0b\x05\x73\x68\x72\x5f\x75\x00\x0c\x04\x72\x6f\x74\x6c\x00\x0d\x04\x72\x6f\x74\x72\x00\x0e\x03\x63\x6c\x7a\x00\x0f\x03\x63\x74\x7a\x00\x10\x06\x70\x6f\x70\x63\x6e\x74\x00\x11\x03\x65\x71\x7a\x00\x12\x02\x65\x71\x00\x13\x02\x6e\x65\x00\x14\x04\x6c\x74\x5f\x73\x00\x15\x04\x6c\x74\x5f\x75\x00\x16\x04\x6c\x65\x5f\x73\x00\x17\x04\x6c\x65\x5f\x75\x00\x18\x04\x67\x74\x5f\x73\x00\x19\x04\x67\x74\x5f\x75\x00\x1a\x04\x67\x65\x5f\x73\x00\x1b\x04\x67\x65\x5f\x75\x00\x1c\x0a\xe1\x01\x1d\x07\x00\x20\x00\x20\x01\x6a\x0b\x07\x00\x20\x00\x20\x01\x6b\x0b\x07\x00\x20\x00\x20\x01\x6c\x0b\x07\x00\x20\x00\x20\x01\x6d\x0b\x07\x00\x20\x00\x20\x01\x6e\x0b\x07\x00\x20\x00\x20\x01\x6f\x0b\x07\x00\x20\x00\x20\x01\x70\x0b\x07\x00\x20\x00\x20\x01\x71\x0b\x07\x00\x20\x00\x20\x01\x72\x0b\x07\x00\x20\x00\x20\x01\x73\x0b\x07\x00\x20\x00\x20\x01\x74\x0b\x07\x00\x20\x00\x20\x01\x75\x0b\x07\x00\x20\x00\x20\x01\x76\x0b\x07\x00\x20\x00\x20\x01\x77\x0b\x07\x00\x20\x00\x20\x01\x78\x0b\x05\x00\x20\x00\x67\x0b\x05\x00\x20\x00\x68\x0b\x05\x00\x20\x00\x69\x0b\x05\x00\x20\x00\x45\x0b\x07\x00\x20\x00\x20\x01\x46\x0b\x07\x00\x20\x00\x20\x01\x47\x0b\x07\x00\x20\x00\x20\x01\x48\x0b\x07\x00\x20\x00\x20\x01\x49\x0b\x07\x00\x20\x00\x20\x01\x4c\x0b\x07\x00\x20\x00\x20\x01\x4d\x0b\x07\x00\x20\x00\x20\x01\x4a\x0b\x07\x00\x20\x00\x20\x01\x4b\x0b\x07\x00\x20\x00\x20\x01\x4e\x0b\x07\x00\x20\x00\x20\x01\x4f\x0b");
+assert_return(() => $$.exports["add"](1, 1), 2);
+assert_return(() => $$.exports["add"](1, 0), 1);
+assert_return(() => $$.exports["add"](-1, -1), -2);
+assert_return(() => $$.exports["add"](-1, 1), 0);
+assert_return(() => $$.exports["add"](2147483647, 1), -2147483648);
+assert_return(() => $$.exports["add"](-2147483648, -1), 2147483647);
+assert_return(() => $$.exports["add"](-2147483648, -2147483648), 0);
+assert_return(() => $$.exports["add"](1073741823, 1), 1073741824);
+assert_return(() => $$.exports["sub"](1, 1), 0);
+assert_return(() => $$.exports["sub"](1, 0), 1);
+assert_return(() => $$.exports["sub"](-1, -1), 0);
+assert_return(() => $$.exports["sub"](2147483647, -1), -2147483648);
+assert_return(() => $$.exports["sub"](-2147483648, 1), 2147483647);
+assert_return(() => $$.exports["sub"](-2147483648, -2147483648), 0);
+assert_return(() => $$.exports["sub"](1073741823, -1), 1073741824);
+assert_return(() => $$.exports["mul"](1, 1), 1);
+assert_return(() => $$.exports["mul"](1, 0), 0);
+assert_return(() => $$.exports["mul"](-1, -1), 1);
+assert_return(() => $$.exports["mul"](268435456, 4096), 0);
+assert_return(() => $$.exports["mul"](-2147483648, 0), 0);
+assert_return(() => $$.exports["mul"](-2147483648, -1), -2147483648);
+assert_return(() => $$.exports["mul"](2147483647, -1), -2147483647);
+assert_return(() => $$.exports["mul"](19088743, 1985229328), 898528368);
+assert_trap(() => $$.exports["div_s"](1, 0));
+assert_trap(() => $$.exports["div_s"](0, 0));
+assert_trap(() => $$.exports["div_s"](-2147483648, -1));
+assert_return(() => $$.exports["div_s"](1, 1), 1);
+assert_return(() => $$.exports["div_s"](0, 1), 0);
+assert_return(() => $$.exports["div_s"](-1, -1), 1);
+assert_return(() => $$.exports["div_s"](-2147483648, 2), -1073741824);
+assert_return(() => $$.exports["div_s"](-2147483647, 1000), -2147483);
+assert_return(() => $$.exports["div_s"](5, 2), 2);
+assert_return(() => $$.exports["div_s"](-5, 2), -2);
+assert_return(() => $$.exports["div_s"](5, -2), -2);
+assert_return(() => $$.exports["div_s"](-5, -2), 2);
+assert_return(() => $$.exports["div_s"](7, 3), 2);
+assert_return(() => $$.exports["div_s"](-7, 3), -2);
+assert_return(() => $$.exports["div_s"](7, -3), -2);
+assert_return(() => $$.exports["div_s"](-7, -3), 2);
+assert_return(() => $$.exports["div_s"](11, 5), 2);
+assert_return(() => $$.exports["div_s"](17, 7), 2);
+assert_trap(() => $$.exports["div_u"](1, 0));
+assert_trap(() => $$.exports["div_u"](0, 0));
+assert_return(() => $$.exports["div_u"](1, 1), 1);
+assert_return(() => $$.exports["div_u"](0, 1), 0);
+assert_return(() => $$.exports["div_u"](-1, -1), 1);
+assert_return(() => $$.exports["div_u"](-2147483648, -1), 0);
+assert_return(() => $$.exports["div_u"](-2147483648, 2), 1073741824);
+assert_return(() => $$.exports["div_u"](-1880092688, 65537), 36847);
+assert_return(() => $$.exports["div_u"](-2147483647, 1000), 2147483);
+assert_return(() => $$.exports["div_u"](5, 2), 2);
+assert_return(() => $$.exports["div_u"](-5, 2), 2147483645);
+assert_return(() => $$.exports["div_u"](5, -2), 0);
+assert_return(() => $$.exports["div_u"](-5, -2), 0);
+assert_return(() => $$.exports["div_u"](7, 3), 2);
+assert_return(() => $$.exports["div_u"](11, 5), 2);
+assert_return(() => $$.exports["div_u"](17, 7), 2);
+assert_trap(() => $$.exports["rem_s"](1, 0));
+assert_trap(() => $$.exports["rem_s"](0, 0));
+assert_return(() => $$.exports["rem_s"](2147483647, -1), 0);
+assert_return(() => $$.exports["rem_s"](1, 1), 0);
+assert_return(() => $$.exports["rem_s"](0, 1), 0);
+assert_return(() => $$.exports["rem_s"](-1, -1), 0);
+assert_return(() => $$.exports["rem_s"](-2147483648, -1), 0);
+assert_return(() => $$.exports["rem_s"](-2147483648, 2), 0);
+assert_return(() => $$.exports["rem_s"](-2147483647, 1000), -647);
+assert_return(() => $$.exports["rem_s"](5, 2), 1);
+assert_return(() => $$.exports["rem_s"](-5, 2), -1);
+assert_return(() => $$.exports["rem_s"](5, -2), 1);
+assert_return(() => $$.exports["rem_s"](-5, -2), -1);
+assert_return(() => $$.exports["rem_s"](7, 3), 1);
+assert_return(() => $$.exports["rem_s"](-7, 3), -1);
+assert_return(() => $$.exports["rem_s"](7, -3), 1);
+assert_return(() => $$.exports["rem_s"](-7, -3), -1);
+assert_return(() => $$.exports["rem_s"](11, 5), 1);
+assert_return(() => $$.exports["rem_s"](17, 7), 3);
+assert_trap(() => $$.exports["rem_u"](1, 0));
+assert_trap(() => $$.exports["rem_u"](0, 0));
+assert_return(() => $$.exports["rem_u"](1, 1), 0);
+assert_return(() => $$.exports["rem_u"](0, 1), 0);
+assert_return(() => $$.exports["rem_u"](-1, -1), 0);
+assert_return(() => $$.exports["rem_u"](-2147483648, -1), -2147483648);
+assert_return(() => $$.exports["rem_u"](-2147483648, 2), 0);
+assert_return(() => $$.exports["rem_u"](-1880092688, 65537), 32769);
+assert_return(() => $$.exports["rem_u"](-2147483647, 1000), 649);
+assert_return(() => $$.exports["rem_u"](5, 2), 1);
+assert_return(() => $$.exports["rem_u"](-5, 2), 1);
+assert_return(() => $$.exports["rem_u"](5, -2), 5);
+assert_return(() => $$.exports["rem_u"](-5, -2), -5);
+assert_return(() => $$.exports["rem_u"](7, 3), 1);
+assert_return(() => $$.exports["rem_u"](11, 5), 1);
+assert_return(() => $$.exports["rem_u"](17, 7), 3);
+assert_return(() => $$.exports["and"](1, 0), 0);
+assert_return(() => $$.exports["and"](0, 1), 0);
+assert_return(() => $$.exports["and"](1, 1), 1);
+assert_return(() => $$.exports["and"](0, 0), 0);
+assert_return(() => $$.exports["and"](2147483647, -2147483648), 0);
+assert_return(() => $$.exports["and"](2147483647, -1), 2147483647);
+assert_return(() => $$.exports["and"](-252641281, -3856), -252645136);
+assert_return(() => $$.exports["and"](-1, -1), -1);
+assert_return(() => $$.exports["or"](1, 0), 1);
+assert_return(() => $$.exports["or"](0, 1), 1);
+assert_return(() => $$.exports["or"](1, 1), 1);
+assert_return(() => $$.exports["or"](0, 0), 0);
+assert_return(() => $$.exports["or"](2147483647, -2147483648), -1);
+assert_return(() => $$.exports["or"](-2147483648, 0), -2147483648);
+assert_return(() => $$.exports["or"](-252641281, -3856), -1);
+assert_return(() => $$.exports["or"](-1, -1), -1);
+assert_return(() => $$.exports["xor"](1, 0), 1);
+assert_return(() => $$.exports["xor"](0, 1), 1);
+assert_return(() => $$.exports["xor"](1, 1), 0);
+assert_return(() => $$.exports["xor"](0, 0), 0);
+assert_return(() => $$.exports["xor"](2147483647, -2147483648), -1);
+assert_return(() => $$.exports["xor"](-2147483648, 0), -2147483648);
+assert_return(() => $$.exports["xor"](-1, -2147483648), 2147483647);
+assert_return(() => $$.exports["xor"](-1, 2147483647), -2147483648);
+assert_return(() => $$.exports["xor"](-252641281, -3856), 252645135);
+assert_return(() => $$.exports["xor"](-1, -1), 0);
+assert_return(() => $$.exports["shl"](1, 1), 2);
+assert_return(() => $$.exports["shl"](1, 0), 1);
+assert_return(() => $$.exports["shl"](2147483647, 1), -2);
+assert_return(() => $$.exports["shl"](-1, 1), -2);
+assert_return(() => $$.exports["shl"](-2147483648, 1), 0);
+assert_return(() => $$.exports["shl"](1073741824, 1), -2147483648);
+assert_return(() => $$.exports["shl"](1, 31), -2147483648);
+assert_return(() => $$.exports["shl"](1, 32), 1);
+assert_return(() => $$.exports["shl"](1, 33), 2);
+assert_return(() => $$.exports["shl"](1, -1), -2147483648);
+assert_return(() => $$.exports["shl"](1, 2147483647), -2147483648);
+assert_return(() => $$.exports["shr_s"](1, 1), 0);
+assert_return(() => $$.exports["shr_s"](1, 0), 1);
+assert_return(() => $$.exports["shr_s"](-1, 1), -1);
+assert_return(() => $$.exports["shr_s"](2147483647, 1), 1073741823);
+assert_return(() => $$.exports["shr_s"](-2147483648, 1), -1073741824);
+assert_return(() => $$.exports["shr_s"](1073741824, 1), 536870912);
+assert_return(() => $$.exports["shr_s"](1, 32), 1);
+assert_return(() => $$.exports["shr_s"](1, 33), 0);
+assert_return(() => $$.exports["shr_s"](1, -1), 0);
+assert_return(() => $$.exports["shr_s"](1, 2147483647), 0);
+assert_return(() => $$.exports["shr_s"](1, -2147483648), 1);
+assert_return(() => $$.exports["shr_s"](-2147483648, 31), -1);
+assert_return(() => $$.exports["shr_s"](-1, 32), -1);
+assert_return(() => $$.exports["shr_s"](-1, 33), -1);
+assert_return(() => $$.exports["shr_s"](-1, -1), -1);
+assert_return(() => $$.exports["shr_s"](-1, 2147483647), -1);
+assert_return(() => $$.exports["shr_s"](-1, -2147483648), -1);
+assert_return(() => $$.exports["shr_u"](1, 1), 0);
+assert_return(() => $$.exports["shr_u"](1, 0), 1);
+assert_return(() => $$.exports["shr_u"](-1, 1), 2147483647);
+assert_return(() => $$.exports["shr_u"](2147483647, 1), 1073741823);
+assert_return(() => $$.exports["shr_u"](-2147483648, 1), 1073741824);
+assert_return(() => $$.exports["shr_u"](1073741824, 1), 536870912);
+assert_return(() => $$.exports["shr_u"](1, 32), 1);
+assert_return(() => $$.exports["shr_u"](1, 33), 0);
+assert_return(() => $$.exports["shr_u"](1, -1), 0);
+assert_return(() => $$.exports["shr_u"](1, 2147483647), 0);
+assert_return(() => $$.exports["shr_u"](1, -2147483648), 1);
+assert_return(() => $$.exports["shr_u"](-2147483648, 31), 1);
+assert_return(() => $$.exports["shr_u"](-1, 32), -1);
+assert_return(() => $$.exports["shr_u"](-1, 33), 2147483647);
+assert_return(() => $$.exports["shr_u"](-1, -1), 1);
+assert_return(() => $$.exports["shr_u"](-1, 2147483647), 1);
+assert_return(() => $$.exports["shr_u"](-1, -2147483648), -1);
+assert_return(() => $$.exports["rotl"](-33498112, 4), -535969777);
+assert_return(() => $$.exports["rotl"](-1412589450, 1), 1469788397);
+assert_return(() => $$.exports["rotl"](32768, 37), 1048576);
+assert_return(() => $$.exports["rotl"](1989852383, -2147483635), 1469837011);
+assert_return(() => $$.exports["rotl"](1, 31), -2147483648);
+assert_return(() => $$.exports["rotl"](-2147483648, 1), 1);
+assert_return(() => $$.exports["rotr"](-1329474845, 5), 495324823);
+assert_return(() => $$.exports["rotr"](-1329474845, 65285), 495324823);
+assert_return(() => $$.exports["rotr"](-16724992, 1), 2139121152);
+assert_return(() => $$.exports["rotr"](524288, 4), 32768);
+assert_return(() => $$.exports["rotr"](1989852383, -19), -419711787);
+assert_return(() => $$.exports["rotr"](1, 1), -2147483648);
+assert_return(() => $$.exports["rotr"](-2147483648, 31), 1);
+assert_return(() => $$.exports["clz"](-1), 0);
+assert_return(() => $$.exports["clz"](0), 32);
+assert_return(() => $$.exports["clz"](32768), 16);
+assert_return(() => $$.exports["clz"](255), 24);
+assert_return(() => $$.exports["clz"](-2147483648), 0);
+assert_return(() => $$.exports["clz"](1), 31);
+assert_return(() => $$.exports["clz"](2), 30);
+assert_return(() => $$.exports["clz"](2147483647), 1);
+assert_return(() => $$.exports["ctz"](-1), 0);
+assert_return(() => $$.exports["ctz"](0), 32);
+assert_return(() => $$.exports["ctz"](32768), 15);
+assert_return(() => $$.exports["ctz"](65536), 16);
+assert_return(() => $$.exports["ctz"](-2147483648), 31);
+assert_return(() => $$.exports["ctz"](2147483647), 0);
+assert_return(() => $$.exports["popcnt"](-1), 32);
+assert_return(() => $$.exports["popcnt"](0), 0);
+assert_return(() => $$.exports["popcnt"](32768), 1);
+assert_return(() => $$.exports["popcnt"](-2147450880), 2);
+assert_return(() => $$.exports["popcnt"](2147483647), 31);
+assert_return(() => $$.exports["popcnt"](-1431655766), 16);
+assert_return(() => $$.exports["popcnt"](1431655765), 16);
+assert_return(() => $$.exports["popcnt"](-559038737), 24);
+assert_return(() => $$.exports["eqz"](0), 1);
+assert_return(() => $$.exports["eqz"](1), 0);
+assert_return(() => $$.exports["eqz"](-2147483648), 0);
+assert_return(() => $$.exports["eqz"](2147483647), 0);
+assert_return(() => $$.exports["eq"](0, 0), 1);
+assert_return(() => $$.exports["eq"](1, 1), 1);
+assert_return(() => $$.exports["eq"](-1, 1), 0);
+assert_return(() => $$.exports["eq"](-2147483648, -2147483648), 1);
+assert_return(() => $$.exports["eq"](2147483647, 2147483647), 1);
+assert_return(() => $$.exports["eq"](-1, -1), 1);
+assert_return(() => $$.exports["eq"](1, 0), 0);
+assert_return(() => $$.exports["eq"](0, 1), 0);
+assert_return(() => $$.exports["eq"](-2147483648, 0), 0);
+assert_return(() => $$.exports["eq"](0, -2147483648), 0);
+assert_return(() => $$.exports["eq"](-2147483648, -1), 0);
+assert_return(() => $$.exports["eq"](-1, -2147483648), 0);
+assert_return(() => $$.exports["eq"](-2147483648, 2147483647), 0);
+assert_return(() => $$.exports["eq"](2147483647, -2147483648), 0);
+assert_return(() => $$.exports["ne"](0, 0), 0);
+assert_return(() => $$.exports["ne"](1, 1), 0);
+assert_return(() => $$.exports["ne"](-1, 1), 1);
+assert_return(() => $$.exports["ne"](-2147483648, -2147483648), 0);
+assert_return(() => $$.exports["ne"](2147483647, 2147483647), 0);
+assert_return(() => $$.exports["ne"](-1, -1), 0);
+assert_return(() => $$.exports["ne"](1, 0), 1);
+assert_return(() => $$.exports["ne"](0, 1), 1);
+assert_return(() => $$.exports["ne"](-2147483648, 0), 1);
+assert_return(() => $$.exports["ne"](0, -2147483648), 1);
+assert_return(() => $$.exports["ne"](-2147483648, -1), 1);
+assert_return(() => $$.exports["ne"](-1, -2147483648), 1);
+assert_return(() => $$.exports["ne"](-2147483648, 2147483647), 1);
+assert_return(() => $$.exports["ne"](2147483647, -2147483648), 1);
+assert_return(() => $$.exports["lt_s"](0, 0), 0);
+assert_return(() => $$.exports["lt_s"](1, 1), 0);
+assert_return(() => $$.exports["lt_s"](-1, 1), 1);
+assert_return(() => $$.exports["lt_s"](-2147483648, -2147483648), 0);
+assert_return(() => $$.exports["lt_s"](2147483647, 2147483647), 0);
+assert_return(() => $$.exports["lt_s"](-1, -1), 0);
+assert_return(() => $$.exports["lt_s"](1, 0), 0);
+assert_return(() => $$.exports["lt_s"](0, 1), 1);
+assert_return(() => $$.exports["lt_s"](-2147483648, 0), 1);
+assert_return(() => $$.exports["lt_s"](0, -2147483648), 0);
+assert_return(() => $$.exports["lt_s"](-2147483648, -1), 1);
+assert_return(() => $$.exports["lt_s"](-1, -2147483648), 0);
+assert_return(() => $$.exports["lt_s"](-2147483648, 2147483647), 1);
+assert_return(() => $$.exports["lt_s"](2147483647, -2147483648), 0);
+assert_return(() => $$.exports["lt_u"](0, 0), 0);
+assert_return(() => $$.exports["lt_u"](1, 1), 0);
+assert_return(() => $$.exports["lt_u"](-1, 1), 0);
+assert_return(() => $$.exports["lt_u"](-2147483648, -2147483648), 0);
+assert_return(() => $$.exports["lt_u"](2147483647, 2147483647), 0);
+assert_return(() => $$.exports["lt_u"](-1, -1), 0);
+assert_return(() => $$.exports["lt_u"](1, 0), 0);
+assert_return(() => $$.exports["lt_u"](0, 1), 1);
+assert_return(() => $$.exports["lt_u"](-2147483648, 0), 0);
+assert_return(() => $$.exports["lt_u"](0, -2147483648), 1);
+assert_return(() => $$.exports["lt_u"](-2147483648, -1), 1);
+assert_return(() => $$.exports["lt_u"](-1, -2147483648), 0);
+assert_return(() => $$.exports["lt_u"](-2147483648, 2147483647), 0);
+assert_return(() => $$.exports["lt_u"](2147483647, -2147483648), 1);
+assert_return(() => $$.exports["le_s"](0, 0), 1);
+assert_return(() => $$.exports["le_s"](1, 1), 1);
+assert_return(() => $$.exports["le_s"](-1, 1), 1);
+assert_return(() => $$.exports["le_s"](-2147483648, -2147483648), 1);
+assert_return(() => $$.exports["le_s"](2147483647, 2147483647), 1);
+assert_return(() => $$.exports["le_s"](-1, -1), 1);
+assert_return(() => $$.exports["le_s"](1, 0), 0);
+assert_return(() => $$.exports["le_s"](0, 1), 1);
+assert_return(() => $$.exports["le_s"](-2147483648, 0), 1);
+assert_return(() => $$.exports["le_s"](0, -2147483648), 0);
+assert_return(() => $$.exports["le_s"](-2147483648, -1), 1);
+assert_return(() => $$.exports["le_s"](-1, -2147483648), 0);
+assert_return(() => $$.exports["le_s"](-2147483648, 2147483647), 1);
+assert_return(() => $$.exports["le_s"](2147483647, -2147483648), 0);
+assert_return(() => $$.exports["le_u"](0, 0), 1);
+assert_return(() => $$.exports["le_u"](1, 1), 1);
+assert_return(() => $$.exports["le_u"](-1, 1), 0);
+assert_return(() => $$.exports["le_u"](-2147483648, -2147483648), 1);
+assert_return(() => $$.exports["le_u"](2147483647, 2147483647), 1);
+assert_return(() => $$.exports["le_u"](-1, -1), 1);
+assert_return(() => $$.exports["le_u"](1, 0), 0);
+assert_return(() => $$.exports["le_u"](0, 1), 1);
+assert_return(() => $$.exports["le_u"](-2147483648, 0), 0);
+assert_return(() => $$.exports["le_u"](0, -2147483648), 1);
+assert_return(() => $$.exports["le_u"](-2147483648, -1), 1);
+assert_return(() => $$.exports["le_u"](-1, -2147483648), 0);
+assert_return(() => $$.exports["le_u"](-2147483648, 2147483647), 0);
+assert_return(() => $$.exports["le_u"](2147483647, -2147483648), 1);
+assert_return(() => $$.exports["gt_s"](0, 0), 0);
+assert_return(() => $$.exports["gt_s"](1, 1), 0);
+assert_return(() => $$.exports["gt_s"](-1, 1), 0);
+assert_return(() => $$.exports["gt_s"](-2147483648, -2147483648), 0);
+assert_return(() => $$.exports["gt_s"](2147483647, 2147483647), 0);
+assert_return(() => $$.exports["gt_s"](-1, -1), 0);
+assert_return(() => $$.exports["gt_s"](1, 0), 1);
+assert_return(() => $$.exports["gt_s"](0, 1), 0);
+assert_return(() => $$.exports["gt_s"](-2147483648, 0), 0);
+assert_return(() => $$.exports["gt_s"](0, -2147483648), 1);
+assert_return(() => $$.exports["gt_s"](-2147483648, -1), 0);
+assert_return(() => $$.exports["gt_s"](-1, -2147483648), 1);
+assert_return(() => $$.exports["gt_s"](-2147483648, 2147483647), 0);
+assert_return(() => $$.exports["gt_s"](2147483647, -2147483648), 1);
+assert_return(() => $$.exports["gt_u"](0, 0), 0);
+assert_return(() => $$.exports["gt_u"](1, 1), 0);
+assert_return(() => $$.exports["gt_u"](-1, 1), 1);
+assert_return(() => $$.exports["gt_u"](-2147483648, -2147483648), 0);
+assert_return(() => $$.exports["gt_u"](2147483647, 2147483647), 0);
+assert_return(() => $$.exports["gt_u"](-1, -1), 0);
+assert_return(() => $$.exports["gt_u"](1, 0), 1);
+assert_return(() => $$.exports["gt_u"](0, 1), 0);
+assert_return(() => $$.exports["gt_u"](-2147483648, 0), 1);
+assert_return(() => $$.exports["gt_u"](0, -2147483648), 0);
+assert_return(() => $$.exports["gt_u"](-2147483648, -1), 0);
+assert_return(() => $$.exports["gt_u"](-1, -2147483648), 1);
+assert_return(() => $$.exports["gt_u"](-2147483648, 2147483647), 1);
+assert_return(() => $$.exports["gt_u"](2147483647, -2147483648), 0);
+assert_return(() => $$.exports["ge_s"](0, 0), 1);
+assert_return(() => $$.exports["ge_s"](1, 1), 1);
+assert_return(() => $$.exports["ge_s"](-1, 1), 0);
+assert_return(() => $$.exports["ge_s"](-2147483648, -2147483648), 1);
+assert_return(() => $$.exports["ge_s"](2147483647, 2147483647), 1);
+assert_return(() => $$.exports["ge_s"](-1, -1), 1);
+assert_return(() => $$.exports["ge_s"](1, 0), 1);
+assert_return(() => $$.exports["ge_s"](0, 1), 0);
+assert_return(() => $$.exports["ge_s"](-2147483648, 0), 0);
+assert_return(() => $$.exports["ge_s"](0, -2147483648), 1);
+assert_return(() => $$.exports["ge_s"](-2147483648, -1), 0);
+assert_return(() => $$.exports["ge_s"](-1, -2147483648), 1);
+assert_return(() => $$.exports["ge_s"](-2147483648, 2147483647), 0);
+assert_return(() => $$.exports["ge_s"](2147483647, -2147483648), 1);
+assert_return(() => $$.exports["ge_u"](0, 0), 1);
+assert_return(() => $$.exports["ge_u"](1, 1), 1);
+assert_return(() => $$.exports["ge_u"](-1, 1), 1);
+assert_return(() => $$.exports["ge_u"](-2147483648, -2147483648), 1);
+assert_return(() => $$.exports["ge_u"](2147483647, 2147483647), 1);
+assert_return(() => $$.exports["ge_u"](-1, -1), 1);
+assert_return(() => $$.exports["ge_u"](1, 0), 1);
+assert_return(() => $$.exports["ge_u"](0, 1), 0);
+assert_return(() => $$.exports["ge_u"](-2147483648, 0), 1);
+assert_return(() => $$.exports["ge_u"](0, -2147483648), 0);
+assert_return(() => $$.exports["ge_u"](-2147483648, -1), 0);
+assert_return(() => $$.exports["ge_u"](-1, -2147483648), 1);
+assert_return(() => $$.exports["ge_u"](-2147483648, 2147483647), 1);
+assert_return(() => $$.exports["ge_u"](2147483647, -2147483648), 0);
diff --git a/JSTests/wasm/spec-tests/i64.wast.js b/JSTests/wasm/spec-tests/i64.wast.js
new file mode 100644
index 0000000..6fa047a
--- /dev/null
+++ b/JSTests/wasm/spec-tests/i64.wast.js
@@ -0,0 +1,439 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x1a\x05\x60\x02\x7e\x7e\x01\x7e\x60\x01\x7e\x01\x7e\x60\x01\x7e\x01\x7f\x60\x02\x7e\x7e\x01\x7f\x60\x00\x00\x03\xf7\x02\xf5\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x01\x02\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x07\xc5\x25\xf5\x02\x03\x61\x64\x64\x00\x00\x03\x73\x75\x62\x00\x01\x03\x6d\x75\x6c\x00\x02\x05\x64\x69\x76\x5f\x73\x00\x03\x05\x64\x69\x76\x5f\x75\x00\x04\x05\x72\x65\x6d\x5f\x73\x00\x05\x05\x72\x65\x6d\x5f\x75\x00\x06\x03\x61\x6e\x64\x00\x07\x02\x6f\x72\x00\x08\x03\x78\x6f\x72\x00\x09\x03\x73\x68\x6c\x00\x0a\x05\x73\x68\x72\x5f\x73\x00\x0b\x05\x73\x68\x72\x5f\x75\x00\x0c\x04\x72\x6f\x74\x6c\x00\x0d\x04\x72\x6f\x74\x72\x00\x0e\x03\x63\x6c\x7a\x00\x0f\x03\x63\x74\x7a\x00\x10\x06\x70\x6f\x70\x63\x6e\x74\x00\x11\x03\x65\x71\x7a\x00\x12\x02\x65\x71\x00\x13\x02\x6e\x65\x00\x14\x04\x6c\x74\x5f\x73\x00\x15\x04\x6c\x74\x5f\x75\x00\x16\x04\x6c\x65\x5f\x73\x00\x17\x04\x6c\x65\x5f\x75\x00\x18\x04\x67\x74\x5f\x73\x00\x19\x04\x67\x74\x5f\x75\x00\x1a\x04\x67\x65\x5f\x73\x00\x1b\x04\x67\x65\x5f\x75\x00\x1c\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x1d\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x1e\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x1f\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x20\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x21\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x22\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x23\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x24\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x25\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x26\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x27\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x28\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x29\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x2a\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x2b\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x2c\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x2d\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x2e\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x2f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x00\x30\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x00\x31\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x00\x32\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x00\x33\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x00\x34\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x00\x35\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x00\x36\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x00\x37\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x00\x38\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x00\x39\x09\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x00\x3a\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x00\x3b\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x00\x3c\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x00\x3d\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x00\x3e\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x00\x3f\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x35\x00\x40\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x36\x00\x41\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x37\x00\x42\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x38\x00\x43\x09\x61\x73\x73\x65\x72\x74\x5f\x33\x39\x00\x44\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x30\x00\x45\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x31\x00\x46\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x32\x00\x47\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x33\x00\x48\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x34\x00\x49\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x35\x00\x4a\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x36\x00\x4b\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x37\x00\x4c\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x38\x00\x4d\x09\x61\x73\x73\x65\x72\x74\x5f\x34\x39\x00\x4e\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x30\x00\x4f\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x31\x00\x50\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x32\x00\x51\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x33\x00\x52\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x34\x00\x53\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x35\x00\x54\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x36\x00\x55\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x37\x00\x56\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x38\x00\x57\x09\x61\x73\x73\x65\x72\x74\x5f\x35\x39\x00\x58\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x30\x00\x59\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x31\x00\x5a\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x32\x00\x5b\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x33\x00\x5c\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x34\x00\x5d\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x35\x00\x5e\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x36\x00\x5f\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x37\x00\x60\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x38\x00\x61\x09\x61\x73\x73\x65\x72\x74\x5f\x36\x39\x00\x62\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x30\x00\x63\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x31\x00\x64\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x32\x00\x65\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x33\x00\x66\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x34\x00\x67\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x35\x00\x68\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x36\x00\x69\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x37\x00\x6a\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x38\x00\x6b\x09\x61\x73\x73\x65\x72\x74\x5f\x37\x39\x00\x6c\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x30\x00\x6d\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x31\x00\x6e\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x32\x00\x6f\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x33\x00\x70\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x34\x00\x71\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x35\x00\x72\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x36\x00\x73\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x37\x00\x74\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x38\x00\x75\x09\x61\x73\x73\x65\x72\x74\x5f\x38\x39\x00\x76\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x30\x00\x77\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x31\x00\x78\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x32\x00\x79\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x33\x00\x7a\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x34\x00\x7b\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x35\x00\x7c\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x36\x00\x7d\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x37\x00\x7e\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x38\x00\x7f\x09\x61\x73\x73\x65\x72\x74\x5f\x39\x39\x00\x80\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x30\x00\x81\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x31\x00\x82\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x32\x00\x83\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x33\x00\x84\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x34\x00\x85\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x35\x00\x86\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x36\x00\x87\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x37\x00\x88\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x38\x00\x89\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x39\x00\x8a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x30\x00\x8b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x31\x00\x8c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x32\x00\x8d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x33\x00\x8e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x34\x00\x8f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x35\x00\x90\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x36\x00\x91\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x37\x00\x92\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x38\x00\x93\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x39\x00\x94\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x30\x00\x95\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x31\x00\x96\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x32\x00\x97\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x33\x00\x98\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x34\x00\x99\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x35\x00\x9a\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x36\x00\x9b\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x37\x00\x9c\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x38\x00\x9d\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x39\x00\x9e\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x30\x00\x9f\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x31\x00\xa0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x32\x00\xa1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x33\x00\xa2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x34\x00\xa3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x35\x00\xa4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x36\x00\xa5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x37\x00\xa6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x38\x00\xa7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x39\x00\xa8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x30\x00\xa9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x31\x00\xaa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x32\x00\xab\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x33\x00\xac\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x34\x00\xad\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x35\x00\xae\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x36\x00\xaf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x37\x00\xb0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x38\x00\xb1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x39\x00\xb2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x30\x00\xb3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x31\x00\xb4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x32\x00\xb5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x33\x00\xb6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x34\x00\xb7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x35\x00\xb8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x36\x00\xb9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x37\x00\xba\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x38\x00\xbb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x39\x00\xbc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x30\x00\xbd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x31\x00\xbe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x32\x00\xbf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x33\x00\xc0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x34\x00\xc1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x35\x00\xc2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x36\x00\xc3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x37\x00\xc4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x38\x00\xc5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x39\x00\xc6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x30\x00\xc7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x31\x00\xc8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x32\x00\xc9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x33\x00\xca\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x34\x00\xcb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x35\x00\xcc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x36\x00\xcd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x37\x00\xce\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x38\x00\xcf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x39\x00\xd0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x30\x00\xd1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x31\x00\xd2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x32\x00\xd3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x33\x00\xd4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x34\x00\xd5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x35\x00\xd6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x36\x00\xd7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x37\x00\xd8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x38\x00\xd9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x39\x00\xda\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x30\x00\xdb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x31\x00\xdc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x32\x00\xdd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x33\x00\xde\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x34\x00\xdf\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x35\x00\xe0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x36\x00\xe1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x37\x00\xe2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x38\x00\xe3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x31\x39\x39\x00\xe4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x30\x00\xe5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x31\x00\xe6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x32\x00\xe7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x33\x00\xe8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x34\x00\xe9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x35\x00\xea\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x36\x00\xeb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x37\x00\xec\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x38\x00\xed\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x30\x39\x00\xee\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x30\x00\xef\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x31\x00\xf0\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x32\x00\xf1\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x33\x00\xf2\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x34\x00\xf3\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x35\x00\xf4\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x36\x00\xf5\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x37\x00\xf6\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x38\x00\xf7\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x31\x39\x00\xf8\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x30\x00\xf9\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x31\x00\xfa\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x32\x00\xfb\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x33\x00\xfc\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x34\x00\xfd\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x35\x00\xfe\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x36\x00\xff\x01\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x37\x00\x80\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x38\x00\x81\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x32\x39\x00\x82\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x30\x00\x83\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x31\x00\x84\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x32\x00\x85\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x33\x00\x86\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x34\x00\x87\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x35\x00\x88\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x36\x00\x89\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x37\x00\x8a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x38\x00\x8b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x33\x39\x00\x8c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x30\x00\x8d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x31\x00\x8e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x32\x00\x8f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x33\x00\x90\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x34\x00\x91\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x35\x00\x92\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x36\x00\x93\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x37\x00\x94\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x38\x00\x95\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x34\x39\x00\x96\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x30\x00\x97\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x31\x00\x98\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x32\x00\x99\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x33\x00\x9a\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x34\x00\x9b\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x35\x00\x9c\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x36\x00\x9d\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x37\x00\x9e\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x38\x00\x9f\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x35\x39\x00\xa0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x30\x00\xa1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x31\x00\xa2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x32\x00\xa3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x33\x00\xa4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x34\x00\xa5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x35\x00\xa6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x36\x00\xa7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x37\x00\xa8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x38\x00\xa9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x36\x39\x00\xaa\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x30\x00\xab\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x31\x00\xac\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x32\x00\xad\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x33\x00\xae\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x34\x00\xaf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x35\x00\xb0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x36\x00\xb1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x37\x00\xb2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x38\x00\xb3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x37\x39\x00\xb4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x30\x00\xb5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x31\x00\xb6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x32\x00\xb7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x33\x00\xb8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x34\x00\xb9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x35\x00\xba\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x36\x00\xbb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x37\x00\xbc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x38\x00\xbd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x38\x39\x00\xbe\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x30\x00\xbf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x31\x00\xc0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x32\x00\xc1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x33\x00\xc2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x34\x00\xc3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x35\x00\xc4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x36\x00\xc5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x37\x00\xc6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x38\x00\xc7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x32\x39\x39\x00\xc8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x30\x00\xc9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x31\x00\xca\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x32\x00\xcb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x33\x00\xcc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x34\x00\xcd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x35\x00\xce\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x36\x00\xcf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x37\x00\xd0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x38\x00\xd1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x30\x39\x00\xd2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x30\x00\xd3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x31\x00\xd4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x32\x00\xd5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x33\x00\xd6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x34\x00\xd7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x35\x00\xd8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x36\x00\xd9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x37\x00\xda\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x38\x00\xdb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x31\x39\x00\xdc\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x30\x00\xdd\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x31\x00\xde\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x32\x00\xdf\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x33\x00\xe0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x34\x00\xe1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x35\x00\xe2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x36\x00\xe3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x37\x00\xe4\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x38\x00\xe5\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x32\x39\x00\xe6\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x30\x00\xe7\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x31\x00\xe8\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x32\x00\xe9\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x33\x00\xea\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x34\x00\xeb\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x35\x00\xec\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x36\x00\xed\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x37\x00\xee\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x38\x00\xef\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x33\x39\x00\xf0\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x30\x00\xf1\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x31\x00\xf2\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x32\x00\xf3\x02\x0a\x61\x73\x73\x65\x72\x74\x5f\x33\x34\x33\x00\xf4\x02\x0a\xe5\x47\xf5\x02\x07\x00\x20\x00\x20\x01\x7c\x0b\x07\x00\x20\x00\x20\x01\x7d\x0b\x07\x00\x20\x00\x20\x01\x7e\x0b\x07\x00\x20\x00\x20\x01\x7f\x0b\x07\x00\x20\x00\x20\x01\x80\x0b\x07\x00\x20\x00\x20\x01\x81\x0b\x07\x00\x20\x00\x20\x01\x82\x0b\x07\x00\x20\x00\x20\x01\x83\x0b\x07\x00\x20\x00\x20\x01\x84\x0b\x07\x00\x20\x00\x20\x01\x85\x0b\x07\x00\x20\x00\x20\x01\x86\x0b\x07\x00\x20\x00\x20\x01\x87\x0b\x07\x00\x20\x00\x20\x01\x88\x0b\x07\x00\x20\x00\x20\x01\x89\x0b\x07\x00\x20\x00\x20\x01\x8a\x0b\x05\x00\x20\x00\x79\x0b\x05\x00\x20\x00\x7a\x0b\x05\x00\x20\x00\x7b\x0b\x05\x00\x20\x00\x50\x0b\x07\x00\x20\x00\x20\x01\x51\x0b\x07\x00\x20\x00\x20\x01\x52\x0b\x07\x00\x20\x00\x20\x01\x53\x0b\x07\x00\x20\x00\x20\x01\x54\x0b\x07\x00\x20\x00\x20\x01\x57\x0b\x07\x00\x20\x00\x20\x01\x58\x0b\x07\x00\x20\x00\x20\x01\x55\x0b\x07\x00\x20\x00\x20\x01\x56\x0b\x07\x00\x20\x00\x20\x01\x59\x0b\x07\x00\x20\x00\x20\x01\x5a\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x00\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x00\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x00\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x00\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x01\x10\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x00\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1b\x00\x02\x40\x42\xff\xff\xff\xff\x03\x42\x01\x10\x00\x42\x80\x80\x80\x80\x04\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x01\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x7f\x10\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x01\x10\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1b\x00\x02\x40\x42\xff\xff\xff\xff\x03\x42\x7f\x10\x01\x42\x80\x80\x80\x80\x04\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x02\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x02\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x10\x42\x80\x20\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x02\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x7f\x10\x02\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2b\x00\x02\x40\x42\xef\x9b\xaf\xcd\xf8\xac\xd1\x91\x01\x42\x90\xe4\xd0\xb2\x87\xd3\xae\xee\x7e\x10\x02\x42\xf0\x99\x86\xab\xfe\x91\xb6\x9b\x22\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0a\x00\x42\x01\x42\x00\x10\x03\x0c\x00\x0b\x0a\x00\x42\x00\x42\x00\x10\x03\x0c\x00\x0b\x13\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x03\x0c\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x03\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x03\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x02\x10\x03\x42\x80\x80\x80\x80\x80\x80\x80\x80\x40\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xe8\x07\x10\x03\x42\x89\xd8\xf2\xd0\xc5\xec\xce\x6f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x02\x10\x03\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7b\x42\x02\x10\x03\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x7e\x10\x03\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7b\x42\x7e\x10\x03\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x07\x42\x03\x10\x03\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x79\x42\x03\x10\x03\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x07\x42\x7d\x10\x03\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x79\x42\x7d\x10\x03\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x0b\x42\x05\x10\x03\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x11\x42\x07\x10\x03\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0a\x00\x42\x01\x42\x00\x10\x04\x0c\x00\x0b\x0a\x00\x42\x00\x42\x00\x10\x04\x0c\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x04\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x04\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x04\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x04\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x02\x10\x04\x42\x80\x80\x80\x80\x80\x80\x80\x80\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\xf0\x9f\xc0\xff\x80\xfe\x83\xf8\x8f\x7f\x42\x81\x80\x80\x80\x10\x10\x04\x42\xef\x9f\xc0\xff\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xe8\x07\x10\x04\x42\xf7\xa7\x8d\xaf\xba\x93\xb1\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x02\x10\x04\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7b\x42\x02\x10\x04\x42\xfd\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x7e\x10\x04\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7b\x42\x7e\x10\x04\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x07\x42\x03\x10\x04\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x0b\x42\x05\x10\x04\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x11\x42\x07\x10\x04\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0a\x00\x42\x01\x42\x00\x10\x05\x0c\x00\x0b\x0a\x00\x42\x00\x42\x00\x10\x05\x0c\x00\x0b\x1c\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x7f\x10\x05\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x05\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x05\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x05\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x05\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x02\x10\x05\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xe8\x07\x10\x05\x42\xd9\x79\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x02\x10\x05\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7b\x42\x02\x10\x05\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x7e\x10\x05\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7b\x42\x7e\x10\x05\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x07\x42\x03\x10\x05\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x79\x42\x03\x10\x05\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x07\x42\x7d\x10\x05\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x79\x42\x7d\x10\x05\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x0b\x42\x05\x10\x05\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x11\x42\x07\x10\x05\x42\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0a\x00\x42\x01\x42\x00\x10\x06\x0c\x00\x0b\x0a\x00\x42\x00\x42\x00\x10\x06\x0c\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x06\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x06\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x06\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x06\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x02\x10\x06\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\xf0\x9f\xc0\xff\x80\xfe\x83\xf8\x8f\x7f\x42\x81\x80\x80\x80\x10\x10\x06\x42\x81\x80\x80\x80\x08\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1e\x00\x02\x40\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xe8\x07\x10\x06\x42\xa9\x06\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x02\x10\x06\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7b\x42\x02\x10\x06\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x05\x42\x7e\x10\x06\x42\x05\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7b\x42\x7e\x10\x06\x42\x7b\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x07\x42\x03\x10\x06\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x0b\x42\x05\x10\x06\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x11\x42\x07\x10\x06\x42\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x07\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x07\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x7f\x10\x07\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\xff\xff\xc3\x87\x0f\x42\xf0\xe1\xff\xff\x0f\x10\x07\x42\xf0\xe1\xc3\x87\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x07\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x08\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x08\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x08\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x08\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x08\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x08\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\xff\xff\xc3\x87\x0f\x42\xf0\xe1\xff\xff\x0f\x10\x08\x42\xff\xff\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x08\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x09\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x09\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x09\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x09\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x09\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x09\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x09\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x09\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1f\x00\x02\x40\x42\xff\xff\xc3\x87\x0f\x42\xf0\xe1\xff\xff\x0f\x10\x09\x42\x8f\x9e\xbc\xf8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x09\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x0a\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x0a\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x01\x10\x0a\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x0a\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x01\x10\x0a\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xc0\x00\x42\x01\x10\x0a\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\x3f\x10\x0a\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x01\x42\xc0\x00\x10\x0a\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x01\x42\xc1\x00\x10\x0a\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\x7f\x10\x0a\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0a\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x0b\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x0b\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x01\x10\x0b\x42\xff\xff\xff\xff\xff\xff\xff\xff\x3f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x01\x10\x0b\x42\x80\x80\x80\x80\x80\x80\x80\x80\x40\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xc0\x00\x42\x01\x10\x0b\x42\x80\x80\x80\x80\x80\x80\x80\x80\x20\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x01\x42\xc0\x00\x10\x0b\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x01\x42\xc1\x00\x10\x0b\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x7f\x10\x0b\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0b\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0b\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x3f\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x7f\x42\xc0\x00\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x7f\x42\xc1\x00\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0b\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x0c\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x0c\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x01\x10\x0c\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x01\x10\x0c\x42\xff\xff\xff\xff\xff\xff\xff\xff\x3f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x01\x10\x0c\x42\x80\x80\x80\x80\x80\x80\x80\x80\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x24\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xc0\x00\x42\x01\x10\x0c\x42\x80\x80\x80\x80\x80\x80\x80\x80\x20\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x01\x42\xc0\x00\x10\x0c\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x01\x42\xc1\x00\x10\x0c\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x7f\x10\x0c\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0c\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0c\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x3f\x10\x0c\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x14\x00\x02\x40\x42\x7f\x42\xc0\x00\x10\x0c\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x42\x7f\x42\xc1\x00\x10\x0c\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x0c\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0c\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0c\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x0d\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x0d\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x0d\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x9c\x81\x9e\xab\xef\xe9\xc8\xe8\xab\x7f\x42\x3f\x10\x0d\x42\xce\x80\xcf\xd5\xf7\xb4\xa4\xf4\xd5\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2e\x00\x02\x40\x42\x9c\x81\x9e\xab\xef\xe9\xc8\xe8\xab\x7f\x42\xbf\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0d\x42\xce\x80\xcf\xd5\xf7\xb4\xa4\xf4\xd5\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\x3f\x10\x0d\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x01\x10\x0d\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\x01\x10\x0e\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x0e\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x0e\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x89\xf0\xd9\xfa\xce\xc6\xc4\xe6\xab\x7f\x42\x35\x10\x0e\x42\xde\x9a\x81\x9e\xab\xef\xe9\xc8\xe8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x89\xf0\xd9\xfa\xce\xc6\xc4\xe6\xab\x7f\x42\x35\x10\x0e\x42\xde\x9a\x81\x9e\xab\xef\xe9\xc8\xe8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x26\x00\x02\x40\x42\x89\xf0\xd9\xfa\xce\xc6\xc4\xe6\xab\x7f\x42\xf5\x01\x10\x0e\x42\xde\x9a\x81\x9e\xab\xef\xe9\xc8\xe8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x01\x42\x01\x10\x0e\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x3f\x10\x0e\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x0f\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x00\x10\x0f\x42\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x80\x80\x02\x10\x0f\x42\x30\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xff\x01\x10\x0f\x42\x38\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x0f\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x0f\x42\x3f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x02\x10\x0f\x42\x3e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x0f\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x10\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x00\x10\x10\x42\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x80\x80\x02\x10\x10\x42\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x80\x80\x04\x10\x10\x42\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x10\x42\x3f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x10\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x7f\x10\x11\x42\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x11\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x80\x80\x02\x10\x11\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x82\x80\x88\x80\xa0\x80\x80\x7f\x10\x11\x42\x04\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x11\x42\x3f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\xd5\xaa\xd5\xaa\xa5\xd5\xaa\xd5\xaa\x7f\x10\x11\x42\x20\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\xaa\xd5\xaa\xd5\x9a\xb3\xe6\xcc\x99\x7f\x10\x11\x42\x20\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\xef\xfd\xb6\xf5\xfd\xdd\xef\xd6\x5e\x10\x11\x42\x30\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x12\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x12\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x12\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x12\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x13\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x13\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x13\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x13\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x13\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x13\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x14\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x14\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x14\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x14\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x14\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x14\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x15\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x15\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x15\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x15\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x15\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x15\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x16\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x16\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x16\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x16\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x16\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x17\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x17\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x17\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x17\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x17\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x18\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x18\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x18\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x18\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x18\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x18\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x19\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x19\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x19\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x19\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x19\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x1a\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x1a\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x1a\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1a\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x1a\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1a\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x1b\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x1b\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x1b\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x1b\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x1b\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1b\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x00\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x01\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x01\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x7f\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x01\x42\x00\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x00\x42\x01\x10\x1c\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x00\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1c\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x7f\x10\x1c\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x1c\x00\x02\x40\x42\x7f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x10\x1c\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x25\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x1c\x41\x00\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_return(() => $$.exports["assert_19"]());
+assert_return(() => $$.exports["assert_20"]());
+assert_return(() => $$.exports["assert_21"]());
+assert_return(() => $$.exports["assert_22"]());
+assert_trap(() => $$.exports["assert_23"]());
+assert_trap(() => $$.exports["assert_24"]());
+assert_trap(() => $$.exports["assert_25"]());
+assert_return(() => $$.exports["assert_26"]());
+assert_return(() => $$.exports["assert_27"]());
+assert_return(() => $$.exports["assert_28"]());
+assert_return(() => $$.exports["assert_29"]());
+assert_return(() => $$.exports["assert_30"]());
+assert_return(() => $$.exports["assert_31"]());
+assert_return(() => $$.exports["assert_32"]());
+assert_return(() => $$.exports["assert_33"]());
+assert_return(() => $$.exports["assert_34"]());
+assert_return(() => $$.exports["assert_35"]());
+assert_return(() => $$.exports["assert_36"]());
+assert_return(() => $$.exports["assert_37"]());
+assert_return(() => $$.exports["assert_38"]());
+assert_return(() => $$.exports["assert_39"]());
+assert_return(() => $$.exports["assert_40"]());
+assert_trap(() => $$.exports["assert_41"]());
+assert_trap(() => $$.exports["assert_42"]());
+assert_return(() => $$.exports["assert_43"]());
+assert_return(() => $$.exports["assert_44"]());
+assert_return(() => $$.exports["assert_45"]());
+assert_return(() => $$.exports["assert_46"]());
+assert_return(() => $$.exports["assert_47"]());
+assert_return(() => $$.exports["assert_48"]());
+assert_return(() => $$.exports["assert_49"]());
+assert_return(() => $$.exports["assert_50"]());
+assert_return(() => $$.exports["assert_51"]());
+assert_return(() => $$.exports["assert_52"]());
+assert_return(() => $$.exports["assert_53"]());
+assert_return(() => $$.exports["assert_54"]());
+assert_return(() => $$.exports["assert_55"]());
+assert_return(() => $$.exports["assert_56"]());
+assert_trap(() => $$.exports["assert_57"]());
+assert_trap(() => $$.exports["assert_58"]());
+assert_return(() => $$.exports["assert_59"]());
+assert_return(() => $$.exports["assert_60"]());
+assert_return(() => $$.exports["assert_61"]());
+assert_return(() => $$.exports["assert_62"]());
+assert_return(() => $$.exports["assert_63"]());
+assert_return(() => $$.exports["assert_64"]());
+assert_return(() => $$.exports["assert_65"]());
+assert_return(() => $$.exports["assert_66"]());
+assert_return(() => $$.exports["assert_67"]());
+assert_return(() => $$.exports["assert_68"]());
+assert_return(() => $$.exports["assert_69"]());
+assert_return(() => $$.exports["assert_70"]());
+assert_return(() => $$.exports["assert_71"]());
+assert_return(() => $$.exports["assert_72"]());
+assert_return(() => $$.exports["assert_73"]());
+assert_return(() => $$.exports["assert_74"]());
+assert_return(() => $$.exports["assert_75"]());
+assert_trap(() => $$.exports["assert_76"]());
+assert_trap(() => $$.exports["assert_77"]());
+assert_return(() => $$.exports["assert_78"]());
+assert_return(() => $$.exports["assert_79"]());
+assert_return(() => $$.exports["assert_80"]());
+assert_return(() => $$.exports["assert_81"]());
+assert_return(() => $$.exports["assert_82"]());
+assert_return(() => $$.exports["assert_83"]());
+assert_return(() => $$.exports["assert_84"]());
+assert_return(() => $$.exports["assert_85"]());
+assert_return(() => $$.exports["assert_86"]());
+assert_return(() => $$.exports["assert_87"]());
+assert_return(() => $$.exports["assert_88"]());
+assert_return(() => $$.exports["assert_89"]());
+assert_return(() => $$.exports["assert_90"]());
+assert_return(() => $$.exports["assert_91"]());
+assert_return(() => $$.exports["assert_92"]());
+assert_return(() => $$.exports["assert_93"]());
+assert_return(() => $$.exports["assert_94"]());
+assert_return(() => $$.exports["assert_95"]());
+assert_return(() => $$.exports["assert_96"]());
+assert_return(() => $$.exports["assert_97"]());
+assert_return(() => $$.exports["assert_98"]());
+assert_return(() => $$.exports["assert_99"]());
+assert_return(() => $$.exports["assert_100"]());
+assert_return(() => $$.exports["assert_101"]());
+assert_return(() => $$.exports["assert_102"]());
+assert_return(() => $$.exports["assert_103"]());
+assert_return(() => $$.exports["assert_104"]());
+assert_return(() => $$.exports["assert_105"]());
+assert_return(() => $$.exports["assert_106"]());
+assert_return(() => $$.exports["assert_107"]());
+assert_return(() => $$.exports["assert_108"]());
+assert_return(() => $$.exports["assert_109"]());
+assert_return(() => $$.exports["assert_110"]());
+assert_return(() => $$.exports["assert_111"]());
+assert_return(() => $$.exports["assert_112"]());
+assert_return(() => $$.exports["assert_113"]());
+assert_return(() => $$.exports["assert_114"]());
+assert_return(() => $$.exports["assert_115"]());
+assert_return(() => $$.exports["assert_116"]());
+assert_return(() => $$.exports["assert_117"]());
+assert_return(() => $$.exports["assert_118"]());
+assert_return(() => $$.exports["assert_119"]());
+assert_return(() => $$.exports["assert_120"]());
+assert_return(() => $$.exports["assert_121"]());
+assert_return(() => $$.exports["assert_122"]());
+assert_return(() => $$.exports["assert_123"]());
+assert_return(() => $$.exports["assert_124"]());
+assert_return(() => $$.exports["assert_125"]());
+assert_return(() => $$.exports["assert_126"]());
+assert_return(() => $$.exports["assert_127"]());
+assert_return(() => $$.exports["assert_128"]());
+assert_return(() => $$.exports["assert_129"]());
+assert_return(() => $$.exports["assert_130"]());
+assert_return(() => $$.exports["assert_131"]());
+assert_return(() => $$.exports["assert_132"]());
+assert_return(() => $$.exports["assert_133"]());
+assert_return(() => $$.exports["assert_134"]());
+assert_return(() => $$.exports["assert_135"]());
+assert_return(() => $$.exports["assert_136"]());
+assert_return(() => $$.exports["assert_137"]());
+assert_return(() => $$.exports["assert_138"]());
+assert_return(() => $$.exports["assert_139"]());
+assert_return(() => $$.exports["assert_140"]());
+assert_return(() => $$.exports["assert_141"]());
+assert_return(() => $$.exports["assert_142"]());
+assert_return(() => $$.exports["assert_143"]());
+assert_return(() => $$.exports["assert_144"]());
+assert_return(() => $$.exports["assert_145"]());
+assert_return(() => $$.exports["assert_146"]());
+assert_return(() => $$.exports["assert_147"]());
+assert_return(() => $$.exports["assert_148"]());
+assert_return(() => $$.exports["assert_149"]());
+assert_return(() => $$.exports["assert_150"]());
+assert_return(() => $$.exports["assert_151"]());
+assert_return(() => $$.exports["assert_152"]());
+assert_return(() => $$.exports["assert_153"]());
+assert_return(() => $$.exports["assert_154"]());
+assert_return(() => $$.exports["assert_155"]());
+assert_return(() => $$.exports["assert_156"]());
+assert_return(() => $$.exports["assert_157"]());
+assert_return(() => $$.exports["assert_158"]());
+assert_return(() => $$.exports["assert_159"]());
+assert_return(() => $$.exports["assert_160"]());
+assert_return(() => $$.exports["assert_161"]());
+assert_return(() => $$.exports["assert_162"]());
+assert_return(() => $$.exports["assert_163"]());
+assert_return(() => $$.exports["assert_164"]());
+assert_return(() => $$.exports["assert_165"]());
+assert_return(() => $$.exports["assert_166"]());
+assert_return(() => $$.exports["assert_167"]());
+assert_return(() => $$.exports["assert_168"]());
+assert_return(() => $$.exports["assert_169"]());
+assert_return(() => $$.exports["assert_170"]());
+assert_return(() => $$.exports["assert_171"]());
+assert_return(() => $$.exports["assert_172"]());
+assert_return(() => $$.exports["assert_173"]());
+assert_return(() => $$.exports["assert_174"]());
+assert_return(() => $$.exports["assert_175"]());
+assert_return(() => $$.exports["assert_176"]());
+assert_return(() => $$.exports["assert_177"]());
+assert_return(() => $$.exports["assert_178"]());
+assert_return(() => $$.exports["assert_179"]());
+assert_return(() => $$.exports["assert_180"]());
+assert_return(() => $$.exports["assert_181"]());
+assert_return(() => $$.exports["assert_182"]());
+assert_return(() => $$.exports["assert_183"]());
+assert_return(() => $$.exports["assert_184"]());
+assert_return(() => $$.exports["assert_185"]());
+assert_return(() => $$.exports["assert_186"]());
+assert_return(() => $$.exports["assert_187"]());
+assert_return(() => $$.exports["assert_188"]());
+assert_return(() => $$.exports["assert_189"]());
+assert_return(() => $$.exports["assert_190"]());
+assert_return(() => $$.exports["assert_191"]());
+assert_return(() => $$.exports["assert_192"]());
+assert_return(() => $$.exports["assert_193"]());
+assert_return(() => $$.exports["assert_194"]());
+assert_return(() => $$.exports["assert_195"]());
+assert_return(() => $$.exports["assert_196"]());
+assert_return(() => $$.exports["assert_197"]());
+assert_return(() => $$.exports["assert_198"]());
+assert_return(() => $$.exports["assert_199"]());
+assert_return(() => $$.exports["assert_200"]());
+assert_return(() => $$.exports["assert_201"]());
+assert_return(() => $$.exports["assert_202"]());
+assert_return(() => $$.exports["assert_203"]());
+assert_return(() => $$.exports["assert_204"]());
+assert_return(() => $$.exports["assert_205"]());
+assert_return(() => $$.exports["assert_206"]());
+assert_return(() => $$.exports["assert_207"]());
+assert_return(() => $$.exports["assert_208"]());
+assert_return(() => $$.exports["assert_209"]());
+assert_return(() => $$.exports["assert_210"]());
+assert_return(() => $$.exports["assert_211"]());
+assert_return(() => $$.exports["assert_212"]());
+assert_return(() => $$.exports["assert_213"]());
+assert_return(() => $$.exports["assert_214"]());
+assert_return(() => $$.exports["assert_215"]());
+assert_return(() => $$.exports["assert_216"]());
+assert_return(() => $$.exports["assert_217"]());
+assert_return(() => $$.exports["assert_218"]());
+assert_return(() => $$.exports["assert_219"]());
+assert_return(() => $$.exports["assert_220"]());
+assert_return(() => $$.exports["assert_221"]());
+assert_return(() => $$.exports["assert_222"]());
+assert_return(() => $$.exports["assert_223"]());
+assert_return(() => $$.exports["assert_224"]());
+assert_return(() => $$.exports["assert_225"]());
+assert_return(() => $$.exports["assert_226"]());
+assert_return(() => $$.exports["assert_227"]());
+assert_return(() => $$.exports["assert_228"]());
+assert_return(() => $$.exports["assert_229"]());
+assert_return(() => $$.exports["assert_230"]());
+assert_return(() => $$.exports["assert_231"]());
+assert_return(() => $$.exports["assert_232"]());
+assert_return(() => $$.exports["assert_233"]());
+assert_return(() => $$.exports["assert_234"]());
+assert_return(() => $$.exports["assert_235"]());
+assert_return(() => $$.exports["assert_236"]());
+assert_return(() => $$.exports["assert_237"]());
+assert_return(() => $$.exports["assert_238"]());
+assert_return(() => $$.exports["assert_239"]());
+assert_return(() => $$.exports["assert_240"]());
+assert_return(() => $$.exports["assert_241"]());
+assert_return(() => $$.exports["assert_242"]());
+assert_return(() => $$.exports["assert_243"]());
+assert_return(() => $$.exports["assert_244"]());
+assert_return(() => $$.exports["assert_245"]());
+assert_return(() => $$.exports["assert_246"]());
+assert_return(() => $$.exports["assert_247"]());
+assert_return(() => $$.exports["assert_248"]());
+assert_return(() => $$.exports["assert_249"]());
+assert_return(() => $$.exports["assert_250"]());
+assert_return(() => $$.exports["assert_251"]());
+assert_return(() => $$.exports["assert_252"]());
+assert_return(() => $$.exports["assert_253"]());
+assert_return(() => $$.exports["assert_254"]());
+assert_return(() => $$.exports["assert_255"]());
+assert_return(() => $$.exports["assert_256"]());
+assert_return(() => $$.exports["assert_257"]());
+assert_return(() => $$.exports["assert_258"]());
+assert_return(() => $$.exports["assert_259"]());
+assert_return(() => $$.exports["assert_260"]());
+assert_return(() => $$.exports["assert_261"]());
+assert_return(() => $$.exports["assert_262"]());
+assert_return(() => $$.exports["assert_263"]());
+assert_return(() => $$.exports["assert_264"]());
+assert_return(() => $$.exports["assert_265"]());
+assert_return(() => $$.exports["assert_266"]());
+assert_return(() => $$.exports["assert_267"]());
+assert_return(() => $$.exports["assert_268"]());
+assert_return(() => $$.exports["assert_269"]());
+assert_return(() => $$.exports["assert_270"]());
+assert_return(() => $$.exports["assert_271"]());
+assert_return(() => $$.exports["assert_272"]());
+assert_return(() => $$.exports["assert_273"]());
+assert_return(() => $$.exports["assert_274"]());
+assert_return(() => $$.exports["assert_275"]());
+assert_return(() => $$.exports["assert_276"]());
+assert_return(() => $$.exports["assert_277"]());
+assert_return(() => $$.exports["assert_278"]());
+assert_return(() => $$.exports["assert_279"]());
+assert_return(() => $$.exports["assert_280"]());
+assert_return(() => $$.exports["assert_281"]());
+assert_return(() => $$.exports["assert_282"]());
+assert_return(() => $$.exports["assert_283"]());
+assert_return(() => $$.exports["assert_284"]());
+assert_return(() => $$.exports["assert_285"]());
+assert_return(() => $$.exports["assert_286"]());
+assert_return(() => $$.exports["assert_287"]());
+assert_return(() => $$.exports["assert_288"]());
+assert_return(() => $$.exports["assert_289"]());
+assert_return(() => $$.exports["assert_290"]());
+assert_return(() => $$.exports["assert_291"]());
+assert_return(() => $$.exports["assert_292"]());
+assert_return(() => $$.exports["assert_293"]());
+assert_return(() => $$.exports["assert_294"]());
+assert_return(() => $$.exports["assert_295"]());
+assert_return(() => $$.exports["assert_296"]());
+assert_return(() => $$.exports["assert_297"]());
+assert_return(() => $$.exports["assert_298"]());
+assert_return(() => $$.exports["assert_299"]());
+assert_return(() => $$.exports["assert_300"]());
+assert_return(() => $$.exports["assert_301"]());
+assert_return(() => $$.exports["assert_302"]());
+assert_return(() => $$.exports["assert_303"]());
+assert_return(() => $$.exports["assert_304"]());
+assert_return(() => $$.exports["assert_305"]());
+assert_return(() => $$.exports["assert_306"]());
+assert_return(() => $$.exports["assert_307"]());
+assert_return(() => $$.exports["assert_308"]());
+assert_return(() => $$.exports["assert_309"]());
+assert_return(() => $$.exports["assert_310"]());
+assert_return(() => $$.exports["assert_311"]());
+assert_return(() => $$.exports["assert_312"]());
+assert_return(() => $$.exports["assert_313"]());
+assert_return(() => $$.exports["assert_314"]());
+assert_return(() => $$.exports["assert_315"]());
+assert_return(() => $$.exports["assert_316"]());
+assert_return(() => $$.exports["assert_317"]());
+assert_return(() => $$.exports["assert_318"]());
+assert_return(() => $$.exports["assert_319"]());
+assert_return(() => $$.exports["assert_320"]());
+assert_return(() => $$.exports["assert_321"]());
+assert_return(() => $$.exports["assert_322"]());
+assert_return(() => $$.exports["assert_323"]());
+assert_return(() => $$.exports["assert_324"]());
+assert_return(() => $$.exports["assert_325"]());
+assert_return(() => $$.exports["assert_326"]());
+assert_return(() => $$.exports["assert_327"]());
+assert_return(() => $$.exports["assert_328"]());
+assert_return(() => $$.exports["assert_329"]());
+assert_return(() => $$.exports["assert_330"]());
+assert_return(() => $$.exports["assert_331"]());
+assert_return(() => $$.exports["assert_332"]());
+assert_return(() => $$.exports["assert_333"]());
+assert_return(() => $$.exports["assert_334"]());
+assert_return(() => $$.exports["assert_335"]());
+assert_return(() => $$.exports["assert_336"]());
+assert_return(() => $$.exports["assert_337"]());
+assert_return(() => $$.exports["assert_338"]());
+assert_return(() => $$.exports["assert_339"]());
+assert_return(() => $$.exports["assert_340"]());
+assert_return(() => $$.exports["assert_341"]());
+assert_return(() => $$.exports["assert_342"]());
+assert_return(() => $$.exports["assert_343"]());
diff --git a/JSTests/wasm/spec-tests/imports.wast.js b/JSTests/wasm/spec-tests/imports.wast.js
new file mode 100644
index 0000000..2c2f60c
--- /dev/null
+++ b/JSTests/wasm/spec-tests/imports.wast.js
@@ -0,0 +1,223 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x1e\x07\x60\x00\x00\x60\x01\x7f\x00\x60\x01\x7d\x00\x60\x00\x01\x7f\x60\x00\x01\x7d\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x03\x08\x07\x00\x01\x02\x03\x04\x05\x06\x04\x04\x01\x70\x00\x0a\x05\x03\x01\x00\x02\x06\x0e\x02\x7f\x00\x41\x37\x0b\x7d\x00\x43\x00\x00\x30\x42\x0b\x07\x8e\x01\x0b\x04\x66\x75\x6e\x63\x00\x00\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x00\x01\x08\x66\x75\x6e\x63\x2d\x66\x33\x32\x00\x02\x09\x66\x75\x6e\x63\x2d\x3e\x69\x33\x32\x00\x03\x09\x66\x75\x6e\x63\x2d\x3e\x66\x33\x32\x00\x04\x0d\x66\x75\x6e\x63\x2d\x69\x33\x32\x2d\x3e\x69\x33\x32\x00\x05\x0d\x66\x75\x6e\x63\x2d\x69\x36\x34\x2d\x3e\x69\x36\x34\x00\x06\x0a\x67\x6c\x6f\x62\x61\x6c\x2d\x69\x33\x32\x03\x00\x0a\x67\x6c\x6f\x62\x61\x6c\x2d\x66\x33\x32\x03\x01\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x01\x00\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x02\x00\x0a\x21\x07\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x04\x00\x41\x16\x0b\x07\x00\x43\x00\x00\x30\x41\x0b\x04\x00\x20\x00\x0b\x04\x00\x20\x00\x0b");
+register("test", $$)
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x23\x08\x60\x01\x7f\x00\x60\x01\x7e\x00\x60\x01\x7d\x00\x60\x01\x7c\x00\x60\x02\x7f\x7d\x00\x60\x02\x7c\x7c\x00\x60\x01\x7e\x01\x7e\x60\x00\x00\x02\xc0\x01\x0b\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x02\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x03\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x04\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x05\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x03\x04\x74\x65\x73\x74\x0d\x66\x75\x6e\x63\x2d\x69\x36\x34\x2d\x3e\x69\x36\x34\x00\x06\x03\x04\x03\x00\x01\x07\x04\x05\x01\x70\x01\x02\x02\x07\x20\x03\x07\x70\x72\x69\x6e\x74\x33\x32\x00\x0b\x07\x70\x72\x69\x6e\x74\x36\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0d\x09\x08\x01\x00\x41\x00\x0b\x02\x02\x05\x0a\x70\x03\x2c\x01\x01\x7d\x20\x00\xb2\x21\x01\x20\x00\x10\x00\x20\x00\x41\x01\x6a\x43\x00\x00\x28\x42\x10\x06\x20\x00\x10\x02\x20\x00\x10\x08\x20\x01\x10\x04\x20\x00\x41\x00\x11\x00\x00\x0b\x35\x01\x01\x7c\x20\x00\x10\x0a\xb9\x21\x01\x20\x00\x10\x01\x20\x01\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xa0\x44\x00\x00\x00\x00\x00\x80\x4a\x40\x10\x07\x20\x01\x10\x05\x20\x01\x10\x09\x20\x01\x41\x01\x11\x03\x00\x0b\x0b\x00\x02\x40\x42\x18\x10\x0c\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["print32"](13));
+assert_return(() => $$.exports["assert_0"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x0d\x01\x04\x74\x65\x73\x74\x04\x66\x75\x6e\x63\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x02\x11\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x02\x11\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x66\x33\x32\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x12\x01\x04\x74\x65\x73\x74\x09\x66\x75\x6e\x63\x2d\x3e\x69\x33\x32\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x02\x12\x01\x04\x74\x65\x73\x74\x09\x66\x75\x6e\x63\x2d\x3e\x66\x33\x32\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x16\x01\x04\x74\x65\x73\x74\x0d\x66\x75\x6e\x63\x2d\x69\x33\x32\x2d\x3e\x69\x33\x32\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7e\x01\x7e\x02\x16\x01\x04\x74\x65\x73\x74\x0d\x66\x75\x6e\x63\x2d\x69\x36\x34\x2d\x3e\x69\x36\x34\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x10\x01\x04\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x02\x0d\x01\x04\x74\x65\x73\x74\x04\x66\x75\x6e\x63\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x0d\x01\x04\x74\x65\x73\x74\x04\x66\x75\x6e\x63\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x0d\x01\x04\x74\x65\x73\x74\x04\x66\x75\x6e\x63\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x11\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x11\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x02\x11\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7e\x00\x02\x11\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x11\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x12\x01\x04\x74\x65\x73\x74\x09\x66\x75\x6e\x63\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x02\x12\x01\x04\x74\x65\x73\x74\x09\x66\x75\x6e\x63\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x02\x12\x01\x04\x74\x65\x73\x74\x09\x66\x75\x6e\x63\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x02\x12\x01\x04\x74\x65\x73\x74\x09\x66\x75\x6e\x63\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x12\x01\x04\x74\x65\x73\x74\x09\x66\x75\x6e\x63\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0d\x66\x75\x6e\x63\x2d\x69\x33\x32\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0d\x66\x75\x6e\x63\x2d\x69\x33\x32\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x16\x01\x04\x74\x65\x73\x74\x0d\x66\x75\x6e\x63\x2d\x69\x33\x32\x2d\x3e\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x13\x01\x04\x74\x65\x73\x74\x0a\x67\x6c\x6f\x62\x61\x6c\x2d\x69\x33\x32\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x15\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x15\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x13\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x13\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x86\x01\x07\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7e\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7d\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7c\x00\x03\x05\x04\x00\x00\x00\x00\x07\x21\x04\x05\x67\x65\x74\x2d\x30\x00\x00\x05\x67\x65\x74\x2d\x31\x00\x01\x05\x67\x65\x74\x2d\x78\x00\x02\x05\x67\x65\x74\x2d\x79\x00\x03\x0a\x15\x04\x04\x00\x23\x00\x0b\x04\x00\x23\x01\x0b\x04\x00\x23\x02\x0b\x04\x00\x23\x03\x0b");
+assert_return(() => $$.exports["get-0"](), 666);
+assert_return(() => $$.exports["get-1"](), 666);
+assert_return(() => $$.exports["get-x"](), 666);
+assert_return(() => $$.exports["get-y"](), 666);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x04\x74\x65\x73\x74\x0a\x67\x6c\x6f\x62\x61\x6c\x2d\x69\x33\x32\x03\x7f\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x04\x74\x65\x73\x74\x0a\x67\x6c\x6f\x62\x61\x6c\x2d\x66\x33\x32\x03\x7d\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x11\x01\x04\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x03\x7f\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x03\x7f\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x0e\x01\x04\x74\x65\x73\x74\x04\x66\x75\x6e\x63\x03\x7f\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x03\x7f\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x03\x7f\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x13\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x03\x7f\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x13\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x03\x7f\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x03\x7f\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0a\x02\x60\x00\x01\x7f\x60\x01\x7f\x01\x7f\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x0a\x14\x03\x04\x03\x01\x00\x00\x07\x08\x01\x04\x63\x61\x6c\x6c\x00\x00\x09\x08\x01\x00\x41\x01\x0b\x02\x01\x02\x0a\x13\x03\x07\x00\x20\x00\x11\x00\x00\x0b\x04\x00\x41\x0b\x0b\x04\x00\x41\x16\x0b");
+assert_trap(() => $$.exports["call"](0));
+assert_return(() => $$.exports["call"](1), 11);
+assert_return(() => $$.exports["call"](2), 22);
+assert_trap(() => $$.exports["call"](3));
+assert_trap(() => $$.exports["call"](100));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0a\x02\x60\x00\x01\x7f\x60\x01\x7f\x01\x7f\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x0a\x14\x03\x04\x03\x01\x00\x00\x07\x08\x01\x04\x63\x61\x6c\x6c\x00\x00\x09\x08\x01\x00\x41\x01\x0b\x02\x01\x02\x0a\x13\x03\x07\x00\x20\x00\x11\x00\x00\x0b\x04\x00\x41\x0b\x0b\x04\x00\x41\x16\x0b");
+assert_trap(() => $$.exports["call"](0));
+assert_return(() => $$.exports["call"](1), 11);
+assert_return(() => $$.exports["call"](2), 22);
+assert_trap(() => $$.exports["call"](3));
+assert_trap(() => $$.exports["call"](100));
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x0d\x02\x00\x00\x01\x70\x00\x0a\x00\x00\x01\x70\x00\x0a");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x07\x01\x00\x00\x01\x70\x00\x0a\x04\x04\x01\x70\x00\x0a");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x04\x07\x02\x70\x00\x0a\x70\x00\x0a");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x17\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x01\x70\x00\x0a");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x17\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x01\x70\x00\x05");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x17\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x01\x70\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x00\x0a");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x00\x05");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x0a\x14");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x05\x14");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x00\x14");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x0a\x19");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x05\x19");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x12\x01\x04\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x01\x70\x00\x0a");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x01\x70\x00\x0a");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x17\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x01\x70\x00\x0c");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x18\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x01\x70\x01\x0a\x14");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x00\x0c");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x01\x70\x01\x0a\x0f");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x0f\x01\x04\x74\x65\x73\x74\x04\x66\x75\x6e\x63\x01\x70\x00\x0a");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x04\x74\x65\x73\x74\x0a\x67\x6c\x6f\x62\x61\x6c\x2d\x69\x33\x32\x01\x70\x00\x0a");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x17\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x01\x70\x00\x0a");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x01\x70\x00\x0a");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x01\x02\x03\x02\x01\x00\x07\x08\x01\x04\x6c\x6f\x61\x64\x00\x00\x0a\x09\x01\x07\x00\x20\x00\x28\x02\x00\x0b\x0b\x07\x01\x00\x41\x0a\x0b\x01\x10");
+assert_return(() => $$.exports["load"](0), 0);
+assert_return(() => $$.exports["load"](10), 16);
+assert_return(() => $$.exports["load"](8), 1048576);
+assert_trap(() => $$.exports["load"](1000000));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x01\x02\x03\x02\x01\x00\x07\x08\x01\x04\x6c\x6f\x61\x64\x00\x00\x0a\x09\x01\x07\x00\x20\x00\x28\x02\x00\x0b\x0b\x07\x01\x00\x41\x0a\x0b\x01\x10");
+assert_return(() => $$.exports["load"](0), 0);
+assert_return(() => $$.exports["load"](10), 16);
+assert_return(() => $$.exports["load"](8), 1048576);
+assert_trap(() => $$.exports["load"](1000000));
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x0b\x02\x00\x00\x02\x00\x01\x00\x00\x02\x00\x01");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x06\x01\x00\x00\x02\x00\x01\x05\x03\x01\x00\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x05\x02\x00\x00\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x02\x00\x02");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x02\x00\x01");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x02\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x00\x01");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x01\x02");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x00\x02");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x01\x03");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x00\x03");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x11\x01\x04\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x07\x75\x6e\x6b\x6e\x6f\x77\x6e\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x02\x00\x03");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x17\x01\x04\x74\x65\x73\x74\x0c\x6d\x65\x6d\x6f\x72\x79\x2d\x32\x2d\x69\x6e\x66\x02\x01\x02\x03");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x00\x02");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x01\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x12\x01\x04\x74\x65\x73\x74\x08\x66\x75\x6e\x63\x2d\x69\x33\x32\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x04\x74\x65\x73\x74\x0a\x67\x6c\x6f\x62\x61\x6c\x2d\x69\x33\x32\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x16\x01\x04\x74\x65\x73\x74\x0c\x74\x61\x62\x6c\x65\x2d\x31\x30\x2d\x69\x6e\x66\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x13\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x13\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x74\x61\x62\x6c\x65\x02\x00\x01");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x00\x02");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x01\x01");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x15\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x01\x00\x03\x03\x02\x01\x00\x07\x08\x01\x04\x67\x72\x6f\x77\x00\x00\x0a\x08\x01\x06\x00\x20\x00\x40\x00\x0b");
+assert_return(() => $$.exports["grow"](0), 1);
+assert_return(() => $$.exports["grow"](1), 1);
+assert_return(() => $$.exports["grow"](0), 2);
+assert_return(() => $$.exports["grow"](1), -1);
+assert_return(() => $$.exports["grow"](0), 2);
diff --git a/JSTests/wasm/spec-tests/int_exprs.wast.js b/JSTests/wasm/spec-tests/int_exprs.wast.js
new file mode 100644
index 0000000..5b442ec
--- /dev/null
+++ b/JSTests/wasm/spec-tests/int_exprs.wast.js
@@ -0,0 +1,189 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7f\x7f\x01\x7f\x60\x02\x7e\x7e\x01\x7f\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x83\x01\x06\x18\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x63\x6d\x70\x5f\x73\x5f\x6f\x66\x66\x73\x65\x74\x00\x00\x18\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x63\x6d\x70\x5f\x75\x5f\x6f\x66\x66\x73\x65\x74\x00\x01\x18\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x63\x6d\x70\x5f\x73\x5f\x6f\x66\x66\x73\x65\x74\x00\x02\x18\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x63\x6d\x70\x5f\x75\x5f\x6f\x66\x66\x73\x65\x74\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x6a\x06\x0d\x00\x20\x00\x41\x01\x6a\x20\x01\x41\x01\x6a\x48\x0b\x0d\x00\x20\x00\x41\x01\x6a\x20\x01\x41\x01\x6a\x49\x0b\x0d\x00\x20\x00\x42\x01\x7c\x20\x01\x42\x01\x7c\x53\x0b\x0d\x00\x20\x00\x42\x01\x7c\x20\x01\x42\x01\x7c\x54\x0b\x1c\x00\x02\x40\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x42\x00\x10\x02\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x42\x00\x10\x03\x41\x01\x46\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_cmp_s_offset"](2147483647, 0), 1);
+assert_return(() => $$.exports["i32.no_fold_cmp_u_offset"](-1, 0), 1);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x04\x03\x00\x01\x01\x07\x33\x03\x19\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x77\x72\x61\x70\x5f\x65\x78\x74\x65\x6e\x64\x5f\x73\x00\x00\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x02\x0a\x43\x03\x06\x00\x20\x00\xa7\xac\x0b\x1c\x00\x02\x40\x42\xf0\xc0\xc1\x82\x84\x86\x88\x08\x10\x00\x42\xf0\xc0\xc1\x82\x04\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x42\xa0\xe1\x83\x87\x8d\x98\xac\xd0\x00\x10\x00\x42\xa0\xe1\x83\x87\x7d\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x03\x02\x00\x01\x07\x28\x02\x19\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x77\x72\x61\x70\x5f\x65\x78\x74\x65\x6e\x64\x5f\x75\x00\x00\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x01\x0a\x25\x02\x06\x00\x20\x00\xa7\xad\x0b\x1c\x00\x02\x40\x42\xf0\xc0\xc1\x82\x84\x86\x88\x08\x10\x00\x42\xf0\xc0\xc1\x82\x04\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x77\x06\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x6c\x5f\x73\x68\x72\x5f\x73\x00\x00\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x6c\x5f\x73\x68\x72\x5f\x75\x00\x01\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x6c\x5f\x73\x68\x72\x5f\x73\x00\x02\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x6c\x5f\x73\x68\x72\x5f\x75\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x63\x06\x0a\x00\x20\x00\x41\x01\x74\x41\x01\x75\x0b\x0a\x00\x20\x00\x41\x01\x74\x41\x01\x76\x0b\x0a\x00\x20\x00\x42\x01\x86\x42\x01\x87\x0b\x0a\x00\x20\x00\x42\x01\x86\x42\x01\x88\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_shl_shr_s"](-2147483648), 0);
+assert_return(() => $$.exports["i32.no_fold_shl_shr_u"](-2147483648), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x77\x06\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x72\x5f\x73\x5f\x73\x68\x6c\x00\x00\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x72\x5f\x75\x5f\x73\x68\x6c\x00\x01\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x72\x5f\x73\x5f\x73\x68\x6c\x00\x02\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x73\x68\x72\x5f\x75\x5f\x73\x68\x6c\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x51\x06\x0a\x00\x20\x00\x41\x01\x75\x41\x01\x74\x0b\x0a\x00\x20\x00\x41\x01\x76\x41\x01\x74\x0b\x0a\x00\x20\x00\x42\x01\x87\x42\x01\x86\x0b\x0a\x00\x20\x00\x42\x01\x88\x42\x01\x86\x0b\x11\x00\x02\x40\x42\x01\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_shr_s_shl"](1), 0);
+assert_return(() => $$.exports["i32.no_fold_shr_u_shl"](1), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x77\x06\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x73\x5f\x6d\x75\x6c\x00\x00\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x75\x5f\x6d\x75\x6c\x00\x01\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x73\x5f\x6d\x75\x6c\x00\x02\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x75\x5f\x6d\x75\x6c\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x51\x06\x0a\x00\x20\x00\x41\x06\x6d\x41\x06\x6c\x0b\x0a\x00\x20\x00\x41\x06\x6e\x41\x06\x6c\x0b\x0a\x00\x20\x00\x42\x06\x7f\x42\x06\x7e\x0b\x0a\x00\x20\x00\x42\x06\x80\x42\x06\x7e\x0b\x11\x00\x02\x40\x42\x01\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_div_s_mul"](1), 0);
+assert_return(() => $$.exports["i32.no_fold_div_u_mul"](1), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x77\x06\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x5f\x73\x00\x00\x15\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x5f\x75\x00\x01\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x5f\x73\x00\x02\x15\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x6d\x75\x6c\x5f\x64\x69\x76\x5f\x75\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x63\x06\x0a\x00\x20\x00\x41\x06\x6c\x41\x06\x6d\x0b\x0a\x00\x20\x00\x41\x06\x6c\x41\x06\x6e\x0b\x0a\x00\x20\x00\x42\x06\x7e\x42\x06\x7f\x0b\x0a\x00\x20\x00\x42\x06\x7e\x42\x06\x80\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_mul_div_s"](-2147483648), 0);
+assert_return(() => $$.exports["i32.no_fold_mul_div_u"](-2147483648), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x04\x03\x00\x01\x02\x07\x38\x03\x13\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x73\x5f\x32\x00\x00\x13\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x64\x69\x76\x5f\x73\x5f\x32\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x0a\x23\x03\x07\x00\x20\x00\x41\x02\x6d\x0b\x07\x00\x20\x00\x42\x02\x7f\x0b\x11\x00\x02\x40\x42\x75\x10\x01\x42\x7b\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_div_s_2"](-11), -5);
+assert_return(() => $$.exports["assert_0"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x04\x03\x00\x01\x02\x07\x38\x03\x13\x69\x33\x32\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x72\x65\x6d\x5f\x73\x5f\x32\x00\x00\x13\x69\x36\x34\x2e\x6e\x6f\x5f\x66\x6f\x6c\x64\x5f\x72\x65\x6d\x5f\x73\x5f\x32\x00\x01\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x02\x0a\x23\x03\x07\x00\x20\x00\x41\x02\x6f\x0b\x07\x00\x20\x00\x42\x02\x81\x0b\x11\x00\x02\x40\x42\x75\x10\x01\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.no_fold_rem_s_2"](-11), -1);
+assert_return(() => $$.exports["assert_0"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x4f\x06\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x73\x5f\x33\x00\x00\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x75\x5f\x33\x00\x01\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x73\x5f\x33\x00\x02\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x75\x5f\x33\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x35\x06\x07\x00\x20\x00\x41\x00\x6d\x0b\x07\x00\x20\x00\x41\x00\x6e\x0b\x07\x00\x20\x00\x42\x00\x7f\x0b\x07\x00\x20\x00\x42\x00\x80\x0b\x09\x00\x42\xc7\x00\x10\x02\x0c\x00\x0b\x09\x00\x42\xc7\x00\x10\x03\x0c\x00\x0b");
+assert_trap(() => $$.exports["i32.div_s_3"](71));
+assert_trap(() => $$.exports["i32.div_u_3"](71));
+assert_trap(() => $$.exports["assert_0"]());
+assert_trap(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x09\x08\x00\x00\x01\x01\x02\x02\x02\x02\x07\x65\x08\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x73\x5f\x33\x00\x00\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x75\x5f\x33\x00\x01\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x73\x5f\x33\x00\x02\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x75\x5f\x33\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x0a\x8c\x01\x08\x07\x00\x20\x00\x41\x03\x6d\x0b\x07\x00\x20\x00\x41\x03\x6e\x0b\x07\x00\x20\x00\x42\x03\x7f\x0b\x07\x00\x20\x00\x42\x03\x80\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x02\x42\x17\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x30\x10\x02\x42\x80\x80\x80\x80\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x03\x42\x17\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x22\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x40\x10\x03\x42\x80\x80\x80\x80\x80\x80\x80\x80\xc0\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.div_s_3"](71), 23);
+assert_return(() => $$.exports["i32.div_s_3"](1610612736), 536870912);
+assert_return(() => $$.exports["i32.div_u_3"](71), 23);
+assert_return(() => $$.exports["i32.div_u_3"](-1073741824), 1073741824);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x09\x08\x00\x00\x01\x01\x02\x02\x02\x02\x07\x65\x08\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x73\x5f\x35\x00\x00\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x75\x5f\x35\x00\x01\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x73\x5f\x35\x00\x02\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x75\x5f\x35\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x0a\x8d\x01\x08\x07\x00\x20\x00\x41\x05\x6d\x0b\x07\x00\x20\x00\x41\x05\x6e\x0b\x07\x00\x20\x00\x42\x05\x7f\x0b\x07\x00\x20\x00\x42\x05\x80\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x02\x42\x0e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x22\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xd0\x00\x10\x02\x42\x80\x80\x80\x80\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x03\x42\x0e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x22\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xa0\x7f\x10\x03\x42\x80\x80\x80\x80\x80\x80\x80\x80\x20\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.div_s_5"](71), 14);
+assert_return(() => $$.exports["i32.div_s_5"](1342177280), 268435456);
+assert_return(() => $$.exports["i32.div_u_5"](71), 14);
+assert_return(() => $$.exports["i32.div_u_5"](-1610612736), 536870912);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x09\x08\x00\x00\x01\x01\x02\x02\x02\x02\x07\x65\x08\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x73\x5f\x37\x00\x00\x0b\x69\x33\x32\x2e\x64\x69\x76\x5f\x75\x5f\x37\x00\x01\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x73\x5f\x37\x00\x02\x0b\x69\x36\x34\x2e\x64\x69\x76\x5f\x75\x5f\x37\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x0a\x8c\x01\x08\x07\x00\x20\x00\x41\x07\x6d\x0b\x07\x00\x20\x00\x41\x07\x6e\x0b\x07\x00\x20\x00\x42\x07\x7f\x0b\x07\x00\x20\x00\x42\x07\x80\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x02\x42\x0a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x22\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xf0\x00\x10\x02\x42\x80\x80\x80\x80\x80\x80\x80\x80\x10\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x03\x42\x0a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x21\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x60\x10\x03\x42\x80\x80\x80\x80\x80\x80\x80\x80\x20\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.div_s_7"](71), 10);
+assert_return(() => $$.exports["i32.div_s_7"](1879048192), 268435456);
+assert_return(() => $$.exports["i32.div_u_7"](71), 10);
+assert_return(() => $$.exports["i32.div_u_7"](-536870912), 536870912);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x09\x08\x00\x00\x01\x01\x02\x02\x02\x02\x07\x65\x08\x0b\x69\x33\x32\x2e\x72\x65\x6d\x5f\x73\x5f\x33\x00\x00\x0b\x69\x33\x32\x2e\x72\x65\x6d\x5f\x75\x5f\x33\x00\x01\x0b\x69\x36\x34\x2e\x72\x65\x6d\x5f\x73\x5f\x33\x00\x02\x0b\x69\x36\x34\x2e\x72\x65\x6d\x5f\x75\x5f\x33\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x0a\x7b\x08\x07\x00\x20\x00\x41\x03\x6f\x0b\x07\x00\x20\x00\x41\x03\x70\x0b\x07\x00\x20\x00\x42\x03\x81\x0b\x07\x00\x20\x00\x42\x03\x82\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x02\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x30\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x03\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x40\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.rem_s_3"](71), 2);
+assert_return(() => $$.exports["i32.rem_s_3"](1610612736), 0);
+assert_return(() => $$.exports["i32.rem_u_3"](71), 2);
+assert_return(() => $$.exports["i32.rem_u_3"](-1073741824), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x09\x08\x00\x00\x01\x01\x02\x02\x02\x02\x07\x65\x08\x0b\x69\x33\x32\x2e\x72\x65\x6d\x5f\x73\x5f\x35\x00\x00\x0b\x69\x33\x32\x2e\x72\x65\x6d\x5f\x75\x5f\x35\x00\x01\x0b\x69\x36\x34\x2e\x72\x65\x6d\x5f\x73\x5f\x35\x00\x02\x0b\x69\x36\x34\x2e\x72\x65\x6d\x5f\x75\x5f\x35\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x0a\x7d\x08\x07\x00\x20\x00\x41\x05\x6f\x0b\x07\x00\x20\x00\x41\x05\x70\x0b\x07\x00\x20\x00\x42\x05\x81\x0b\x07\x00\x20\x00\x42\x05\x82\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x02\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xd0\x00\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x03\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xa0\x7f\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.rem_s_5"](71), 1);
+assert_return(() => $$.exports["i32.rem_s_5"](1342177280), 0);
+assert_return(() => $$.exports["i32.rem_u_5"](71), 1);
+assert_return(() => $$.exports["i32.rem_u_5"](-1610612736), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0e\x03\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x09\x08\x00\x00\x01\x01\x02\x02\x02\x02\x07\x65\x08\x0b\x69\x33\x32\x2e\x72\x65\x6d\x5f\x73\x5f\x37\x00\x00\x0b\x69\x33\x32\x2e\x72\x65\x6d\x5f\x75\x5f\x37\x00\x01\x0b\x69\x36\x34\x2e\x72\x65\x6d\x5f\x73\x5f\x37\x00\x02\x0b\x69\x36\x34\x2e\x72\x65\x6d\x5f\x75\x5f\x37\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x0a\x7c\x08\x07\x00\x20\x00\x41\x07\x6f\x0b\x07\x00\x20\x00\x41\x07\x70\x0b\x07\x00\x20\x00\x42\x07\x81\x0b\x07\x00\x20\x00\x42\x07\x82\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x02\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\xf0\x00\x10\x02\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\xc7\x00\x10\x03\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x80\x80\x80\x80\x80\x80\x80\x80\x60\x10\x03\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.rem_s_7"](71), 1);
+assert_return(() => $$.exports["i32.rem_s_7"](1879048192), 0);
+assert_return(() => $$.exports["i32.rem_u_7"](71), 1);
+assert_return(() => $$.exports["i32.rem_u_7"](-536870912), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
diff --git a/JSTests/wasm/spec-tests/int_literals.wast.js b/JSTests/wasm/spec-tests/int_literals.wast.js
new file mode 100644
index 0000000..fbd88ea
--- /dev/null
+++ b/JSTests/wasm/spec-tests/int_literals.wast.js
@@ -0,0 +1,117 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x00\x03\x22\x21\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x07\xb9\x03\x21\x08\x69\x33\x32\x2e\x74\x65\x73\x74\x00\x00\x08\x69\x33\x32\x2e\x75\x6d\x61\x78\x00\x01\x08\x69\x33\x32\x2e\x73\x6d\x61\x78\x00\x02\x0c\x69\x33\x32\x2e\x6e\x65\x67\x5f\x73\x6d\x61\x78\x00\x03\x08\x69\x33\x32\x2e\x73\x6d\x69\x6e\x00\x04\x0c\x69\x33\x32\x2e\x61\x6c\x74\x5f\x73\x6d\x69\x6e\x00\x05\x0c\x69\x33\x32\x2e\x69\x6e\x63\x5f\x73\x6d\x69\x6e\x00\x06\x0c\x69\x33\x32\x2e\x6e\x65\x67\x5f\x7a\x65\x72\x6f\x00\x07\x0d\x69\x33\x32\x2e\x6e\x6f\x74\x5f\x6f\x63\x74\x61\x6c\x00\x08\x14\x69\x33\x32\x2e\x75\x6e\x73\x69\x67\x6e\x65\x64\x5f\x64\x65\x63\x69\x6d\x61\x6c\x00\x09\x0d\x69\x33\x32\x2e\x70\x6c\x75\x73\x5f\x73\x69\x67\x6e\x00\x0a\x08\x69\x36\x34\x2e\x74\x65\x73\x74\x00\x0b\x08\x69\x36\x34\x2e\x75\x6d\x61\x78\x00\x0c\x08\x69\x36\x34\x2e\x73\x6d\x61\x78\x00\x0d\x0c\x69\x36\x34\x2e\x6e\x65\x67\x5f\x73\x6d\x61\x78\x00\x0e\x08\x69\x36\x34\x2e\x73\x6d\x69\x6e\x00\x0f\x0c\x69\x36\x34\x2e\x61\x6c\x74\x5f\x73\x6d\x69\x6e\x00\x10\x0c\x69\x36\x34\x2e\x69\x6e\x63\x5f\x73\x6d\x69\x6e\x00\x11\x0c\x69\x36\x34\x2e\x6e\x65\x67\x5f\x7a\x65\x72\x6f\x00\x12\x0d\x69\x36\x34\x2e\x6e\x6f\x74\x5f\x6f\x63\x74\x61\x6c\x00\x13\x14\x69\x36\x34\x2e\x75\x6e\x73\x69\x67\x6e\x65\x64\x5f\x64\x65\x63\x69\x6d\x61\x6c\x00\x14\x0d\x69\x36\x34\x2e\x70\x6c\x75\x73\x5f\x73\x69\x67\x6e\x00\x15\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x16\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x17\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x18\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x19\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x1a\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x1b\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x1c\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x1d\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x1e\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x1f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x20\x0a\xbd\x03\x21\x09\x00\x41\x8d\xa0\xb7\xdd\x00\x0f\x0b\x05\x00\x41\x7f\x0f\x0b\x09\x00\x41\xff\xff\xff\xff\x07\x0f\x0b\x09\x00\x41\x81\x80\x80\x80\x78\x0f\x0b\x09\x00\x41\x80\x80\x80\x80\x78\x0f\x0b\x09\x00\x41\x80\x80\x80\x80\x78\x0f\x0b\x0c\x00\x41\x80\x80\x80\x80\x78\x41\x01\x6a\x0f\x0b\x05\x00\x41\x00\x0f\x0b\x05\x00\x41\x0a\x0f\x0b\x05\x00\x41\x7f\x0f\x0b\x05\x00\x41\x2a\x0f\x0b\x0d\x00\x42\xee\xd4\x99\xdd\xe0\xcd\xee\xd5\x0c\x0f\x0b\x05\x00\x42\x7f\x0f\x0b\x0e\x00\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x0f\x0b\x0e\x00\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x0f\x0b\x0e\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x0f\x0b\x0e\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x0f\x0b\x11\x00\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x42\x01\x7c\x0f\x0b\x05\x00\x42\x00\x0f\x0b\x05\x00\x42\x0a\x0f\x0b\x05\x00\x42\x7f\x0f\x0b\x05\x00\x42\x2a\x0f\x0b\x17\x00\x02\x40\x10\x0b\x42\xee\xd4\x99\xdd\xe0\xcd\xee\xd5\x0c\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x0c\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x0d\x42\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x0e\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x0f\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x10\x42\x80\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x18\x00\x02\x40\x10\x11\x42\x81\x80\x80\x80\x80\x80\x80\x80\x80\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x12\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x13\x42\x0a\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x14\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x15\x42\x2a\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["i32.test"](), 195940365);
+assert_return(() => $$.exports["i32.umax"](), -1);
+assert_return(() => $$.exports["i32.smax"](), 2147483647);
+assert_return(() => $$.exports["i32.neg_smax"](), -2147483647);
+assert_return(() => $$.exports["i32.smin"](), -2147483648);
+assert_return(() => $$.exports["i32.alt_smin"](), -2147483648);
+assert_return(() => $$.exports["i32.inc_smin"](), -2147483647);
+assert_return(() => $$.exports["i32.neg_zero"](), 0);
+assert_return(() => $$.exports["i32.not_octal"](), 10);
+assert_return(() => $$.exports["i32.unsigned_decimal"](), -1);
+assert_return(() => $$.exports["i32.plus_sign"](), 42);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
diff --git a/JSTests/wasm/spec-tests/left-to-right.wast.js b/JSTests/wasm/spec-tests/left-to-right.wast.js
new file mode 100644
index 0000000..caa823a
--- /dev/null
+++ b/JSTests/wasm/spec-tests/left-to-right.wast.js
@@ -0,0 +1,190 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x40\x0d\x60\x02\x7f\x7f\x01\x7f\x60\x02\x7e\x7e\x01\x7f\x60\x02\x7d\x7d\x01\x7f\x60\x02\x7c\x7c\x01\x7f\x60\x00\x00\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x02\x7f\x7f\x00\x60\x02\x7e\x7e\x00\x60\x02\x7d\x7d\x00\x60\x02\x7c\x7c\x00\x03\x84\x01\x82\x01\x00\x00\x01\x01\x02\x02\x03\x03\x04\x04\x05\x05\x05\x05\x05\x05\x06\x06\x06\x05\x05\x07\x07\x07\x05\x05\x08\x08\x08\x05\x05\x09\x0a\x0b\x0c\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x04\x05\x01\x70\x01\x08\x08\x05\x03\x01\x00\x01\x07\xaa\x08\x5f\x07\x69\x33\x32\x5f\x61\x64\x64\x00\x23\x07\x69\x33\x32\x5f\x73\x75\x62\x00\x24\x07\x69\x33\x32\x5f\x6d\x75\x6c\x00\x25\x09\x69\x33\x32\x5f\x64\x69\x76\x5f\x73\x00\x26\x09\x69\x33\x32\x5f\x64\x69\x76\x5f\x75\x00\x27\x09\x69\x33\x32\x5f\x72\x65\x6d\x5f\x73\x00\x28\x09\x69\x33\x32\x5f\x72\x65\x6d\x5f\x75\x00\x29\x07\x69\x33\x32\x5f\x61\x6e\x64\x00\x2a\x06\x69\x33\x32\x5f\x6f\x72\x00\x2b\x07\x69\x33\x32\x5f\x78\x6f\x72\x00\x2c\x07\x69\x33\x32\x5f\x73\x68\x6c\x00\x2d\x09\x69\x33\x32\x5f\x73\x68\x72\x5f\x75\x00\x2e\x09\x69\x33\x32\x5f\x73\x68\x72\x5f\x73\x00\x2f\x06\x69\x33\x32\x5f\x65\x71\x00\x30\x06\x69\x33\x32\x5f\x6e\x65\x00\x31\x08\x69\x33\x32\x5f\x6c\x74\x5f\x73\x00\x32\x08\x69\x33\x32\x5f\x6c\x65\x5f\x73\x00\x33\x08\x69\x33\x32\x5f\x6c\x74\x5f\x75\x00\x34\x08\x69\x33\x32\x5f\x6c\x65\x5f\x75\x00\x35\x08\x69\x33\x32\x5f\x67\x74\x5f\x73\x00\x36\x08\x69\x33\x32\x5f\x67\x65\x5f\x73\x00\x37\x08\x69\x33\x32\x5f\x67\x74\x5f\x75\x00\x38\x08\x69\x33\x32\x5f\x67\x65\x5f\x75\x00\x39\x09\x69\x33\x32\x5f\x73\x74\x6f\x72\x65\x00\x3a\x0a\x69\x33\x32\x5f\x73\x74\x6f\x72\x65\x38\x00\x3b\x0b\x69\x33\x32\x5f\x73\x74\x6f\x72\x65\x31\x36\x00\x3c\x08\x69\x33\x32\x5f\x63\x61\x6c\x6c\x00\x3d\x11\x69\x33\x32\x5f\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x00\x3e\x0a\x69\x33\x32\x5f\x73\x65\x6c\x65\x63\x74\x00\x3f\x07\x69\x36\x34\x5f\x61\x64\x64\x00\x40\x07\x69\x36\x34\x5f\x73\x75\x62\x00\x41\x07\x69\x36\x34\x5f\x6d\x75\x6c\x00\x42\x09\x69\x36\x34\x5f\x64\x69\x76\x5f\x73\x00\x43\x09\x69\x36\x34\x5f\x64\x69\x76\x5f\x75\x00\x44\x09\x69\x36\x34\x5f\x72\x65\x6d\x5f\x73\x00\x45\x09\x69\x36\x34\x5f\x72\x65\x6d\x5f\x75\x00\x46\x07\x69\x36\x34\x5f\x61\x6e\x64\x00\x47\x06\x69\x36\x34\x5f\x6f\x72\x00\x48\x07\x69\x36\x34\x5f\x78\x6f\x72\x00\x49\x07\x69\x36\x34\x5f\x73\x68\x6c\x00\x4a\x09\x69\x36\x34\x5f\x73\x68\x72\x5f\x75\x00\x4b\x09\x69\x36\x34\x5f\x73\x68\x72\x5f\x73\x00\x4c\x06\x69\x36\x34\x5f\x65\x71\x00\x4d\x06\x69\x36\x34\x5f\x6e\x65\x00\x4e\x08\x69\x36\x34\x5f\x6c\x74\x5f\x73\x00\x4f\x08\x69\x36\x34\x5f\x6c\x65\x5f\x73\x00\x50\x08\x69\x36\x34\x5f\x6c\x74\x5f\x75\x00\x51\x08\x69\x36\x34\x5f\x6c\x65\x5f\x75\x00\x52\x08\x69\x36\x34\x5f\x67\x74\x5f\x73\x00\x53\x08\x69\x36\x34\x5f\x67\x65\x5f\x73\x00\x54\x08\x69\x36\x34\x5f\x67\x74\x5f\x75\x00\x55\x08\x69\x36\x34\x5f\x67\x65\x5f\x75\x00\x56\x09\x69\x36\x34\x5f\x73\x74\x6f\x72\x65\x00\x57\x0a\x69\x36\x34\x5f\x73\x74\x6f\x72\x65\x38\x00\x58\x0b\x69\x36\x34\x5f\x73\x74\x6f\x72\x65\x31\x36\x00\x59\x0b\x69\x36\x34\x5f\x73\x74\x6f\x72\x65\x33\x32\x00\x5a\x08\x69\x36\x34\x5f\x63\x61\x6c\x6c\x00\x5b\x11\x69\x36\x34\x5f\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x00\x5c\x0a\x69\x36\x34\x5f\x73\x65\x6c\x65\x63\x74\x00\x5d\x07\x66\x33\x32\x5f\x61\x64\x64\x00\x5e\x07\x66\x33\x32\x5f\x73\x75\x62\x00\x5f\x07\x66\x33\x32\x5f\x6d\x75\x6c\x00\x60\x07\x66\x33\x32\x5f\x64\x69\x76\x00\x61\x0c\x66\x33\x32\x5f\x63\x6f\x70\x79\x73\x69\x67\x6e\x00\x62\x06\x66\x33\x32\x5f\x65\x71\x00\x63\x06\x66\x33\x32\x5f\x6e\x65\x00\x64\x06\x66\x33\x32\x5f\x6c\x74\x00\x65\x06\x66\x33\x32\x5f\x6c\x65\x00\x66\x06\x66\x33\x32\x5f\x67\x74\x00\x67\x06\x66\x33\x32\x5f\x67\x65\x00\x68\x07\x66\x33\x32\x5f\x6d\x69\x6e\x00\x69\x07\x66\x33\x32\x5f\x6d\x61\x78\x00\x6a\x09\x66\x33\x32\x5f\x73\x74\x6f\x72\x65\x00\x6b\x08\x66\x33\x32\x5f\x63\x61\x6c\x6c\x00\x6c\x11\x66\x33\x32\x5f\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x00\x6d\x0a\x66\x33\x32\x5f\x73\x65\x6c\x65\x63\x74\x00\x6e\x07\x66\x36\x34\x5f\x61\x64\x64\x00\x6f\x07\x66\x36\x34\x5f\x73\x75\x62\x00\x70\x07\x66\x36\x34\x5f\x6d\x75\x6c\x00\x71\x07\x66\x36\x34\x5f\x64\x69\x76\x00\x72\x0c\x66\x36\x34\x5f\x63\x6f\x70\x79\x73\x69\x67\x6e\x00\x73\x06\x66\x36\x34\x5f\x65\x71\x00\x74\x06\x66\x36\x34\x5f\x6e\x65\x00\x75\x06\x66\x36\x34\x5f\x6c\x74\x00\x76\x06\x66\x36\x34\x5f\x6c\x65\x00\x77\x06\x66\x36\x34\x5f\x67\x74\x00\x78\x06\x66\x36\x34\x5f\x67\x65\x00\x79\x07\x66\x36\x34\x5f\x6d\x69\x6e\x00\x7a\x07\x66\x36\x34\x5f\x6d\x61\x78\x00\x7b\x09\x66\x36\x34\x5f\x73\x74\x6f\x72\x65\x00\x7c\x08\x66\x36\x34\x5f\x63\x61\x6c\x6c\x00\x7d\x11\x66\x36\x34\x5f\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x00\x7e\x0a\x66\x36\x34\x5f\x73\x65\x6c\x65\x63\x74\x00\x7f\x05\x62\x72\x5f\x69\x66\x00\x80\x01\x08\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x81\x01\x09\x0e\x01\x00\x41\x00\x0b\x08\x00\x01\x02\x03\x04\x05\x06\x07\x0a\xaa\x0d\x82\x01\x04\x00\x41\x7f\x0b\x04\x00\x41\x7e\x0b\x04\x00\x41\x7f\x0b\x04\x00\x41\x7e\x0b\x04\x00\x41\x7f\x0b\x04\x00\x41\x7e\x0b\x04\x00\x41\x7f\x0b\x04\x00\x41\x7e\x0b\x09\x00\x41\x08\x41\x00\x36\x02\x00\x0b\x27\x00\x41\x0b\x41\x0a\x2d\x00\x00\x3a\x00\x00\x41\x0a\x41\x09\x2d\x00\x00\x3a\x00\x00\x41\x09\x41\x08\x2d\x00\x00\x3a\x00\x00\x41\x08\x41\x7d\x3a\x00\x00\x0b\x07\x00\x41\x08\x28\x02\x00\x0b\x0d\x00\x10\x09\x41\x08\x41\x01\x3a\x00\x00\x41\x00\x0b\x0d\x00\x10\x09\x41\x08\x41\x02\x3a\x00\x00\x41\x01\x0b\x0d\x00\x10\x09\x41\x08\x41\x03\x3a\x00\x00\x41\x01\x0b\x0d\x00\x10\x09\x41\x08\x41\x04\x3a\x00\x00\x41\x00\x0b\x0d\x00\x10\x09\x41\x08\x41\x05\x3a\x00\x00\x41\x00\x0b\x0d\x00\x10\x09\x41\x08\x41\x01\x3a\x00\x00\x42\x00\x0b\x0d\x00\x10\x09\x41\x08\x41\x02\x3a\x00\x00\x42\x01\x0b\x0d\x00\x10\x09\x41\x08\x41\x03\x3a\x00\x00\x42\x01\x0b\x0d\x00\x10\x09\x41\x08\x41\x04\x3a\x00\x00\x41\x02\x0b\x0d\x00\x10\x09\x41\x08\x41\x05\x3a\x00\x00\x41\x00\x0b\x10\x00\x10\x09\x41\x08\x41\x01\x3a\x00\x00\x43\x00\x00\x00\x00\x0b\x10\x00\x10\x09\x41\x08\x41\x02\x3a\x00\x00\x43\x00\x00\x80\x3f\x0b\x10\x00\x10\x09\x41\x08\x41\x03\x3a\x00\x00\x43\x00\x00\x80\x3f\x0b\x0d\x00\x10\x09\x41\x08\x41\x04\x3a\x00\x00\x41\x04\x0b\x0d\x00\x10\x09\x41\x08\x41\x05\x3a\x00\x00\x41\x00\x0b\x14\x00\x10\x09\x41\x08\x41\x01\x3a\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x14\x00\x10\x09\x41\x08\x41\x02\x3a\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x0b\x14\x00\x10\x09\x41\x08\x41\x03\x3a\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x0b\x0d\x00\x10\x09\x41\x08\x41\x04\x3a\x00\x00\x41\x06\x0b\x0d\x00\x10\x09\x41\x08\x41\x05\x3a\x00\x00\x41\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x02\x00\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x6a\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x6b\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x6c\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x6d\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x6e\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x6f\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x70\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x71\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x72\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x73\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x74\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x76\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x75\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x46\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x47\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x48\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x4c\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x49\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x4d\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x4a\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x4e\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x4b\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x4f\x1a\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x0c\x36\x02\x00\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x0c\x3a\x00\x00\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x0c\x3b\x01\x00\x10\x0a\x0b\x0c\x00\x10\x08\x10\x0b\x10\x0c\x10\x1f\x10\x0a\x0b\x10\x00\x10\x08\x10\x0b\x10\x0c\x10\x0e\x11\x00\x00\x1a\x10\x0a\x0b\x0e\x00\x10\x08\x10\x0b\x10\x0c\x10\x0f\x1b\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x7c\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x7d\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x7e\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x7f\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x80\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x81\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x82\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x83\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x84\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x85\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x86\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x88\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x87\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x51\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x52\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x53\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x57\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x54\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x58\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x55\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x59\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x56\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x5a\x1a\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x11\x37\x03\x00\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x11\x3c\x00\x00\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x11\x3d\x01\x00\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x11\x3e\x02\x00\x10\x0a\x0b\x0c\x00\x10\x08\x10\x10\x10\x11\x10\x20\x10\x0a\x0b\x10\x00\x10\x08\x10\x10\x10\x11\x10\x13\x11\x01\x00\x1a\x10\x0a\x0b\x0e\x00\x10\x08\x10\x10\x10\x11\x10\x14\x1b\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x92\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x93\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x94\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x95\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x98\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x5b\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x5c\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x5d\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x5f\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x5e\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x60\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x96\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x97\x1a\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x16\x38\x02\x00\x10\x0a\x0b\x0c\x00\x10\x08\x10\x15\x10\x16\x10\x21\x10\x0a\x0b\x10\x00\x10\x08\x10\x15\x10\x16\x10\x18\x11\x02\x00\x1a\x10\x0a\x0b\x0e\x00\x10\x08\x10\x15\x10\x16\x10\x19\x1b\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\xa0\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\xa1\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\xa2\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\xa3\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\xa6\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\x61\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\x62\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\x63\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\x65\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\x64\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\x66\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\xa4\x1a\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\xa5\x1a\x10\x0a\x0b\x0d\x00\x10\x08\x10\x0b\x10\x1b\x39\x03\x00\x10\x0a\x0b\x0c\x00\x10\x08\x10\x1a\x10\x1b\x10\x22\x10\x0a\x0b\x10\x00\x10\x08\x10\x1a\x10\x1b\x10\x1d\x11\x03\x00\x1a\x10\x0a\x0b\x0e\x00\x10\x08\x10\x1a\x10\x1b\x10\x1e\x1b\x1a\x10\x0a\x0b\x13\x00\x02\x7f\x10\x08\x10\x0b\x10\x0c\x41\x00\x71\x0d\x00\x1a\x10\x0a\x0b\x0b\x15\x00\x02\x7f\x10\x08\x02\x7f\x10\x0b\x10\x0c\x0e\x01\x01\x00\x0b\x1a\x10\x0a\x0b\x0b");
+assert_return(() => $$.exports["i32_add"](), 258);
+assert_return(() => $$.exports["i64_add"](), 258);
+assert_return(() => $$.exports["i32_sub"](), 258);
+assert_return(() => $$.exports["i64_sub"](), 258);
+assert_return(() => $$.exports["i32_mul"](), 258);
+assert_return(() => $$.exports["i64_mul"](), 258);
+assert_return(() => $$.exports["i32_div_s"](), 258);
+assert_return(() => $$.exports["i64_div_s"](), 258);
+assert_return(() => $$.exports["i32_div_u"](), 258);
+assert_return(() => $$.exports["i64_div_u"](), 258);
+assert_return(() => $$.exports["i32_rem_s"](), 258);
+assert_return(() => $$.exports["i64_rem_s"](), 258);
+assert_return(() => $$.exports["i32_rem_u"](), 258);
+assert_return(() => $$.exports["i64_rem_u"](), 258);
+assert_return(() => $$.exports["i32_and"](), 258);
+assert_return(() => $$.exports["i64_and"](), 258);
+assert_return(() => $$.exports["i32_or"](), 258);
+assert_return(() => $$.exports["i64_or"](), 258);
+assert_return(() => $$.exports["i32_xor"](), 258);
+assert_return(() => $$.exports["i64_xor"](), 258);
+assert_return(() => $$.exports["i32_shl"](), 258);
+assert_return(() => $$.exports["i64_shl"](), 258);
+assert_return(() => $$.exports["i32_shr_u"](), 258);
+assert_return(() => $$.exports["i64_shr_u"](), 258);
+assert_return(() => $$.exports["i32_shr_s"](), 258);
+assert_return(() => $$.exports["i64_shr_s"](), 258);
+assert_return(() => $$.exports["i32_eq"](), 258);
+assert_return(() => $$.exports["i64_eq"](), 258);
+assert_return(() => $$.exports["i32_ne"](), 258);
+assert_return(() => $$.exports["i64_ne"](), 258);
+assert_return(() => $$.exports["i32_lt_s"](), 258);
+assert_return(() => $$.exports["i64_lt_s"](), 258);
+assert_return(() => $$.exports["i32_le_s"](), 258);
+assert_return(() => $$.exports["i64_le_s"](), 258);
+assert_return(() => $$.exports["i32_lt_u"](), 258);
+assert_return(() => $$.exports["i64_lt_u"](), 258);
+assert_return(() => $$.exports["i32_le_u"](), 258);
+assert_return(() => $$.exports["i64_le_u"](), 258);
+assert_return(() => $$.exports["i32_gt_s"](), 258);
+assert_return(() => $$.exports["i64_gt_s"](), 258);
+assert_return(() => $$.exports["i32_ge_s"](), 258);
+assert_return(() => $$.exports["i64_ge_s"](), 258);
+assert_return(() => $$.exports["i32_gt_u"](), 258);
+assert_return(() => $$.exports["i64_gt_u"](), 258);
+assert_return(() => $$.exports["i32_ge_u"](), 258);
+assert_return(() => $$.exports["i64_ge_u"](), 258);
+assert_return(() => $$.exports["i32_store"](), 258);
+assert_return(() => $$.exports["i64_store"](), 258);
+assert_return(() => $$.exports["i32_store8"](), 258);
+assert_return(() => $$.exports["i64_store8"](), 258);
+assert_return(() => $$.exports["i32_store16"](), 258);
+assert_return(() => $$.exports["i64_store16"](), 258);
+assert_return(() => $$.exports["i64_store32"](), 258);
+assert_return(() => $$.exports["i32_call"](), 258);
+assert_return(() => $$.exports["i64_call"](), 258);
+assert_return(() => $$.exports["i32_call_indirect"](), 66052);
+assert_return(() => $$.exports["i64_call_indirect"](), 66052);
+assert_return(() => $$.exports["i32_select"](), 66053);
+assert_return(() => $$.exports["i64_select"](), 66053);
+assert_return(() => $$.exports["f32_add"](), 258);
+assert_return(() => $$.exports["f64_add"](), 258);
+assert_return(() => $$.exports["f32_sub"](), 258);
+assert_return(() => $$.exports["f64_sub"](), 258);
+assert_return(() => $$.exports["f32_mul"](), 258);
+assert_return(() => $$.exports["f64_mul"](), 258);
+assert_return(() => $$.exports["f32_div"](), 258);
+assert_return(() => $$.exports["f64_div"](), 258);
+assert_return(() => $$.exports["f32_copysign"](), 258);
+assert_return(() => $$.exports["f64_copysign"](), 258);
+assert_return(() => $$.exports["f32_eq"](), 258);
+assert_return(() => $$.exports["f64_eq"](), 258);
+assert_return(() => $$.exports["f32_ne"](), 258);
+assert_return(() => $$.exports["f64_ne"](), 258);
+assert_return(() => $$.exports["f32_lt"](), 258);
+assert_return(() => $$.exports["f64_lt"](), 258);
+assert_return(() => $$.exports["f32_le"](), 258);
+assert_return(() => $$.exports["f64_le"](), 258);
+assert_return(() => $$.exports["f32_gt"](), 258);
+assert_return(() => $$.exports["f64_gt"](), 258);
+assert_return(() => $$.exports["f32_ge"](), 258);
+assert_return(() => $$.exports["f64_ge"](), 258);
+assert_return(() => $$.exports["f32_min"](), 258);
+assert_return(() => $$.exports["f64_min"](), 258);
+assert_return(() => $$.exports["f32_max"](), 258);
+assert_return(() => $$.exports["f64_max"](), 258);
+assert_return(() => $$.exports["f32_store"](), 258);
+assert_return(() => $$.exports["f64_store"](), 258);
+assert_return(() => $$.exports["f32_call"](), 258);
+assert_return(() => $$.exports["f64_call"](), 258);
+assert_return(() => $$.exports["f32_call_indirect"](), 66052);
+assert_return(() => $$.exports["f64_call_indirect"](), 66052);
+assert_return(() => $$.exports["f32_select"](), 66053);
+assert_return(() => $$.exports["f64_select"](), 66053);
+assert_return(() => $$.exports["br_if"](), 258);
+assert_return(() => $$.exports["br_table"](), 258);
diff --git a/JSTests/wasm/spec-tests/linking.wast.js b/JSTests/wasm/spec-tests/linking.wast.js
new file mode 100644
index 0000000..12f2132
--- /dev/null
+++ b/JSTests/wasm/spec-tests/linking.wast.js
@@ -0,0 +1,180 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+let $Mf = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x03\x02\x00\x00\x07\x08\x01\x04\x63\x61\x6c\x6c\x00\x00\x0a\x0b\x02\x04\x00\x10\x01\x0b\x04\x00\x41\x02\x0b");
+register("Mf", $Mf)
+let $Nf = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x0b\x01\x02\x4d\x66\x04\x63\x61\x6c\x6c\x00\x00\x03\x04\x03\x00\x00\x00\x07\x21\x03\x07\x4d\x66\x2e\x63\x61\x6c\x6c\x00\x00\x0c\x63\x61\x6c\x6c\x20\x4d\x66\x2e\x63\x61\x6c\x6c\x00\x01\x04\x63\x61\x6c\x6c\x00\x02\x0a\x10\x03\x04\x00\x10\x00\x0b\x04\x00\x10\x03\x0b\x04\x00\x41\x03\x0b");
+assert_return(() => $Mf.exports["call"](), 2);
+assert_return(() => $Nf.exports["Mf.call"](), 2);
+assert_return(() => $Nf.exports["call"](), 3);
+assert_return(() => $Nf.exports["call Mf.call"](), 2);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x07\x09\x01\x05\x70\x72\x69\x6e\x74\x00\x00");
+register("reexport_f", $$)
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7e\x00\x02\x14\x01\x0a\x72\x65\x65\x78\x70\x6f\x72\x74\x5f\x66\x05\x70\x72\x69\x6e\x74\x00\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x14\x01\x0a\x72\x65\x65\x78\x70\x6f\x72\x74\x5f\x66\x05\x70\x72\x69\x6e\x74\x00\x00");
+let $Mg = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x06\x06\x01\x7f\x00\x41\x2a\x0b\x07\x0e\x02\x04\x67\x6c\x6f\x62\x03\x00\x03\x67\x65\x74\x00\x00\x0a\x06\x01\x04\x00\x23\x00\x0b");
+register("Mg", $Mg)
+let $Ng = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x02\x15\x02\x02\x4d\x67\x04\x67\x6c\x6f\x62\x03\x7f\x00\x02\x4d\x67\x03\x67\x65\x74\x00\x00\x03\x02\x01\x00\x06\x06\x01\x7f\x00\x41\x2b\x0b\x07\x21\x04\x07\x4d\x67\x2e\x67\x6c\x6f\x62\x03\x00\x06\x4d\x67\x2e\x67\x65\x74\x00\x00\x04\x67\x6c\x6f\x62\x03\x01\x03\x67\x65\x74\x00\x01\x0a\x06\x01\x04\x00\x23\x01\x0b");
+assert_return(() => $Mg.exports["glob"], 42);
+assert_return(() => $Ng.exports["Mg.glob"], 42);
+assert_return(() => $Ng.exports["glob"], 43);
+assert_return(() => $Mg.exports["get"](), 42);
+assert_return(() => $Ng.exports["Mg.get"](), 42);
+assert_return(() => $Ng.exports["get"](), 43);
+let $Mt = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x03\x60\x00\x01\x7f\x60\x00\x00\x60\x01\x7f\x01\x7f\x03\x04\x03\x00\x00\x02\x04\x04\x01\x70\x00\x0a\x07\x12\x03\x03\x74\x61\x62\x01\x00\x01\x68\x00\x01\x04\x63\x61\x6c\x6c\x00\x02\x09\x0a\x01\x00\x41\x02\x0b\x04\x00\x00\x00\x00\x0a\x13\x03\x04\x00\x41\x04\x0b\x04\x00\x41\x7c\x0b\x07\x00\x20\x00\x11\x00\x00\x0b");
+register("Mt", $Mt)
+let $Nt = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x03\x60\x00\x00\x60\x00\x01\x7f\x60\x01\x7f\x01\x7f\x02\x12\x02\x02\x4d\x74\x04\x63\x61\x6c\x6c\x00\x02\x02\x4d\x74\x01\x68\x00\x01\x03\x04\x03\x01\x02\x02\x04\x05\x01\x70\x01\x05\x05\x07\x21\x03\x07\x4d\x74\x2e\x63\x61\x6c\x6c\x00\x00\x0c\x63\x61\x6c\x6c\x20\x4d\x74\x2e\x63\x61\x6c\x6c\x00\x03\x04\x63\x61\x6c\x6c\x00\x04\x09\x0b\x01\x00\x41\x00\x0b\x05\x02\x02\x02\x01\x00\x0a\x15\x03\x04\x00\x41\x05\x0b\x06\x00\x20\x00\x10\x00\x0b\x07\x00\x20\x00\x11\x01\x00\x0b");
+assert_return(() => $Mt.exports["call"](2), 4);
+assert_return(() => $Nt.exports["Mt.call"](2), 4);
+assert_return(() => $Nt.exports["call"](2), 5);
+assert_return(() => $Nt.exports["call Mt.call"](2), 4);
+assert_trap(() => $Mt.exports["call"](1));
+assert_trap(() => $Nt.exports["Mt.call"](1));
+assert_return(() => $Nt.exports["call"](1), 5);
+assert_trap(() => $Nt.exports["call Mt.call"](1));
+assert_trap(() => $Mt.exports["call"](0));
+assert_trap(() => $Nt.exports["Mt.call"](0));
+assert_return(() => $Nt.exports["call"](0), 5);
+assert_trap(() => $Nt.exports["call Mt.call"](0));
+assert_trap(() => $Mt.exports["call"](20));
+assert_trap(() => $Nt.exports["Mt.call"](20));
+assert_trap(() => $Nt.exports["call"](7));
+assert_trap(() => $Nt.exports["call Mt.call"](20));
+assert_return(() => $Nt.exports["call"](3), -4);
+assert_trap(() => $Nt.exports["call"](4));
+let $Ot = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0a\x02\x60\x00\x01\x7f\x60\x01\x7f\x01\x7f\x02\x13\x02\x02\x4d\x74\x01\x68\x00\x00\x02\x4d\x74\x03\x74\x61\x62\x01\x70\x00\x05\x03\x03\x02\x00\x01\x07\x08\x01\x04\x63\x61\x6c\x6c\x00\x02\x09\x08\x01\x00\x41\x01\x0b\x02\x01\x00\x0a\x0e\x02\x04\x00\x41\x06\x0b\x07\x00\x20\x00\x11\x00\x00\x0b");
+assert_return(() => $Mt.exports["call"](3), 4);
+assert_return(() => $Nt.exports["Mt.call"](3), 4);
+assert_return(() => $Nt.exports["call Mt.call"](3), 4);
+assert_return(() => $Ot.exports["call"](3), 4);
+assert_return(() => $Mt.exports["call"](2), -4);
+assert_return(() => $Nt.exports["Mt.call"](2), -4);
+assert_return(() => $Nt.exports["call"](2), 5);
+assert_return(() => $Nt.exports["call Mt.call"](2), -4);
+assert_return(() => $Ot.exports["call"](2), -4);
+assert_return(() => $Mt.exports["call"](1), 6);
+assert_return(() => $Nt.exports["Mt.call"](1), 6);
+assert_return(() => $Nt.exports["call"](1), 5);
+assert_return(() => $Nt.exports["call Mt.call"](1), 6);
+assert_return(() => $Ot.exports["call"](1), 6);
+assert_trap(() => $Mt.exports["call"](0));
+assert_trap(() => $Nt.exports["Mt.call"](0));
+assert_return(() => $Nt.exports["call"](0), 5);
+assert_trap(() => $Nt.exports["call Mt.call"](0));
+assert_trap(() => $Ot.exports["call"](0));
+assert_trap(() => $Ot.exports["call"](20));
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x00\x60\x00\x01\x7f\x02\x27\x03\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x02\x4d\x74\x03\x74\x61\x62\x01\x70\x00\x0a\x02\x4d\x74\x03\x6d\x65\x6d\x02\x00\x01\x03\x02\x01\x01\x09\x0d\x02\x00\x41\x07\x0b\x01\x01\x00\x41\x09\x0b\x01\x00\x0a\x07\x01\x05\x00\x41\x9a\x05\x0b");
+assert_trap(() => $Mt.exports["call"](7));
+let $Mm = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x05\x04\x01\x01\x01\x05\x07\x0e\x02\x03\x6d\x65\x6d\x02\x00\x04\x6c\x6f\x61\x64\x00\x00\x0a\x09\x01\x07\x00\x20\x00\x2d\x00\x00\x0b\x0b\x10\x01\x00\x41\x0a\x0b\x0a\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09");
+register("Mm", $Mm)
+let $Nm = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x0b\x01\x02\x4d\x6d\x04\x6c\x6f\x61\x64\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x07\x12\x02\x07\x4d\x6d\x2e\x6c\x6f\x61\x64\x00\x00\x04\x6c\x6f\x61\x64\x00\x01\x0a\x09\x01\x07\x00\x20\x00\x2d\x00\x00\x0b\x0b\x0c\x01\x00\x41\x0a\x0b\x06\xf0\xf1\xf2\xf3\xf4\xf5");
+assert_return(() => $Mm.exports["load"](12), 2);
+assert_return(() => $Nm.exports["Mm.load"](12), 2);
+assert_return(() => $Nm.exports["load"](12), 242);
+let $Om = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x0b\x01\x02\x4d\x6d\x03\x6d\x65\x6d\x02\x00\x01\x03\x02\x01\x00\x07\x08\x01\x04\x6c\x6f\x61\x64\x00\x00\x0a\x09\x01\x07\x00\x20\x00\x2d\x00\x00\x0b\x0b\x0e\x01\x00\x41\x05\x0b\x08\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7");
+assert_return(() => $Mm.exports["load"](12), 167);
+assert_return(() => $Nm.exports["Mm.load"](12), 167);
+assert_return(() => $Nm.exports["load"](12), 242);
+assert_return(() => $Om.exports["load"](12), 167);
+let $Pm = $$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x02\x0c\x01\x02\x4d\x6d\x03\x6d\x65\x6d\x02\x01\x01\x08\x03\x02\x01\x00\x07\x08\x01\x04\x67\x72\x6f\x77\x00\x00\x0a\x08\x01\x06\x00\x20\x00\x40\x00\x0b");
+assert_return(() => $Pm.exports["grow"](0), 1);
+assert_return(() => $Pm.exports["grow"](2), 1);
+assert_return(() => $Pm.exports["grow"](0), 3);
+assert_return(() => $Pm.exports["grow"](1), 3);
+assert_return(() => $Pm.exports["grow"](1), 4);
+assert_return(() => $Pm.exports["grow"](0), 5);
+assert_return(() => $Pm.exports["grow"](1), -1);
+assert_return(() => $Pm.exports["grow"](0), 5);
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x27\x03\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x02\x4d\x6d\x03\x6d\x65\x6d\x02\x00\x01\x02\x4d\x6d\x03\x74\x61\x62\x01\x70\x00\x00\x0b\x09\x01\x00\x41\x00\x0b\x03\x61\x62\x63");
+assert_return(() => $Mm.exports["load"](0), 0);
diff --git a/JSTests/wasm/spec-tests/loop.wast.js b/JSTests/wasm/spec-tests/loop.wast.js
new file mode 100644
index 0000000..acdd1d3
--- /dev/null
+++ b/JSTests/wasm/spec-tests/loop.wast.js
@@ -0,0 +1,143 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x13\x04\x60\x00\x00\x60\x00\x01\x7f\x60\x01\x7e\x01\x7e\x60\x02\x7d\x7d\x01\x7d\x03\x20\x1f\x00\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\xe9\x02\x1e\x05\x65\x6d\x70\x74\x79\x00\x01\x08\x73\x69\x6e\x67\x75\x6c\x61\x72\x00\x02\x05\x6d\x75\x6c\x74\x69\x00\x03\x06\x6e\x65\x73\x74\x65\x64\x00\x04\x04\x64\x65\x65\x70\x00\x05\x10\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x06\x11\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x07\x0f\x61\x73\x2d\x74\x65\x73\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x08\x12\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x09\x0a\x62\x72\x65\x61\x6b\x2d\x62\x61\x72\x65\x00\x0a\x0b\x62\x72\x65\x61\x6b\x2d\x76\x61\x6c\x75\x65\x00\x0b\x0e\x62\x72\x65\x61\x6b\x2d\x72\x65\x70\x65\x61\x74\x65\x64\x00\x0c\x0b\x62\x72\x65\x61\x6b\x2d\x69\x6e\x6e\x65\x72\x00\x0d\x0a\x63\x6f\x6e\x74\x2d\x69\x6e\x6e\x65\x72\x00\x0e\x07\x65\x66\x66\x65\x63\x74\x73\x00\x0f\x05\x77\x68\x69\x6c\x65\x00\x10\x03\x66\x6f\x72\x00\x11\x07\x6e\x65\x73\x74\x69\x6e\x67\x00\x12\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x13\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x14\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x15\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x16\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x17\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x18\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x19\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x1a\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x1b\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x1c\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x1d\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x1e\x0a\xf2\x07\x1f\x02\x00\x0b\x08\x00\x03\x40\x0b\x03\x40\x0b\x0b\x0b\x00\x03\x40\x01\x0b\x03\x7f\x41\x07\x0b\x0b\x18\x00\x03\x40\x10\x00\x10\x00\x10\x00\x10\x00\x0b\x03\x7f\x10\x00\x10\x00\x10\x00\x41\x08\x0b\x0b\x15\x00\x03\x7f\x03\x40\x10\x00\x02\x40\x0b\x01\x0b\x03\x7f\x10\x00\x41\x09\x0b\x0b\x0b\x8b\x01\x00\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x02\x7f\x10\x00\x41\x96\x01\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0a\x00\x03\x7f\x10\x00\x41\x0d\x0b\x68\x0b\x11\x00\x03\x7f\x10\x00\x41\x03\x0b\x03\x7f\x10\x00\x41\x04\x0b\x6c\x0b\x0a\x00\x03\x7f\x10\x00\x41\x0d\x0b\x45\x0b\x17\x00\x03\x7d\x10\x00\x43\x00\x00\x40\x40\x0b\x03\x7d\x10\x00\x43\x00\x00\x40\x40\x0b\x5e\x0b\x34\x00\x02\x40\x03\x40\x0c\x01\x0c\x00\x00\x0b\x0b\x02\x40\x03\x40\x41\x01\x0d\x01\x00\x0b\x0b\x02\x40\x03\x40\x41\x00\x0e\x00\x01\x00\x0b\x0b\x02\x40\x03\x40\x41\x01\x0e\x02\x01\x01\x01\x00\x0b\x0b\x41\x13\x0b\x10\x00\x02\x7f\x03\x7f\x41\x12\x0c\x01\x0c\x00\x41\x13\x0b\x0b\x0b\x34\x00\x02\x7f\x03\x7f\x41\x12\x0c\x01\x41\x13\x0c\x01\x41\x14\x41\x00\x0d\x01\x1a\x41\x14\x41\x01\x0d\x01\x1a\x41\x15\x0c\x01\x41\x16\x41\x00\x0e\x00\x01\x41\x17\x41\x01\x0e\x02\x01\x01\x01\x41\x15\x0b\x0b\x0b\x66\x01\x01\x7f\x41\x00\x21\x00\x20\x00\x02\x7f\x03\x7f\x02\x7f\x41\x01\x0c\x02\x0b\x0b\x0b\x6a\x21\x00\x20\x00\x02\x7f\x03\x7f\x03\x7f\x41\x02\x0c\x02\x0b\x0b\x0b\x6a\x21\x00\x20\x00\x02\x7f\x03\x7f\x02\x7f\x03\x7f\x41\x04\x0c\x01\x0b\x0b\x0b\x0b\x6a\x21\x00\x20\x00\x02\x7f\x03\x7f\x41\x08\x0c\x01\x68\x0b\x0b\x6a\x21\x00\x20\x00\x02\x7f\x03\x7f\x03\x7f\x41\x10\x0c\x02\x0b\x68\x0b\x0b\x6a\x21\x00\x20\x00\x0b\x30\x01\x01\x7f\x41\x00\x21\x00\x20\x00\x03\x7f\x03\x7f\x0c\x01\x0b\x0b\x6a\x21\x00\x20\x00\x03\x7f\x0c\x00\x68\x0b\x6a\x21\x00\x20\x00\x03\x7f\x03\x7f\x0c\x01\x0b\x68\x0b\x6a\x21\x00\x20\x00\x0b\x32\x01\x01\x7f\x02\x40\x03\x40\x41\x01\x21\x00\x20\x00\x41\x03\x6c\x21\x00\x20\x00\x41\x05\x6b\x21\x00\x20\x00\x41\x07\x6c\x21\x00\x0c\x01\x20\x00\x41\xe4\x00\x6c\x21\x00\x0b\x0b\x20\x00\x41\x72\x46\x0b\x25\x01\x01\x7e\x42\x01\x21\x01\x02\x40\x03\x40\x20\x00\x50\x0d\x01\x20\x00\x20\x01\x7e\x21\x01\x20\x00\x42\x01\x7d\x21\x00\x0c\x00\x0b\x0b\x20\x01\x0b\x2b\x01\x02\x7e\x42\x01\x21\x01\x42\x02\x21\x02\x02\x40\x03\x40\x20\x02\x20\x00\x56\x0d\x01\x20\x01\x20\x02\x7e\x21\x01\x20\x02\x42\x01\x7c\x21\x02\x0c\x00\x0b\x0b\x20\x01\x0b\x5a\x01\x02\x7d\x02\x40\x03\x40\x20\x00\x43\x00\x00\x00\x00\x5b\x0d\x01\x20\x01\x21\x02\x02\x40\x03\x40\x20\x02\x43\x00\x00\x00\x00\x5b\x0d\x01\x20\x02\x43\x00\x00\x00\x00\x5d\x0d\x03\x20\x03\x20\x02\x92\x21\x03\x20\x02\x43\x00\x00\x00\x40\x93\x21\x02\x0c\x00\x0b\x0b\x20\x03\x20\x00\x95\x21\x03\x20\x00\x43\x00\x00\x80\x3f\x93\x21\x00\x0c\x00\x0b\x0b\x20\x03\x0b\x11\x00\x02\x40\x42\x00\x10\x10\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x10\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x02\x10\x10\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x03\x10\x10\x42\x06\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x05\x10\x10\x42\xf8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x14\x10\x10\x42\x80\x80\xd0\x95\xc8\xef\xd9\xe1\x21\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x00\x10\x11\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x11\x42\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x02\x10\x11\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x03\x10\x11\x42\x06\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x05\x10\x11\x42\xf8\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x14\x10\x11\x42\x80\x80\xd0\x95\xc8\xef\xd9\xe1\x21\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["empty"]());
+assert_return(() => $$.exports["singular"](), 7);
+assert_return(() => $$.exports["multi"](), 8);
+assert_return(() => $$.exports["nested"](), 9);
+assert_return(() => $$.exports["deep"](), 150);
+assert_return(() => $$.exports["as-unary-operand"](), 0);
+assert_return(() => $$.exports["as-binary-operand"](), 12);
+assert_return(() => $$.exports["as-test-operand"](), 0);
+assert_return(() => $$.exports["as-compare-operand"](), 0);
+assert_return(() => $$.exports["break-bare"](), 19);
+assert_return(() => $$.exports["break-value"](), 18);
+assert_return(() => $$.exports["break-repeated"](), 18);
+assert_return(() => $$.exports["break-inner"](), 31);
+assert_return(() => $$.exports["effects"](), 1);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["nesting"](f32(0.0), f32(7.0)), f32(0.0));
+assert_return(() => $$.exports["nesting"](f32(7.0), f32(0.0)), f32(0.0));
+assert_return(() => $$.exports["nesting"](f32(1.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["nesting"](f32(1.0), f32(2.0)), f32(2.0));
+assert_return(() => $$.exports["nesting"](f32(1.0), f32(3.0)), f32(4.0));
+assert_return(() => $$.exports["nesting"](f32(1.0), f32(4.0)), f32(6.0));
+assert_return(() => $$.exports["nesting"](f32(1.0), f32(100.0)), f32(2550.0));
+assert_return(() => $$.exports["nesting"](f32(1.0), f32(101.0)), f32(2601.0));
+assert_return(() => $$.exports["nesting"](f32(2.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["nesting"](f32(3.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["nesting"](f32(10.0), f32(1.0)), f32(1.0));
+assert_return(() => $$.exports["nesting"](f32(2.0), f32(2.0)), f32(3.0));
+assert_return(() => $$.exports["nesting"](f32(2.0), f32(3.0)), f32(4.0));
+assert_return(() => $$.exports["nesting"](f32(7.0), f32(4.0)), f32(10.3095235825));
+assert_return(() => $$.exports["nesting"](f32(7.0), f32(100.0)), f32(4381.54785156));
+assert_return(() => $$.exports["nesting"](f32(7.0), f32(101.0)), f32(2601.0));
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x03\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x03\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x03\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x03\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x03\x40\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x03\x40\x43\x00\x00\x00\x00\x0b\x0b");
diff --git a/JSTests/wasm/spec-tests/memory.wast.js b/JSTests/wasm/spec-tests/memory.wast.js
new file mode 100644
index 0000000..b140c7b
--- /dev/null
+++ b/JSTests/wasm/spec-tests/memory.wast.js
@@ -0,0 +1,178 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x01");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x05\x01\x01\x01\x80\x02");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x06\x01\x01\x00\x80\x80\x04");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x00\x0b\x06\x01\x00\x41\x00\x0b\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x00\x0b\x06\x01\x00\x41\x00\x0b\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x01\x0b\x07\x01\x00\x41\x00\x0b\x01\x61");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x02\x0b\x0f\x02\x00\x41\x00\x0b\x01\x61\x00\x41\xff\xff\x03\x0b\x01\x62");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x02\x0b\x13\x03\x00\x41\x00\x0b\x01\x61\x00\x41\x01\x0b\x01\x62\x00\x41\x02\x0b\x01\x63");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00\x05\x03\x01\x00\x01\x0b\x07\x01\x00\x23\x00\x0b\x01\x61");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00\x05\x03\x01\x00\x01\x0b\x07\x01\x00\x23\x00\x0b\x01\x61");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x05\x02\x00\x00\x00\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x6d\x65\x6d\x6f\x72\x79\x02\x00\x00\x05\x03\x01\x00\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x05\x04\x01\x01\x00\x00\x07\x0b\x01\x07\x6d\x65\x6d\x73\x69\x7a\x65\x00\x00\x0a\x06\x01\x04\x00\x3f\x00\x0b\x0b\x06\x01\x00\x41\x00\x0b\x00");
+assert_return(() => $$.exports["memsize"](), 0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x05\x04\x01\x01\x00\x00\x07\x0b\x01\x07\x6d\x65\x6d\x73\x69\x7a\x65\x00\x00\x0a\x06\x01\x04\x00\x3f\x00\x0b\x0b\x06\x01\x00\x41\x00\x0b\x00");
+assert_return(() => $$.exports["memsize"](), 0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x05\x04\x01\x01\x01\x01\x07\x0b\x01\x07\x6d\x65\x6d\x73\x69\x7a\x65\x00\x00\x0a\x06\x01\x04\x00\x3f\x00\x0b\x0b\x07\x01\x00\x41\x00\x0b\x01\x78");
+assert_return(() => $$.exports["memsize"](), 1);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x41\x00\x2a\x02\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x41\x00\x38\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x41\x00\x2c\x00\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x41\x00\x41\x00\x3a\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x3f\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x41\x00\x40\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x01\x0b\x06\x01\x00\x42\x00\x0b\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x01\x0b\x06\x01\x00\x41\x00\x0b\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x03\x01\x00\x01\x0b\x05\x01\x00\x01\x0b\x00");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x00\x0b\x07\x01\x00\x41\x00\x0b\x01\x61");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x02\x0b\x0f\x02\x00\x41\x00\x0b\x01\x61\x00\x41\x80\x80\x06\x0b\x01\x62");
+assert_unlinkable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x02\x14\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x06\x67\x6c\x6f\x62\x61\x6c\x03\x7f\x00\x05\x03\x01\x00\x00\x0b\x07\x01\x00\x23\x00\x0b\x01\x61");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x00\x0b\x06\x01\x00\x41\x00\x0b\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x00\x00\x0b\x06\x01\x00\x41\x01\x0b\x00");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x02\x0b\x11\x02\x00\x41\x00\x0b\x03\x61\x62\x63\x00\x41\x00\x0b\x03\x64\x65\x66");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x02\x0b\x0f\x02\x00\x41\x03\x0b\x02\x61\x62\x00\x41\x00\x0b\x02\x64\x65");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x02\x0b\x13\x03\x00\x41\x00\x0b\x01\x61\x00\x41\x02\x0b\x01\x62\x00\x41\x01\x0b\x01\x63");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x04\x01\x01\x01\x00");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x05\x01\x00\x81\x80\x04");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x07\x01\x00\x80\x80\x80\x80\x08");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x07\x01\x00\xff\xff\xff\xff\x0f");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x06\x01\x01\x00\x81\x80\x04");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x08\x01\x01\x00\x80\x80\x80\x80\x08");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x05\x08\x01\x01\x00\xff\xff\xff\xff\x0f");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x2d\x00\x00\x1a\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x2f\x01\x00\x1a\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x28\x02\x00\x1a\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x2a\x02\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x29\x04\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x29\x05\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x28\x03\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x2f\x02\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0a\x01\x08\x00\x41\x00\x2d\x01\x00\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0b\x01\x09\x00\x41\x00\x41\x00\x3a\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x09\x01\x07\x00\x41\x00\x2f\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x09\x01\x07\x00\x41\x00\x2d\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x00\x0a\x0b\x01\x09\x00\x41\x00\x41\x00\x3a\x01\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x16\x05\x60\x00\x01\x7f\x60\x00\x01\x7c\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x1b\x1a\x00\x00\x00\x01\x02\x02\x02\x02\x03\x03\x03\x03\x03\x03\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x05\x03\x01\x00\x01\x07\xbd\x02\x1a\x04\x64\x61\x74\x61\x00\x00\x07\x61\x6c\x69\x67\x6e\x65\x64\x00\x01\x09\x75\x6e\x61\x6c\x69\x67\x6e\x65\x64\x00\x02\x04\x63\x61\x73\x74\x00\x03\x0b\x69\x33\x32\x5f\x6c\x6f\x61\x64\x38\x5f\x73\x00\x04\x0b\x69\x33\x32\x5f\x6c\x6f\x61\x64\x38\x5f\x75\x00\x05\x0c\x69\x33\x32\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x73\x00\x06\x0c\x69\x33\x32\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x75\x00\x07\x0b\x69\x36\x34\x5f\x6c\x6f\x61\x64\x38\x5f\x73\x00\x08\x0b\x69\x36\x34\x5f\x6c\x6f\x61\x64\x38\x5f\x75\x00\x09\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x73\x00\x0a\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x31\x36\x5f\x75\x00\x0b\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x33\x32\x5f\x73\x00\x0c\x0c\x69\x36\x34\x5f\x6c\x6f\x61\x64\x33\x32\x5f\x75\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x0f\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x10\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x11\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x12\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x13\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x14\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x15\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x16\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x17\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x18\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x19\x0a\x9a\x05\x1a\x4e\x00\x41\x00\x2d\x00\x00\x41\xc1\x00\x46\x41\x03\x2d\x00\x00\x41\xa7\x01\x46\x71\x41\x06\x2d\x00\x00\x41\x00\x46\x41\x13\x2d\x00\x00\x41\x00\x46\x71\x71\x41\x14\x2d\x00\x00\x41\xd7\x00\x46\x41\x17\x2d\x00\x00\x41\xcd\x00\x46\x71\x41\x18\x2d\x00\x00\x41\x00\x46\x41\xff\x07\x2d\x00\x00\x41\x00\x46\x71\x71\x71\x0b\x43\x01\x03\x7f\x41\x0a\x21\x00\x02\x40\x03\x40\x20\x00\x41\x00\x46\x04\x40\x0c\x02\x0b\x20\x00\x41\x04\x6c\x21\x02\x20\x02\x20\x00\x36\x02\x00\x20\x02\x28\x02\x00\x21\x01\x20\x00\x20\x01\x47\x04\x40\x41\x00\x0f\x0b\x20\x00\x41\x01\x6b\x21\x00\x0c\x00\x0b\x0b\x41\x01\x0b\x43\x02\x01\x7f\x02\x7c\x41\x0a\x21\x00\x02\x40\x03\x40\x20\x00\x41\x00\x46\x04\x40\x0c\x02\x0b\x20\x00\xb7\x21\x02\x20\x00\x20\x02\x39\x00\x00\x20\x00\x2b\x00\x00\x21\x01\x20\x02\x20\x01\x62\x04\x40\x41\x00\x0f\x0b\x20\x00\x41\x01\x6b\x21\x00\x0c\x00\x0b\x0b\x41\x01\x0b\x38\x00\x41\x08\x42\xc7\x9f\x7f\x37\x03\x00\x41\x08\x2b\x03\x00\x42\xc7\x9f\x7f\xbf\x61\x04\x40\x44\x00\x00\x00\x00\x00\x00\x00\x00\x0f\x0b\x41\x09\x42\x00\x37\x00\x00\x41\x0f\x41\xc5\x80\x01\x3b\x00\x00\x41\x09\x2b\x00\x00\x0b\x0e\x00\x41\x08\x20\x00\x3a\x00\x00\x41\x08\x2c\x00\x00\x0b\x0e\x00\x41\x08\x20\x00\x3a\x00\x00\x41\x08\x2d\x00\x00\x0b\x0e\x00\x41\x08\x20\x00\x3b\x01\x00\x41\x08\x2e\x01\x00\x0b\x0e\x00\x41\x08\x20\x00\x3b\x01\x00\x41\x08\x2f\x01\x00\x0b\x0e\x00\x41\x08\x20\x00\x3c\x00\x00\x41\x08\x30\x00\x00\x0b\x0e\x00\x41\x08\x20\x00\x3c\x00\x00\x41\x08\x31\x00\x00\x0b\x0e\x00\x41\x08\x20\x00\x3d\x01\x00\x41\x08\x32\x01\x00\x0b\x0e\x00\x41\x08\x20\x00\x3d\x01\x00\x41\x08\x33\x01\x00\x0b\x0e\x00\x41\x08\x20\x00\x3e\x02\x00\x41\x08\x34\x02\x00\x0b\x0e\x00\x41\x08\x20\x00\x3e\x02\x00\x41\x08\x35\x02\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x08\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x7f\x10\x09\x42\xff\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x0a\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\x7f\x10\x0b\x42\xff\xff\x03\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x7f\x10\x0c\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x7f\x10\x0d\x42\xff\xff\xff\xff\x0f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\xe4\x00\x10\x08\x42\xe4\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x13\x00\x02\x40\x42\xc8\x01\x10\x09\x42\xc8\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xa0\x9c\x01\x10\x0a\x42\xa0\x9c\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xc0\xb8\x02\x10\x0b\x42\xc0\xb8\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xa0\x9c\x01\x10\x0c\x42\xa0\x9c\x01\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\xc0\xb8\x02\x10\x0d\x42\xc0\xb8\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0b\x14\x02\x00\x41\x00\x0b\x05\x41\x42\x43\xa7\x44\x00\x41\x14\x0b\x04\x57\x41\x53\x4d");
+assert_return(() => $$.exports["data"](), 1);
+assert_return(() => $$.exports["aligned"](), 1);
+assert_return(() => $$.exports["unaligned"](), 1);
+assert_return(() => $$.exports["cast"](), 42.0);
+assert_return(() => $$.exports["i32_load8_s"](-1), -1);
+assert_return(() => $$.exports["i32_load8_u"](-1), 255);
+assert_return(() => $$.exports["i32_load16_s"](-1), -1);
+assert_return(() => $$.exports["i32_load16_u"](-1), 65535);
+assert_return(() => $$.exports["i32_load8_s"](100), 100);
+assert_return(() => $$.exports["i32_load8_u"](200), 200);
+assert_return(() => $$.exports["i32_load16_s"](20000), 20000);
+assert_return(() => $$.exports["i32_load16_u"](40000), 40000);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
diff --git a/JSTests/wasm/spec-tests/memory_redundancy.wast.js b/JSTests/wasm/spec-tests/memory_redundancy.wast.js
new file mode 100644
index 0000000..ccdbc26
--- /dev/null
+++ b/JSTests/wasm/spec-tests/memory_redundancy.wast.js
@@ -0,0 +1,100 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0c\x03\x60\x00\x00\x60\x00\x01\x7f\x60\x00\x01\x7d\x03\x05\x04\x00\x01\x01\x02\x05\x04\x01\x01\x01\x01\x07\x50\x04\x0f\x7a\x65\x72\x6f\x5f\x65\x76\x65\x72\x79\x74\x68\x69\x6e\x67\x00\x00\x12\x74\x65\x73\x74\x5f\x73\x74\x6f\x72\x65\x5f\x74\x6f\x5f\x6c\x6f\x61\x64\x00\x01\x13\x74\x65\x73\x74\x5f\x72\x65\x64\x75\x6e\x64\x61\x6e\x74\x5f\x6c\x6f\x61\x64\x00\x02\x0f\x74\x65\x73\x74\x5f\x64\x65\x61\x64\x5f\x73\x74\x6f\x72\x65\x00\x03\x0a\x7c\x04\x1e\x00\x41\x00\x41\x00\x36\x02\x00\x41\x04\x41\x00\x36\x02\x00\x41\x08\x41\x00\x36\x02\x00\x41\x0c\x41\x00\x36\x02\x00\x0b\x18\x00\x41\x08\x41\x00\x36\x02\x00\x41\x05\x43\x00\x00\x00\x80\x38\x02\x00\x41\x08\x28\x02\x00\x0b\x22\x01\x02\x7f\x41\x08\x28\x02\x00\x21\x00\x41\x05\x41\x80\x80\x80\x80\x78\x36\x02\x00\x41\x08\x28\x02\x00\x21\x01\x20\x00\x20\x01\x6a\x0b\x1f\x01\x01\x7d\x41\x08\x41\xa3\xc6\x8c\x99\x02\x36\x02\x00\x41\x0b\x2a\x02\x00\x21\x00\x41\x08\x41\x00\x36\x02\x00\x20\x00\x0b");
+assert_return(() => $$.exports["test_store_to_load"](), 128);
+$$.exports["zero_everything"]();
+assert_return(() => $$.exports["test_redundant_load"](), 128);
+$$.exports["zero_everything"]();
+assert_return(() => $$.exports["test_dead_store"](), f32(4.90454462514e-44));
diff --git a/JSTests/wasm/spec-tests/memory_trap.wast.js b/JSTests/wasm/spec-tests/memory_trap.wast.js
new file mode 100644
index 0000000..2e4fd2e
--- /dev/null
+++ b/JSTests/wasm/spec-tests/memory_trap.wast.js
@@ -0,0 +1,108 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0f\x03\x60\x00\x01\x7f\x60\x02\x7f\x7f\x00\x60\x01\x7f\x01\x7f\x03\x05\x04\x00\x01\x02\x02\x05\x03\x01\x00\x01\x07\x1e\x03\x05\x73\x74\x6f\x72\x65\x00\x01\x04\x6c\x6f\x61\x64\x00\x02\x0b\x67\x72\x6f\x77\x5f\x6d\x65\x6d\x6f\x72\x79\x00\x03\x0a\x2a\x04\x09\x00\x3f\x00\x41\x80\x80\x04\x6c\x0b\x0c\x00\x10\x00\x20\x00\x6a\x20\x01\x36\x02\x00\x0b\x0a\x00\x10\x00\x20\x00\x6a\x28\x02\x00\x0b\x06\x00\x20\x00\x40\x00\x0b");
+assert_return(() => $$.exports["store"](-4, 42));
+assert_return(() => $$.exports["load"](-4), 42);
+assert_trap(() => $$.exports["store"](-3, 13));
+assert_trap(() => $$.exports["load"](-3));
+assert_trap(() => $$.exports["store"](-2, 13));
+assert_trap(() => $$.exports["load"](-2));
+assert_trap(() => $$.exports["store"](-1, 13));
+assert_trap(() => $$.exports["load"](-1));
+assert_trap(() => $$.exports["store"](0, 13));
+assert_trap(() => $$.exports["load"](0));
+assert_trap(() => $$.exports["store"](-2147483648, 13));
+assert_trap(() => $$.exports["load"](-2147483648));
+assert_return(() => $$.exports["grow_memory"](65537), -1);
diff --git a/JSTests/wasm/spec-tests/names.wast.js b/JSTests/wasm/spec-tests/names.wast.js
new file mode 100644
index 0000000..1a90457
--- /dev/null
+++ b/JSTests/wasm/spec-tests/names.wast.js
@@ -0,0 +1,113 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x07\x07\x01\x03\x66\x6f\x6f\x00\x00\x0a\x06\x01\x04\x00\x41\x00\x0b");
+assert_return(() => $$.exports["foo"](), 0);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x07\x07\x01\x03\x66\x6f\x6f\x00\x00\x0a\x06\x01\x04\x00\x41\x01\x0b");
+assert_return(() => $$.exports["foo"](), 1);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x03\x0d\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\x6c\x0c\x00\x00\x00\x01\x30\x00\x01\x01\x5f\x00\x02\x01\x24\x00\x03\x01\x40\x00\x04\x21\x7e\x21\x40\x23\x24\x25\x5e\x26\x2a\x28\x29\x5f\x2b\x60\x2d\x3d\x7b\x7d\x7c\x5b\x5d\x5c\x3a\x22\x3b\x27\x3c\x3e\x3f\x2c\x2e\x2f\x20\x00\x05\x03\x4e\x61\x4e\x00\x06\x08\x49\x6e\x66\x69\x6e\x69\x74\x79\x00\x07\x02\x69\x66\x00\x08\x06\x6d\x61\x6c\x6c\x6f\x63\x00\x09\x07\x5f\x6d\x61\x6c\x6c\x6f\x63\x00\x0a\x08\x5f\x5f\x6d\x61\x6c\x6c\x6f\x63\x00\x0b\x0a\x61\x0c\x07\x00\x43\x00\x80\xc8\x40\x0b\x07\x00\x43\x00\x80\xcb\x40\x0b\x07\x00\x43\x00\x00\xcc\x40\x0b\x07\x00\x43\x00\x80\xcc\x40\x0b\x07\x00\x43\x00\x00\x00\x41\x0b\x07\x00\x43\x00\x00\xcb\x40\x0b\x07\x00\x43\x00\x40\x00\x41\x0b\x07\x00\x43\x00\x80\x00\x41\x0b\x07\x00\x43\x00\xc0\x00\x41\x0b\x07\x00\x43\x00\x00\xc9\x40\x0b\x07\x00\x43\x00\x80\xc9\x40\x0b\x07\x00\x43\x00\x00\xca\x40\x0b");
+assert_return(() => $$.exports[""](), f32(6.265625));
+assert_return(() => $$.exports["malloc"](), f32(6.28125));
+assert_return(() => $$.exports["_malloc"](), f32(6.296875));
+assert_return(() => $$.exports["__malloc"](), f32(6.3125));
+assert_return(() => $$.exports["~!@#$%^&*()_+`-={}|[]\x5c:\x22;'<>?,./ "](), f32(6.34375));
+assert_return(() => $$.exports["0"](), f32(6.359375));
+assert_return(() => $$.exports["_"](), f32(6.375));
+assert_return(() => $$.exports["$"](), f32(6.390625));
+assert_return(() => $$.exports["@"](), f32(8.0));
+assert_return(() => $$.exports["NaN"](), f32(8.015625));
+assert_return(() => $$.exports["Infinity"](), f32(8.03125));
+assert_return(() => $$.exports["if"](), f32(8.046875));
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0a\x02\x60\x01\x7f\x00\x60\x02\x7f\x7f\x00\x02\x23\x02\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x03\x02\x01\x01\x07\x0b\x01\x07\x70\x72\x69\x6e\x74\x33\x32\x00\x02\x0a\x0c\x01\x0a\x00\x20\x00\x10\x00\x20\x01\x10\x01\x0b");
+$$.exports["print32"](42, 123);
diff --git a/JSTests/wasm/spec-tests/nop.wast.js b/JSTests/wasm/spec-tests/nop.wast.js
new file mode 100644
index 0000000..e589bc3
--- /dev/null
+++ b/JSTests/wasm/spec-tests/nop.wast.js
@@ -0,0 +1,149 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x18\x05\x60\x00\x00\x60\x03\x7f\x7f\x7f\x01\x7f\x60\x00\x01\x7f\x60\x01\x7f\x00\x60\x01\x7f\x01\x7f\x03\x32\x31\x00\x01\x02\x02\x02\x02\x03\x03\x04\x04\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x03\x03\x03\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x01\x01\x01\x01\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x05\x03\x01\x00\x01\x07\xd1\x06\x2f\x0d\x61\x73\x2d\x66\x75\x6e\x63\x2d\x66\x69\x72\x73\x74\x00\x02\x0b\x61\x73\x2d\x66\x75\x6e\x63\x2d\x6d\x69\x64\x00\x03\x0c\x61\x73\x2d\x66\x75\x6e\x63\x2d\x6c\x61\x73\x74\x00\x04\x12\x61\x73\x2d\x66\x75\x6e\x63\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x05\x0c\x61\x73\x2d\x64\x72\x6f\x70\x2d\x6c\x61\x73\x74\x00\x06\x12\x61\x73\x2d\x64\x72\x6f\x70\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x07\x0e\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x6d\x69\x64\x31\x00\x08\x0e\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x6d\x69\x64\x32\x00\x09\x0e\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x6c\x61\x73\x74\x00\x0a\x14\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x0b\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x66\x69\x72\x73\x74\x00\x0c\x0c\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6d\x69\x64\x00\x0d\x0d\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6c\x61\x73\x74\x00\x0e\x13\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x0f\x0d\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x66\x69\x72\x73\x74\x00\x10\x0b\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6d\x69\x64\x00\x11\x0c\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6c\x61\x73\x74\x00\x12\x12\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x13\x0f\x61\x73\x2d\x69\x66\x2d\x63\x6f\x6e\x64\x69\x74\x69\x6f\x6e\x00\x14\x0a\x61\x73\x2d\x69\x66\x2d\x74\x68\x65\x6e\x00\x15\x0a\x61\x73\x2d\x69\x66\x2d\x65\x6c\x73\x65\x00\x16\x0a\x61\x73\x2d\x62\x72\x2d\x6c\x61\x73\x74\x00\x17\x10\x61\x73\x2d\x62\x72\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x18\x0c\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x6d\x69\x64\x00\x19\x0d\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x6c\x61\x73\x74\x00\x1a\x13\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x1b\x0f\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x6d\x69\x64\x00\x1c\x10\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x6c\x61\x73\x74\x00\x1d\x16\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x1e\x0e\x61\x73\x2d\x72\x65\x74\x75\x72\x6e\x2d\x6c\x61\x73\x74\x00\x1f\x14\x61\x73\x2d\x72\x65\x74\x75\x72\x6e\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x20\x0c\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6d\x69\x64\x31\x00\x21\x0c\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6d\x69\x64\x32\x00\x22\x0c\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6c\x61\x73\x74\x00\x23\x12\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x24\x0d\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x6c\x61\x73\x74\x00\x25\x13\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x26\x0d\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6d\x69\x64\x00\x27\x0e\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6c\x61\x73\x74\x00\x28\x14\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x29\x0c\x61\x73\x2d\x74\x65\x73\x74\x2d\x6c\x61\x73\x74\x00\x2a\x12\x61\x73\x2d\x74\x65\x73\x74\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x2b\x0e\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6d\x69\x64\x00\x2c\x0f\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6c\x61\x73\x74\x00\x2d\x15\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x2e\x13\x61\x73\x2d\x67\x72\x6f\x77\x5f\x6d\x65\x6d\x6f\x72\x79\x2d\x6c\x61\x73\x74\x00\x2f\x19\x61\x73\x2d\x67\x72\x6f\x77\x5f\x6d\x65\x6d\x6f\x72\x79\x2d\x65\x76\x65\x72\x79\x77\x68\x65\x72\x65\x00\x30\x0a\xa6\x04\x31\x02\x00\x0b\x0a\x00\x20\x00\x20\x01\x20\x02\x6b\x6a\x0b\x05\x00\x01\x41\x01\x0b\x07\x00\x10\x00\x01\x41\x02\x0b\x07\x00\x10\x00\x41\x03\x01\x0b\x0b\x00\x01\x01\x10\x00\x01\x41\x04\x01\x01\x0b\x06\x00\x20\x00\x01\x1a\x0b\x09\x00\x01\x01\x20\x00\x01\x01\x1a\x0b\x0a\x00\x20\x00\x01\x20\x00\x20\x00\x1b\x0b\x0a\x00\x20\x00\x20\x00\x01\x20\x00\x1b\x0b\x0a\x00\x20\x00\x20\x00\x20\x00\x01\x1b\x0b\x10\x00\x01\x20\x00\x01\x01\x20\x00\x01\x01\x20\x00\x01\x01\x1b\x0b\x08\x00\x02\x7f\x01\x41\x02\x0b\x0b\x0a\x00\x02\x7f\x10\x00\x01\x41\x02\x0b\x0b\x0b\x00\x02\x7f\x01\x10\x00\x41\x03\x01\x0b\x0b\x0e\x00\x02\x7f\x01\x01\x10\x00\x01\x41\x04\x01\x01\x0b\x0b\x08\x00\x03\x7f\x01\x41\x02\x0b\x0b\x0a\x00\x03\x7f\x10\x00\x01\x41\x02\x0b\x0b\x0a\x00\x03\x7f\x10\x00\x41\x03\x01\x0b\x0b\x0e\x00\x03\x7f\x01\x01\x10\x00\x01\x41\x04\x01\x01\x0b\x0b\x0a\x00\x20\x00\x01\x04\x40\x10\x00\x0b\x0b\x0b\x00\x20\x00\x04\x40\x01\x05\x10\x00\x0b\x0b\x0b\x00\x20\x00\x04\x40\x10\x00\x05\x01\x0b\x0b\x0a\x00\x02\x7f\x20\x00\x01\x0c\x00\x0b\x0b\x0d\x00\x02\x7f\x01\x01\x20\x00\x01\x01\x0c\x00\x0b\x0b\x0c\x00\x02\x7f\x20\x00\x01\x20\x00\x0d\x00\x0b\x0b\x0c\x00\x02\x7f\x20\x00\x20\x00\x01\x0d\x00\x0b\x0b\x11\x00\x02\x7f\x01\x01\x20\x00\x01\x01\x20\x00\x01\x01\x0d\x00\x0b\x0b\x0e\x00\x02\x7f\x20\x00\x01\x20\x00\x0e\x01\x00\x00\x0b\x0b\x0e\x00\x02\x7f\x20\x00\x20\x00\x01\x0e\x01\x00\x00\x0b\x0b\x13\x00\x02\x7f\x01\x01\x20\x00\x01\x01\x20\x00\x01\x01\x0e\x01\x00\x00\x0b\x0b\x06\x00\x20\x00\x01\x0f\x0b\x09\x00\x01\x01\x20\x00\x01\x01\x0f\x0b\x0b\x00\x20\x00\x01\x20\x01\x20\x02\x10\x01\x0b\x0b\x00\x20\x00\x20\x01\x01\x20\x02\x10\x01\x0b\x0b\x00\x20\x00\x20\x01\x20\x02\x01\x10\x01\x0b\x12\x00\x01\x01\x20\x00\x01\x01\x20\x01\x01\x01\x20\x02\x01\x01\x10\x01\x0b\x06\x00\x20\x00\x01\x68\x0b\x09\x00\x01\x01\x20\x00\x01\x01\x68\x0b\x08\x00\x20\x00\x01\x20\x00\x6a\x0b\x08\x00\x20\x00\x20\x00\x01\x6a\x0b\x0c\x00\x01\x20\x00\x01\x01\x20\x00\x01\x01\x6a\x0b\x06\x00\x20\x00\x01\x45\x0b\x09\x00\x01\x01\x20\x00\x01\x01\x45\x0b\x08\x00\x20\x00\x01\x20\x00\x47\x0b\x08\x00\x20\x00\x20\x00\x01\x49\x0b\x0c\x00\x01\x20\x00\x01\x01\x20\x00\x01\x01\x4c\x0b\x07\x00\x20\x00\x01\x40\x00\x0b\x0a\x00\x01\x01\x20\x00\x01\x01\x40\x00\x0b");
+assert_return(() => $$.exports["as-func-first"](), 1);
+assert_return(() => $$.exports["as-func-mid"](), 2);
+assert_return(() => $$.exports["as-func-last"](), 3);
+assert_return(() => $$.exports["as-func-everywhere"](), 4);
+assert_return(() => $$.exports["as-drop-last"](0));
+assert_return(() => $$.exports["as-drop-everywhere"](0));
+assert_return(() => $$.exports["as-select-mid1"](3), 3);
+assert_return(() => $$.exports["as-select-mid2"](3), 3);
+assert_return(() => $$.exports["as-select-last"](3), 3);
+assert_return(() => $$.exports["as-select-everywhere"](3), 3);
+assert_return(() => $$.exports["as-block-first"](), 2);
+assert_return(() => $$.exports["as-block-mid"](), 2);
+assert_return(() => $$.exports["as-block-last"](), 3);
+assert_return(() => $$.exports["as-block-everywhere"](), 4);
+assert_return(() => $$.exports["as-loop-first"](), 2);
+assert_return(() => $$.exports["as-loop-mid"](), 2);
+assert_return(() => $$.exports["as-loop-last"](), 3);
+assert_return(() => $$.exports["as-loop-everywhere"](), 4);
+assert_return(() => $$.exports["as-if-condition"](0));
+assert_return(() => $$.exports["as-if-condition"](-1));
+assert_return(() => $$.exports["as-if-then"](0));
+assert_return(() => $$.exports["as-if-then"](4));
+assert_return(() => $$.exports["as-if-else"](0));
+assert_return(() => $$.exports["as-if-else"](3));
+assert_return(() => $$.exports["as-br-last"](6), 6);
+assert_return(() => $$.exports["as-br-everywhere"](7), 7);
+assert_return(() => $$.exports["as-br_if-mid"](5), 5);
+assert_return(() => $$.exports["as-br_if-last"](6), 6);
+assert_return(() => $$.exports["as-br_if-everywhere"](7), 7);
+assert_return(() => $$.exports["as-br_table-mid"](5), 5);
+assert_return(() => $$.exports["as-br_table-last"](6), 6);
+assert_return(() => $$.exports["as-br_table-everywhere"](7), 7);
+assert_return(() => $$.exports["as-return-last"](6), 6);
+assert_return(() => $$.exports["as-return-everywhere"](7), 7);
+assert_return(() => $$.exports["as-call-mid1"](3, 1, 2), 2);
+assert_return(() => $$.exports["as-call-mid2"](0, 3, 1), 2);
+assert_return(() => $$.exports["as-call-last"](10, 9, -1), 20);
+assert_return(() => $$.exports["as-call-everywhere"](2, 1, 5), -2);
+assert_return(() => $$.exports["as-unary-last"](30), 1);
+assert_return(() => $$.exports["as-unary-everywhere"](12), 2);
+assert_return(() => $$.exports["as-binary-mid"](3), 6);
+assert_return(() => $$.exports["as-binary-last"](3), 6);
+assert_return(() => $$.exports["as-binary-everywhere"](3), 6);
+assert_return(() => $$.exports["as-test-last"](0), 1);
+assert_return(() => $$.exports["as-test-everywhere"](0), 1);
+assert_return(() => $$.exports["as-compare-mid"](3), 0);
+assert_return(() => $$.exports["as-compare-last"](3), 0);
+assert_return(() => $$.exports["as-compare-everywhere"](3), 1);
+assert_return(() => $$.exports["as-grow_memory-last"](2), 1);
+assert_return(() => $$.exports["as-grow_memory-everywhere"](12), 3);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7d\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x01\x0b");
diff --git a/JSTests/wasm/spec-tests/resizing.wast.js b/JSTests/wasm/spec-tests/resizing.wast.js
new file mode 100644
index 0000000..885a737
--- /dev/null
+++ b/JSTests/wasm/spec-tests/resizing.wast.js
@@ -0,0 +1,129 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x0d\x03\x60\x00\x01\x7f\x60\x00\x00\x60\x01\x7f\x01\x7f\x03\x07\x06\x00\x01\x00\x01\x02\x00\x05\x03\x01\x00\x00\x07\x57\x06\x0c\x6c\x6f\x61\x64\x5f\x61\x74\x5f\x7a\x65\x72\x6f\x00\x00\x0d\x73\x74\x6f\x72\x65\x5f\x61\x74\x5f\x7a\x65\x72\x6f\x00\x01\x11\x6c\x6f\x61\x64\x5f\x61\x74\x5f\x70\x61\x67\x65\x5f\x73\x69\x7a\x65\x00\x02\x12\x73\x74\x6f\x72\x65\x5f\x61\x74\x5f\x70\x61\x67\x65\x5f\x73\x69\x7a\x65\x00\x03\x04\x67\x72\x6f\x77\x00\x04\x04\x73\x69\x7a\x65\x00\x05\x0a\x35\x06\x07\x00\x41\x00\x28\x02\x00\x0b\x09\x00\x41\x00\x41\x02\x36\x02\x00\x0b\x09\x00\x41\x80\x80\x04\x28\x02\x00\x0b\x0b\x00\x41\x80\x80\x04\x41\x03\x36\x02\x00\x0b\x06\x00\x20\x00\x40\x00\x0b\x04\x00\x3f\x00\x0b");
+assert_return(() => $$.exports["size"](), 0);
+assert_trap(() => $$.exports["store_at_zero"]());
+assert_trap(() => $$.exports["load_at_zero"]());
+assert_trap(() => $$.exports["store_at_page_size"]());
+assert_trap(() => $$.exports["load_at_page_size"]());
+assert_return(() => $$.exports["grow"](1), 0);
+assert_return(() => $$.exports["size"](), 1);
+assert_return(() => $$.exports["load_at_zero"](), 0);
+assert_return(() => $$.exports["store_at_zero"]());
+assert_return(() => $$.exports["load_at_zero"](), 2);
+assert_trap(() => $$.exports["store_at_page_size"]());
+assert_trap(() => $$.exports["load_at_page_size"]());
+assert_return(() => $$.exports["grow"](4), 1);
+assert_return(() => $$.exports["size"](), 5);
+assert_return(() => $$.exports["load_at_zero"](), 2);
+assert_return(() => $$.exports["store_at_zero"]());
+assert_return(() => $$.exports["load_at_zero"](), 2);
+assert_return(() => $$.exports["load_at_page_size"](), 0);
+assert_return(() => $$.exports["store_at_page_size"]());
+assert_return(() => $$.exports["load_at_page_size"](), 3);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x05\x03\x01\x00\x00\x07\x08\x01\x04\x67\x72\x6f\x77\x00\x00\x0a\x08\x01\x06\x00\x20\x00\x40\x00\x0b");
+assert_return(() => $$.exports["grow"](0), 0);
+assert_return(() => $$.exports["grow"](1), 0);
+assert_return(() => $$.exports["grow"](0), 1);
+assert_return(() => $$.exports["grow"](2), 1);
+assert_return(() => $$.exports["grow"](800), 3);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x05\x04\x01\x01\x00\x0a\x07\x08\x01\x04\x67\x72\x6f\x77\x00\x00\x0a\x08\x01\x06\x00\x20\x00\x40\x00\x0b");
+assert_return(() => $$.exports["grow"](0), 0);
+assert_return(() => $$.exports["grow"](1), 0);
+assert_return(() => $$.exports["grow"](1), 1);
+assert_return(() => $$.exports["grow"](2), 2);
+assert_return(() => $$.exports["grow"](6), 4);
+assert_return(() => $$.exports["grow"](0), 10);
+assert_return(() => $$.exports["grow"](1), -1);
diff --git a/JSTests/wasm/spec-tests/return.wast.js b/JSTests/wasm/spec-tests/return.wast.js
new file mode 100644
index 0000000..0f7ac86
--- /dev/null
+++ b/JSTests/wasm/spec-tests/return.wast.js
@@ -0,0 +1,155 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x28\x08\x60\x00\x00\x60\x00\x01\x7c\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x02\x7f\x7f\x01\x7f\x60\x03\x7f\x7f\x7f\x01\x7f\x60\x03\x7f\x7f\x7f\x01\x7f\x60\x00\x01\x7d\x03\x3c\x3b\x00\x00\x00\x00\x00\x00\x01\x02\x02\x00\x02\x00\x00\x00\x02\x02\x02\x02\x02\x00\x02\x02\x03\x02\x02\x03\x02\x04\x04\x04\x04\x02\x05\x02\x02\x02\x02\x02\x02\x02\x02\x07\x03\x02\x02\x02\x02\x07\x02\x03\x02\x02\x02\x02\x02\x00\x00\x00\x00\x04\x05\x01\x70\x01\x01\x01\x05\x03\x01\x00\x01\x07\xb5\x07\x39\x08\x74\x79\x70\x65\x2d\x69\x33\x32\x00\x01\x08\x74\x79\x70\x65\x2d\x69\x36\x34\x00\x02\x08\x74\x79\x70\x65\x2d\x66\x33\x32\x00\x03\x08\x74\x79\x70\x65\x2d\x66\x36\x34\x00\x04\x07\x6e\x75\x6c\x6c\x61\x72\x79\x00\x05\x05\x75\x6e\x61\x72\x79\x00\x06\x0d\x61\x73\x2d\x66\x75\x6e\x63\x2d\x66\x69\x72\x73\x74\x00\x07\x0b\x61\x73\x2d\x66\x75\x6e\x63\x2d\x6d\x69\x64\x00\x08\x0c\x61\x73\x2d\x66\x75\x6e\x63\x2d\x6c\x61\x73\x74\x00\x09\x0d\x61\x73\x2d\x66\x75\x6e\x63\x2d\x76\x61\x6c\x75\x65\x00\x0a\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x66\x69\x72\x73\x74\x00\x0b\x0c\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6d\x69\x64\x00\x0c\x0d\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6c\x61\x73\x74\x00\x0d\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x00\x0e\x0d\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x66\x69\x72\x73\x74\x00\x0f\x0b\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6d\x69\x64\x00\x10\x0c\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6c\x61\x73\x74\x00\x11\x0b\x61\x73\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x12\x0d\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x63\x6f\x6e\x64\x00\x13\x0e\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x00\x14\x13\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x2d\x63\x6f\x6e\x64\x00\x15\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x69\x6e\x64\x65\x78\x00\x16\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x17\x17\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x2d\x69\x6e\x64\x65\x78\x00\x18\x0f\x61\x73\x2d\x72\x65\x74\x75\x72\x6e\x2d\x76\x61\x6c\x75\x65\x00\x19\x0a\x61\x73\x2d\x69\x66\x2d\x63\x6f\x6e\x64\x00\x1a\x0a\x61\x73\x2d\x69\x66\x2d\x74\x68\x65\x6e\x00\x1b\x0a\x61\x73\x2d\x69\x66\x2d\x65\x6c\x73\x65\x00\x1c\x0f\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x1d\x10\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x73\x65\x63\x6f\x6e\x64\x00\x1e\x0e\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x63\x6f\x6e\x64\x00\x1f\x0d\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x66\x69\x72\x73\x74\x00\x21\x0b\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6d\x69\x64\x00\x22\x0c\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6c\x61\x73\x74\x00\x23\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x75\x6e\x63\x00\x24\x16\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x25\x14\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6d\x69\x64\x00\x26\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6c\x61\x73\x74\x00\x27\x12\x61\x73\x2d\x73\x65\x74\x5f\x6c\x6f\x63\x61\x6c\x2d\x76\x61\x6c\x75\x65\x00\x28\x0f\x61\x73\x2d\x6c\x6f\x61\x64\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x29\x10\x61\x73\x2d\x6c\x6f\x61\x64\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2a\x10\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2b\x0e\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x76\x61\x6c\x75\x65\x00\x2c\x11\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2d\x0f\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x76\x61\x6c\x75\x65\x00\x2e\x10\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x2f\x0e\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6c\x65\x66\x74\x00\x30\x0f\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x72\x69\x67\x68\x74\x00\x31\x0f\x61\x73\x2d\x74\x65\x73\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x32\x0f\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6c\x65\x66\x74\x00\x33\x10\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x72\x69\x67\x68\x74\x00\x34\x12\x61\x73\x2d\x63\x6f\x6e\x76\x65\x72\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x35\x13\x61\x73\x2d\x67\x72\x6f\x77\x5f\x6d\x65\x6d\x6f\x72\x79\x2d\x73\x69\x7a\x65\x00\x36\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x37\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x38\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x39\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x3a\x09\x07\x01\x00\x41\x00\x0b\x01\x20\x0a\xa5\x05\x3b\x02\x00\x0b\x05\x00\x0f\x68\x1a\x0b\x05\x00\x0f\x7a\x1a\x0b\x05\x00\x0f\x8c\x1a\x0b\x05\x00\x0f\x9a\x1a\x0b\x03\x00\x0f\x0b\x0c\x00\x44\x00\x00\x00\x00\x00\x00\x08\x40\x0f\x0b\x07\x00\x41\x01\x0f\x41\x02\x0b\x09\x00\x10\x00\x41\x02\x0f\x41\x03\x0b\x06\x00\x01\x10\x00\x0f\x0b\x08\x00\x01\x10\x00\x41\x03\x0f\x0b\x08\x00\x02\x40\x0f\x10\x00\x0b\x0b\x0a\x00\x02\x40\x10\x00\x0f\x10\x00\x0b\x0b\x09\x00\x02\x40\x01\x10\x00\x0f\x0b\x0b\x0b\x00\x02\x7f\x01\x10\x00\x41\x02\x0f\x0b\x0b\x0a\x00\x03\x7f\x41\x03\x0f\x41\x02\x0b\x0b\x0c\x00\x03\x7f\x10\x00\x41\x04\x0f\x41\x02\x0b\x0b\x0b\x00\x03\x7f\x01\x10\x00\x41\x05\x0f\x0b\x0b\x0a\x00\x02\x7f\x41\x09\x0f\x0c\x00\x0b\x0b\x08\x00\x02\x40\x0f\x0d\x00\x0b\x0b\x0f\x00\x02\x7f\x41\x08\x0f\x41\x01\x0d\x00\x1a\x41\x07\x0b\x0b\x0f\x00\x02\x7f\x41\x06\x41\x09\x0f\x0d\x00\x1a\x41\x07\x0b\x0b\x0f\x00\x02\x40\x42\x09\x0f\x0e\x02\x00\x00\x00\x0b\x42\x7f\x0b\x11\x00\x02\x7f\x41\x0a\x0f\x41\x01\x0e\x02\x00\x00\x00\x41\x07\x0b\x0b\x10\x00\x02\x7f\x41\x06\x41\x0b\x0f\x0e\x01\x00\x00\x41\x07\x0b\x0b\x06\x00\x42\x07\x0f\x0f\x0b\x0d\x00\x41\x02\x0f\x04\x7f\x41\x00\x05\x41\x01\x0b\x0b\x0d\x00\x20\x00\x04\x7f\x41\x03\x0f\x05\x20\x01\x0b\x0b\x0d\x00\x20\x00\x04\x7f\x20\x01\x05\x41\x04\x0f\x0b\x0b\x0a\x00\x41\x05\x0f\x20\x00\x20\x01\x1b\x0b\x0a\x00\x20\x00\x41\x06\x0f\x20\x01\x1b\x0b\x0a\x00\x41\x00\x41\x01\x41\x07\x0f\x1b\x0b\x04\x00\x41\x7f\x0b\x0b\x00\x41\x0c\x0f\x41\x02\x41\x03\x10\x20\x0b\x0b\x00\x41\x01\x41\x0d\x0f\x41\x03\x10\x20\x0b\x0b\x00\x41\x01\x41\x02\x41\x0e\x0f\x10\x20\x0b\x0e\x00\x41\x14\x0f\x41\x01\x41\x02\x41\x03\x11\x06\x00\x0b\x0e\x00\x41\x00\x41\x15\x0f\x41\x02\x41\x03\x11\x06\x00\x0b\x0e\x00\x41\x00\x41\x01\x41\x16\x0f\x41\x03\x11\x06\x00\x0b\x0e\x00\x41\x00\x41\x01\x41\x02\x41\x17\x0f\x11\x06\x00\x0b\x0b\x01\x01\x7d\x41\x11\x0f\x21\x00\x41\x7f\x0b\x0b\x00\x43\x9a\x99\xd9\x3f\x0f\x2a\x02\x00\x0b\x08\x00\x42\x1e\x0f\x30\x00\x00\x0b\x13\x00\x41\x1e\x0f\x44\x00\x00\x00\x00\x00\x00\x1c\x40\x39\x03\x00\x41\x7f\x0b\x0c\x00\x41\x02\x41\x1f\x0f\x37\x03\x00\x41\x7f\x0b\x0c\x00\x41\x20\x0f\x41\x07\x3a\x00\x00\x41\x7f\x0b\x0c\x00\x41\x02\x41\x21\x0f\x3d\x01\x00\x41\x7f\x0b\x09\x00\x43\x9a\x99\x59\x40\x0f\x8c\x0b\x08\x00\x41\x03\x0f\x41\x0a\x6a\x0b\x08\x00\x42\x0a\x42\x2d\x0f\x7d\x0b\x06\x00\x41\x2c\x0f\x45\x0b\x0f\x00\x41\x2b\x0f\x44\x00\x00\x00\x00\x00\x00\x24\x40\x65\x0b\x0b\x00\x43\x00\x00\x20\x41\x41\x2a\x0f\x5c\x0b\x06\x00\x41\x29\x0f\xa7\x0b\x07\x00\x41\x28\x0f\x40\x00\x0b\x0f\x00\x02\x40\x10\x16\x42\x09\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x19\x42\x07\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x2a\x42\x1e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x0f\x00\x02\x40\x10\x31\x42\x2d\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-i32"]());
+assert_return(() => $$.exports["type-i64"]());
+assert_return(() => $$.exports["type-f32"]());
+assert_return(() => $$.exports["type-f64"]());
+assert_return(() => $$.exports["nullary"]());
+assert_return(() => $$.exports["unary"](), 3.0);
+assert_return(() => $$.exports["as-func-first"](), 1);
+assert_return(() => $$.exports["as-func-mid"](), 2);
+assert_return(() => $$.exports["as-func-last"]());
+assert_return(() => $$.exports["as-func-value"](), 3);
+assert_return(() => $$.exports["as-block-first"]());
+assert_return(() => $$.exports["as-block-mid"]());
+assert_return(() => $$.exports["as-block-last"]());
+assert_return(() => $$.exports["as-block-value"](), 2);
+assert_return(() => $$.exports["as-loop-first"](), 3);
+assert_return(() => $$.exports["as-loop-mid"](), 4);
+assert_return(() => $$.exports["as-loop-last"](), 5);
+assert_return(() => $$.exports["as-br-value"](), 9);
+assert_return(() => $$.exports["as-br_if-cond"]());
+assert_return(() => $$.exports["as-br_if-value"](), 8);
+assert_return(() => $$.exports["as-br_if-value-cond"](), 9);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["as-br_table-value"](), 10);
+assert_return(() => $$.exports["as-br_table-value-index"](), 11);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["as-if-cond"](), 2);
+assert_return(() => $$.exports["as-if-then"](1, 6), 3);
+assert_return(() => $$.exports["as-if-then"](0, 6), 6);
+assert_return(() => $$.exports["as-if-else"](0, 6), 4);
+assert_return(() => $$.exports["as-if-else"](1, 6), 6);
+assert_return(() => $$.exports["as-select-first"](0, 6), 5);
+assert_return(() => $$.exports["as-select-first"](1, 6), 5);
+assert_return(() => $$.exports["as-select-second"](0, 6), 6);
+assert_return(() => $$.exports["as-select-second"](1, 6), 6);
+assert_return(() => $$.exports["as-select-cond"](), 7);
+assert_return(() => $$.exports["as-call-first"](), 12);
+assert_return(() => $$.exports["as-call-mid"](), 13);
+assert_return(() => $$.exports["as-call-last"](), 14);
+assert_return(() => $$.exports["as-call_indirect-func"](), 20);
+assert_return(() => $$.exports["as-call_indirect-first"](), 21);
+assert_return(() => $$.exports["as-call_indirect-mid"](), 22);
+assert_return(() => $$.exports["as-call_indirect-last"](), 23);
+assert_return(() => $$.exports["as-set_local-value"](), 17);
+assert_return(() => $$.exports["as-load-address"](), f32(1.70000004768));
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["as-store-address"](), 30);
+assert_return(() => $$.exports["as-store-value"](), 31);
+assert_return(() => $$.exports["as-storeN-address"](), 32);
+assert_return(() => $$.exports["as-storeN-value"](), 33);
+assert_return(() => $$.exports["as-unary-operand"](), f32(3.40000009537));
+assert_return(() => $$.exports["as-binary-left"](), 3);
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["as-test-operand"](), 44);
+assert_return(() => $$.exports["as-compare-left"](), 43);
+assert_return(() => $$.exports["as-compare-right"](), 42);
+assert_return(() => $$.exports["as-convert-operand"](), 41);
+assert_return(() => $$.exports["as-grow_memory-size"](), 40);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x01\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7c\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x01\x0f\x0b");
diff --git a/JSTests/wasm/spec-tests/select.wast.js b/JSTests/wasm/spec-tests/select.wast.js
new file mode 100644
index 0000000..ed87e25
--- /dev/null
+++ b/JSTests/wasm/spec-tests/select.wast.js
@@ -0,0 +1,124 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x25\x06\x60\x03\x7f\x7f\x7f\x01\x7f\x60\x03\x7e\x7e\x7f\x01\x7e\x60\x03\x7d\x7d\x7f\x01\x7d\x60\x03\x7c\x7c\x7f\x01\x7c\x60\x01\x7f\x01\x7f\x60\x00\x00\x03\x1a\x19\x00\x01\x02\x03\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x07\xaf\x02\x19\x0a\x73\x65\x6c\x65\x63\x74\x5f\x69\x33\x32\x00\x00\x0a\x73\x65\x6c\x65\x63\x74\x5f\x69\x36\x34\x00\x01\x0a\x73\x65\x6c\x65\x63\x74\x5f\x66\x33\x32\x00\x02\x0a\x73\x65\x6c\x65\x63\x74\x5f\x66\x36\x34\x00\x03\x0d\x73\x65\x6c\x65\x63\x74\x5f\x74\x72\x61\x70\x5f\x6c\x00\x04\x0d\x73\x65\x6c\x65\x63\x74\x5f\x74\x72\x61\x70\x5f\x72\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x38\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x39\x00\x0f\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x30\x00\x10\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x31\x00\x11\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x32\x00\x12\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x33\x00\x13\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x34\x00\x14\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x35\x00\x15\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x36\x00\x16\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x37\x00\x17\x09\x61\x73\x73\x65\x72\x74\x5f\x31\x38\x00\x18\x0a\xf1\x05\x19\x09\x00\x20\x00\x20\x01\x20\x02\x1b\x0b\x09\x00\x20\x00\x20\x01\x20\x02\x1b\x0b\x09\x00\x20\x00\x20\x01\x20\x02\x1b\x0b\x09\x00\x20\x00\x20\x01\x20\x02\x1b\x0b\x08\x00\x00\x41\x00\x20\x00\x1b\x0b\x08\x00\x41\x00\x00\x20\x00\x1b\x0b\x15\x00\x02\x40\x42\x02\x42\x01\x41\x01\x10\x01\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x15\x00\x02\x40\x42\x02\x42\x01\x41\x7f\x10\x01\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x19\x00\x02\x40\x42\x02\x42\x01\x41\xf0\xe1\xc3\x87\x7f\x10\x01\x42\x02\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x41\x01\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x04\x03\x82\x7f\x43\x00\x00\x80\x3f\x41\x01\x10\x02\xbc\x43\x04\x03\x82\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x00\x00\xc0\x7f\x43\x00\x00\x80\x3f\x41\x00\x10\x02\xbc\x43\x00\x00\x80\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x04\x03\x82\x7f\x43\x00\x00\x80\x3f\x41\x00\x10\x02\xbc\x43\x00\x00\x80\x3f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x00\x00\x00\x40\x43\x00\x00\xc0\x7f\x41\x01\x10\x02\xbc\x43\x00\x00\x00\x40\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x00\x00\x00\x40\x43\x04\x03\x82\x7f\x41\x01\x10\x02\xbc\x43\x00\x00\x00\x40\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x00\x00\x00\x40\x43\x00\x00\xc0\x7f\x41\x00\x10\x02\xbc\x43\x00\x00\xc0\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x20\x00\x02\x40\x43\x00\x00\x00\x40\x43\x04\x03\x82\x7f\x41\x00\x10\x02\xbc\x43\x04\x03\x82\x7f\xbc\x46\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x01\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x04\x03\x02\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x01\x10\x03\xbd\x44\x04\x03\x02\x00\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x04\x03\x02\x00\x00\x00\xf0\x7f\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x41\x01\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x40\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x04\x03\x02\x00\x00\x00\xf0\x7f\x41\x01\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\x00\x40\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x41\x00\x10\x03\xbd\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x44\x00\x00\x00\x00\x00\x00\x00\x40\x44\x04\x03\x02\x00\x00\x00\xf0\x7f\x41\x00\x10\x03\xbd\x44\x04\x03\x02\x00\x00\x00\xf0\x7f\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["select_i32"](1, 2, 1), 1);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["select_f32"](f32(1.0), f32(2.0), 1), f32(1.0));
+assert_return(() => $$.exports["select_f64"](1.0, 2.0, 1), 1.0);
+assert_return(() => $$.exports["select_i32"](1, 2, 0), 2);
+assert_return(() => $$.exports["select_i32"](2, 1, 0), 1);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["assert_7"]());
+assert_return(() => $$.exports["assert_8"]());
+assert_return(() => $$.exports["assert_9"]());
+assert_return(() => $$.exports["assert_10"]());
+assert_return(() => $$.exports["assert_11"]());
+assert_return(() => $$.exports["assert_12"]());
+assert_return(() => $$.exports["assert_13"]());
+assert_return(() => $$.exports["assert_14"]());
+assert_return(() => $$.exports["assert_15"]());
+assert_return(() => $$.exports["assert_16"]());
+assert_return(() => $$.exports["assert_17"]());
+assert_return(() => $$.exports["assert_18"]());
+assert_trap(() => $$.exports["select_trap_l"](1));
+assert_trap(() => $$.exports["select_trap_l"](0));
+assert_trap(() => $$.exports["select_trap_r"](1));
+assert_trap(() => $$.exports["select_trap_r"](0));
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x01\x01\x41\x01\x1b\x0b");
diff --git a/JSTests/wasm/spec-tests/set_local.wast.js b/JSTests/wasm/spec-tests/set_local.wast.js
new file mode 100644
index 0000000..afde38d
--- /dev/null
+++ b/JSTests/wasm/spec-tests/set_local.wast.js
@@ -0,0 +1,128 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x25\x07\x60\x00\x00\x60\x01\x7f\x00\x60\x01\x7e\x00\x60\x01\x7d\x00\x60\x01\x7c\x00\x60\x05\x7e\x7d\x7c\x7f\x7f\x00\x60\x05\x7e\x7d\x7c\x7f\x7f\x01\x7e\x03\x0e\x0d\x00\x00\x00\x00\x01\x02\x03\x04\x05\x06\x00\x00\x00\x07\xbf\x01\x0d\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x33\x32\x00\x00\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x36\x34\x00\x01\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x33\x32\x00\x02\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x36\x34\x00\x03\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x69\x33\x32\x00\x04\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x69\x36\x34\x00\x05\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x66\x33\x32\x00\x06\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x66\x36\x34\x00\x07\x0a\x74\x79\x70\x65\x2d\x6d\x69\x78\x65\x64\x00\x08\x05\x77\x72\x69\x74\x65\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0c\x0a\xb4\x02\x0d\x08\x01\x01\x7f\x41\x00\x21\x00\x0b\x08\x01\x01\x7e\x42\x00\x21\x00\x0b\x0b\x01\x01\x7d\x43\x00\x00\x00\x00\x21\x00\x0b\x0f\x01\x01\x7c\x44\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x0b\x06\x00\x41\x0a\x21\x00\x0b\x06\x00\x42\x0b\x21\x00\x0b\x09\x00\x43\x9a\x99\x31\x41\x21\x00\x0b\x0d\x00\x44\x66\x66\x66\x66\x66\x66\x28\x40\x21\x00\x0b\x40\x03\x01\x7d\x02\x7e\x01\x7c\x42\x00\x21\x00\x43\x00\x00\x00\x00\x21\x01\x44\x00\x00\x00\x00\x00\x00\x00\x00\x21\x02\x41\x00\x21\x03\x41\x00\x21\x04\x43\x00\x00\x00\x00\x21\x05\x42\x00\x21\x06\x42\x00\x21\x07\x44\x00\x00\x00\x00\x00\x00\x00\x00\x21\x08\x0b\x4f\x03\x01\x7d\x02\x7e\x01\x7c\x43\x9a\x99\x99\xbe\x21\x01\x41\x28\x21\x03\x41\x79\x21\x04\x43\x00\x00\xb0\x40\x21\x05\x42\x06\x21\x06\x44\x00\x00\x00\x00\x00\x00\x20\x40\x21\x08\x20\x00\xba\x20\x01\xbb\x20\x02\x20\x03\xb8\x20\x04\xb7\x20\x05\xbb\x20\x06\xba\x20\x07\xba\x20\x08\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xb0\x0b\x0b\x00\x02\x40\x42\x03\x10\x05\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x42\x01\x43\xcd\xcc\x0c\x40\x44\x66\x66\x66\x66\x66\x66\x0a\x40\x41\x04\x41\x05\x10\x08\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x01\x43\x00\x00\x00\x40\x44\x66\x66\x66\x66\x66\x66\x0a\x40\x41\x04\x41\x05\x10\x09\x42\x38\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-local-i32"]());
+assert_return(() => $$.exports["type-local-i64"]());
+assert_return(() => $$.exports["type-local-f32"]());
+assert_return(() => $$.exports["type-local-f64"]());
+assert_return(() => $$.exports["type-param-i32"](2));
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["type-param-f32"](f32(4.40000009537)));
+assert_return(() => $$.exports["type-param-f64"](5.5));
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x0a\x01\x08\x01\x01\x7f\x41\x00\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x01\x01\x7d\x43\x00\x00\x00\x00\x21\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7c\x01\x7e\x42\x00\x21\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x01\x01\x7f\x01\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x01\x01\x7f\x43\x00\x00\x00\x00\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x11\x01\x0f\x01\x01\x7d\x44\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x13\x01\x11\x02\x01\x7c\x01\x7e\x44\x00\x00\x00\x00\x00\x00\x00\x00\x21\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7e\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x20\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7c\x7e\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x01\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x43\x00\x00\x00\x00\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7c\x7e\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x21\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x02\x01\x7f\x01\x7e\x20\x03\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7f\x01\x7e\x20\xf7\xa4\xea\x06\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7f\x7e\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x20\x02\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x02\x01\x7f\x01\x7e\x20\xf7\xf2\xce\xd4\x02\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x02\x01\x7f\x01\x7e\x20\x03\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7e\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7f\x01\x7e\x20\xf7\xa8\x99\x66\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x01\x01\x7f\x43\x00\x00\x00\x00\x21\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7e\x7f\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x01\x01\x7d\x43\x00\x00\x00\x00\x21\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7e\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x02\x01\x7c\x01\x7e\x42\x00\x21\x01\x0b");
diff --git a/JSTests/wasm/spec-tests/skip-stack-guard-page.wast.js b/JSTests/wasm/spec-tests/skip-stack-guard-page.wast.js
new file mode 100644
index 0000000..c43c682
--- /dev/null
+++ b/JSTests/wasm/spec-tests/skip-stack-guard-page.wast.js
@@ -0,0 +1,105 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x03\x03\x02\x00\x01\x05\x03\x01\x00\x01\x07\x18\x01\x14\x74\x65\x73\x74\x2d\x67\x75\x61\x72\x64\x2d\x70\x61\x67\x65\x2d\x73\x6b\x69\x70\x00\x00\x0a\xe0\x90\x01\x02\x14\x00\x20\x00\x41\x00\x46\x04\x40\x10\x01\x05\x20\x00\x41\x01\x6b\x10\x00\x0b\x0b\xc7\x90\x01\x01\xa0\x08\x7e\x10\x01\x41\x00\x29\x00\x00\x21\x00\x41\x00\x29\x00\x01\x21\x01\x41\x00\x29\x00\x02\x21\x02\x41\x00\x29\x00\x03\x21\x03\x41\x00\x29\x00\x04\x21\x04\x41\x00\x29\x00\x05\x21\x05\x41\x00\x29\x00\x06\x21\x06\x41\x00\x29\x00\x07\x21\x07\x41\x00\x29\x00\x08\x21\x08\x41\x00\x29\x00\x09\x21\x09\x41\x00\x29\x00\x0a\x21\x0a\x41\x00\x29\x00\x0b\x21\x0b\x41\x00\x29\x00\x0c\x21\x0c\x41\x00\x29\x00\x0d\x21\x0d\x41\x00\x29\x00\x0e\x21\x0e\x41\x00\x29\x00\x0f\x21\x0f\x41\x00\x29\x00\x10\x21\x10\x41\x00\x29\x00\x11\x21\x11\x41\x00\x29\x00\x12\x21\x12\x41\x00\x29\x00\x13\x21\x13\x41\x00\x29\x00\x14\x21\x14\x41\x00\x29\x00\x15\x21\x15\x41\x00\x29\x00\x16\x21\x16\x41\x00\x29\x00\x17\x21\x17\x41\x00\x29\x00\x18\x21\x18\x41\x00\x29\x00\x19\x21\x19\x41\x00\x29\x00\x1a\x21\x1a\x41\x00\x29\x00\x1b\x21\x1b\x41\x00\x29\x00\x1c\x21\x1c\x41\x00\x29\x00\x1d\x21\x1d\x41\x00\x29\x00\x1e\x21\x1e\x41\x00\x29\x00\x1f\x21\x1f\x41\x00\x29\x00\x20\x21\x20\x41\x00\x29\x00\x21\x21\x21\x41\x00\x29\x00\x22\x21\x22\x41\x00\x29\x00\x23\x21\x23\x41\x00\x29\x00\x24\x21\x24\x41\x00\x29\x00\x25\x21\x25\x41\x00\x29\x00\x26\x21\x26\x41\x00\x29\x00\x27\x21\x27\x41\x00\x29\x00\x28\x21\x28\x41\x00\x29\x00\x29\x21\x29\x41\x00\x29\x00\x2a\x21\x2a\x41\x00\x29\x00\x2b\x21\x2b\x41\x00\x29\x00\x2c\x21\x2c\x41\x00\x29\x00\x2d\x21\x2d\x41\x00\x29\x00\x2e\x21\x2e\x41\x00\x29\x00\x2f\x21\x2f\x41\x00\x29\x00\x30\x21\x30\x41\x00\x29\x00\x31\x21\x31\x41\x00\x29\x00\x32\x21\x32\x41\x00\x29\x00\x33\x21\x33\x41\x00\x29\x00\x34\x21\x34\x41\x00\x29\x00\x35\x21\x35\x41\x00\x29\x00\x36\x21\x36\x41\x00\x29\x00\x37\x21\x37\x41\x00\x29\x00\x38\x21\x38\x41\x00\x29\x00\x39\x21\x39\x41\x00\x29\x00\x3a\x21\x3a\x41\x00\x29\x00\x3b\x21\x3b\x41\x00\x29\x00\x3c\x21\x3c\x41\x00\x29\x00\x3d\x21\x3d\x41\x00\x29\x00\x3e\x21\x3e\x41\x00\x29\x00\x3f\x21\x3f\x41\x00\x29\x00\x40\x21\x40\x41\x00\x29\x00\x41\x21\x41\x41\x00\x29\x00\x42\x21\x42\x41\x00\x29\x00\x43\x21\x43\x41\x00\x29\x00\x44\x21\x44\x41\x00\x29\x00\x45\x21\x45\x41\x00\x29\x00\x46\x21\x46\x41\x00\x29\x00\x47\x21\x47\x41\x00\x29\x00\x48\x21\x48\x41\x00\x29\x00\x49\x21\x49\x41\x00\x29\x00\x4a\x21\x4a\x41\x00\x29\x00\x4b\x21\x4b\x41\x00\x29\x00\x4c\x21\x4c\x41\x00\x29\x00\x4d\x21\x4d\x41\x00\x29\x00\x4e\x21\x4e\x41\x00\x29\x00\x4f\x21\x4f\x41\x00\x29\x00\x50\x21\x50\x41\x00\x29\x00\x51\x21\x51\x41\x00\x29\x00\x52\x21\x52\x41\x00\x29\x00\x53\x21\x53\x41\x00\x29\x00\x54\x21\x54\x41\x00\x29\x00\x55\x21\x55\x41\x00\x29\x00\x56\x21\x56\x41\x00\x29\x00\x57\x21\x57\x41\x00\x29\x00\x58\x21\x58\x41\x00\x29\x00\x59\x21\x59\x41\x00\x29\x00\x5a\x21\x5a\x41\x00\x29\x00\x5b\x21\x5b\x41\x00\x29\x00\x5c\x21\x5c\x41\x00\x29\x00\x5d\x21\x5d\x41\x00\x29\x00\x5e\x21\x5e\x41\x00\x29\x00\x5f\x21\x5f\x41\x00\x29\x00\x60\x21\x60\x41\x00\x29\x00\x61\x21\x61\x41\x00\x29\x00\x62\x21\x62\x41\x00\x29\x00\x63\x21\x63\x41\x00\x29\x00\x64\x21\x64\x41\x00\x29\x00\x65\x21\x65\x41\x00\x29\x00\x66\x21\x66\x41\x00\x29\x00\x67\x21\x67\x41\x00\x29\x00\x68\x21\x68\x41\x00\x29\x00\x69\x21\x69\x41\x00\x29\x00\x6a\x21\x6a\x41\x00\x29\x00\x6b\x21\x6b\x41\x00\x29\x00\x6c\x21\x6c\x41\x00\x29\x00\x6d\x21\x6d\x41\x00\x29\x00\x6e\x21\x6e\x41\x00\x29\x00\x6f\x21\x6f\x41\x00\x29\x00\x70\x21\x70\x41\x00\x29\x00\x71\x21\x71\x41\x00\x29\x00\x72\x21\x72\x41\x00\x29\x00\x73\x21\x73\x41\x00\x29\x00\x74\x21\x74\x41\x00\x29\x00\x75\x21\x75\x41\x00\x29\x00\x76\x21\x76\x41\x00\x29\x00\x77\x21\x77\x41\x00\x29\x00\x78\x21\x78\x41\x00\x29\x00\x79\x21\x79\x41\x00\x29\x00\x7a\x21\x7a\x41\x00\x29\x00\x7b\x21\x7b\x41\x00\x29\x00\x7c\x21\x7c\x41\x00\x29\x00\x7d\x21\x7d\x41\x00\x29\x00\x7e\x21\x7e\x41\x00\x29\x00\x7f\x21\x7f\x41\x00\x29\x00\x80\x01\x21\x80\x01\x41\x00\x29\x00\x81\x01\x21\x81\x01\x41\x00\x29\x00\x82\x01\x21\x82\x01\x41\x00\x29\x00\x83\x01\x21\x83\x01\x41\x00\x29\x00\x84\x01\x21\x84\x01\x41\x00\x29\x00\x85\x01\x21\x85\x01\x41\x00\x29\x00\x86\x01\x21\x86\x01\x41\x00\x29\x00\x87\x01\x21\x87\x01\x41\x00\x29\x00\x88\x01\x21\x88\x01\x41\x00\x29\x00\x89\x01\x21\x89\x01\x41\x00\x29\x00\x8a\x01\x21\x8a\x01\x41\x00\x29\x00\x8b\x01\x21\x8b\x01\x41\x00\x29\x00\x8c\x01\x21\x8c\x01\x41\x00\x29\x00\x8d\x01\x21\x8d\x01\x41\x00\x29\x00\x8e\x01\x21\x8e\x01\x41\x00\x29\x00\x8f\x01\x21\x8f\x01\x41\x00\x29\x00\x90\x01\x21\x90\x01\x41\x00\x29\x00\x91\x01\x21\x91\x01\x41\x00\x29\x00\x92\x01\x21\x92\x01\x41\x00\x29\x00\x93\x01\x21\x93\x01\x41\x00\x29\x00\x94\x01\x21\x94\x01\x41\x00\x29\x00\x95\x01\x21\x95\x01\x41\x00\x29\x00\x96\x01\x21\x96\x01\x41\x00\x29\x00\x97\x01\x21\x97\x01\x41\x00\x29\x00\x98\x01\x21\x98\x01\x41\x00\x29\x00\x99\x01\x21\x99\x01\x41\x00\x29\x00\x9a\x01\x21\x9a\x01\x41\x00\x29\x00\x9b\x01\x21\x9b\x01\x41\x00\x29\x00\x9c\x01\x21\x9c\x01\x41\x00\x29\x00\x9d\x01\x21\x9d\x01\x41\x00\x29\x00\x9e\x01\x21\x9e\x01\x41\x00\x29\x00\x9f\x01\x21\x9f\x01\x41\x00\x29\x00\xa0\x01\x21\xa0\x01\x41\x00\x29\x00\xa1\x01\x21\xa1\x01\x41\x00\x29\x00\xa2\x01\x21\xa2\x01\x41\x00\x29\x00\xa3\x01\x21\xa3\x01\x41\x00\x29\x00\xa4\x01\x21\xa4\x01\x41\x00\x29\x00\xa5\x01\x21\xa5\x01\x41\x00\x29\x00\xa6\x01\x21\xa6\x01\x41\x00\x29\x00\xa7\x01\x21\xa7\x01\x41\x00\x29\x00\xa8\x01\x21\xa8\x01\x41\x00\x29\x00\xa9\x01\x21\xa9\x01\x41\x00\x29\x00\xaa\x01\x21\xaa\x01\x41\x00\x29\x00\xab\x01\x21\xab\x01\x41\x00\x29\x00\xac\x01\x21\xac\x01\x41\x00\x29\x00\xad\x01\x21\xad\x01\x41\x00\x29\x00\xae\x01\x21\xae\x01\x41\x00\x29\x00\xaf\x01\x21\xaf\x01\x41\x00\x29\x00\xb0\x01\x21\xb0\x01\x41\x00\x29\x00\xb1\x01\x21\xb1\x01\x41\x00\x29\x00\xb2\x01\x21\xb2\x01\x41\x00\x29\x00\xb3\x01\x21\xb3\x01\x41\x00\x29\x00\xb4\x01\x21\xb4\x01\x41\x00\x29\x00\xb5\x01\x21\xb5\x01\x41\x00\x29\x00\xb6\x01\x21\xb6\x01\x41\x00\x29\x00\xb7\x01\x21\xb7\x01\x41\x00\x29\x00\xb8\x01\x21\xb8\x01\x41\x00\x29\x00\xb9\x01\x21\xb9\x01\x41\x00\x29\x00\xba\x01\x21\xba\x01\x41\x00\x29\x00\xbb\x01\x21\xbb\x01\x41\x00\x29\x00\xbc\x01\x21\xbc\x01\x41\x00\x29\x00\xbd\x01\x21\xbd\x01\x41\x00\x29\x00\xbe\x01\x21\xbe\x01\x41\x00\x29\x00\xbf\x01\x21\xbf\x01\x41\x00\x29\x00\xc0\x01\x21\xc0\x01\x41\x00\x29\x00\xc1\x01\x21\xc1\x01\x41\x00\x29\x00\xc2\x01\x21\xc2\x01\x41\x00\x29\x00\xc3\x01\x21\xc3\x01\x41\x00\x29\x00\xc4\x01\x21\xc4\x01\x41\x00\x29\x00\xc5\x01\x21\xc5\x01\x41\x00\x29\x00\xc6\x01\x21\xc6\x01\x41\x00\x29\x00\xc7\x01\x21\xc7\x01\x41\x00\x29\x00\xc8\x01\x21\xc8\x01\x41\x00\x29\x00\xc9\x01\x21\xc9\x01\x41\x00\x29\x00\xca\x01\x21\xca\x01\x41\x00\x29\x00\xcb\x01\x21\xcb\x01\x41\x00\x29\x00\xcc\x01\x21\xcc\x01\x41\x00\x29\x00\xcd\x01\x21\xcd\x01\x41\x00\x29\x00\xce\x01\x21\xce\x01\x41\x00\x29\x00\xcf\x01\x21\xcf\x01\x41\x00\x29\x00\xd0\x01\x21\xd0\x01\x41\x00\x29\x00\xd1\x01\x21\xd1\x01\x41\x00\x29\x00\xd2\x01\x21\xd2\x01\x41\x00\x29\x00\xd3\x01\x21\xd3\x01\x41\x00\x29\x00\xd4\x01\x21\xd4\x01\x41\x00\x29\x00\xd5\x01\x21\xd5\x01\x41\x00\x29\x00\xd6\x01\x21\xd6\x01\x41\x00\x29\x00\xd7\x01\x21\xd7\x01\x41\x00\x29\x00\xd8\x01\x21\xd8\x01\x41\x00\x29\x00\xd9\x01\x21\xd9\x01\x41\x00\x29\x00\xda\x01\x21\xda\x01\x41\x00\x29\x00\xdb\x01\x21\xdb\x01\x41\x00\x29\x00\xdc\x01\x21\xdc\x01\x41\x00\x29\x00\xdd\x01\x21\xdd\x01\x41\x00\x29\x00\xde\x01\x21\xde\x01\x41\x00\x29\x00\xdf\x01\x21\xdf\x01\x41\x00\x29\x00\xe0\x01\x21\xe0\x01\x41\x00\x29\x00\xe1\x01\x21\xe1\x01\x41\x00\x29\x00\xe2\x01\x21\xe2\x01\x41\x00\x29\x00\xe3\x01\x21\xe3\x01\x41\x00\x29\x00\xe4\x01\x21\xe4\x01\x41\x00\x29\x00\xe5\x01\x21\xe5\x01\x41\x00\x29\x00\xe6\x01\x21\xe6\x01\x41\x00\x29\x00\xe7\x01\x21\xe7\x01\x41\x00\x29\x00\xe8\x01\x21\xe8\x01\x41\x00\x29\x00\xe9\x01\x21\xe9\x01\x41\x00\x29\x00\xea\x01\x21\xea\x01\x41\x00\x29\x00\xeb\x01\x21\xeb\x01\x41\x00\x29\x00\xec\x01\x21\xec\x01\x41\x00\x29\x00\xed\x01\x21\xed\x01\x41\x00\x29\x00\xee\x01\x21\xee\x01\x41\x00\x29\x00\xef\x01\x21\xef\x01\x41\x00\x29\x00\xf0\x01\x21\xf0\x01\x41\x00\x29\x00\xf1\x01\x21\xf1\x01\x41\x00\x29\x00\xf2\x01\x21\xf2\x01\x41\x00\x29\x00\xf3\x01\x21\xf3\x01\x41\x00\x29\x00\xf4\x01\x21\xf4\x01\x41\x00\x29\x00\xf5\x01\x21\xf5\x01\x41\x00\x29\x00\xf6\x01\x21\xf6\x01\x41\x00\x29\x00\xf7\x01\x21\xf7\x01\x41\x00\x29\x00\xf8\x01\x21\xf8\x01\x41\x00\x29\x00\xf9\x01\x21\xf9\x01\x41\x00\x29\x00\xfa\x01\x21\xfa\x01\x41\x00\x29\x00\xfb\x01\x21\xfb\x01\x41\x00\x29\x00\xfc\x01\x21\xfc\x01\x41\x00\x29\x00\xfd\x01\x21\xfd\x01\x41\x00\x29\x00\xfe\x01\x21\xfe\x01\x41\x00\x29\x00\xff\x01\x21\xff\x01\x41\x00\x29\x00\x80\x02\x21\x80\x02\x41\x00\x29\x00\x81\x02\x21\x81\x02\x41\x00\x29\x00\x82\x02\x21\x82\x02\x41\x00\x29\x00\x83\x02\x21\x83\x02\x41\x00\x29\x00\x84\x02\x21\x84\x02\x41\x00\x29\x00\x85\x02\x21\x85\x02\x41\x00\x29\x00\x86\x02\x21\x86\x02\x41\x00\x29\x00\x87\x02\x21\x87\x02\x41\x00\x29\x00\x88\x02\x21\x88\x02\x41\x00\x29\x00\x89\x02\x21\x89\x02\x41\x00\x29\x00\x8a\x02\x21\x8a\x02\x41\x00\x29\x00\x8b\x02\x21\x8b\x02\x41\x00\x29\x00\x8c\x02\x21\x8c\x02\x41\x00\x29\x00\x8d\x02\x21\x8d\x02\x41\x00\x29\x00\x8e\x02\x21\x8e\x02\x41\x00\x29\x00\x8f\x02\x21\x8f\x02\x41\x00\x29\x00\x90\x02\x21\x90\x02\x41\x00\x29\x00\x91\x02\x21\x91\x02\x41\x00\x29\x00\x92\x02\x21\x92\x02\x41\x00\x29\x00\x93\x02\x21\x93\x02\x41\x00\x29\x00\x94\x02\x21\x94\x02\x41\x00\x29\x00\x95\x02\x21\x95\x02\x41\x00\x29\x00\x96\x02\x21\x96\x02\x41\x00\x29\x00\x97\x02\x21\x97\x02\x41\x00\x29\x00\x98\x02\x21\x98\x02\x41\x00\x29\x00\x99\x02\x21\x99\x02\x41\x00\x29\x00\x9a\x02\x21\x9a\x02\x41\x00\x29\x00\x9b\x02\x21\x9b\x02\x41\x00\x29\x00\x9c\x02\x21\x9c\x02\x41\x00\x29\x00\x9d\x02\x21\x9d\x02\x41\x00\x29\x00\x9e\x02\x21\x9e\x02\x41\x00\x29\x00\x9f\x02\x21\x9f\x02\x41\x00\x29\x00\xa0\x02\x21\xa0\x02\x41\x00\x29\x00\xa1\x02\x21\xa1\x02\x41\x00\x29\x00\xa2\x02\x21\xa2\x02\x41\x00\x29\x00\xa3\x02\x21\xa3\x02\x41\x00\x29\x00\xa4\x02\x21\xa4\x02\x41\x00\x29\x00\xa5\x02\x21\xa5\x02\x41\x00\x29\x00\xa6\x02\x21\xa6\x02\x41\x00\x29\x00\xa7\x02\x21\xa7\x02\x41\x00\x29\x00\xa8\x02\x21\xa8\x02\x41\x00\x29\x00\xa9\x02\x21\xa9\x02\x41\x00\x29\x00\xaa\x02\x21\xaa\x02\x41\x00\x29\x00\xab\x02\x21\xab\x02\x41\x00\x29\x00\xac\x02\x21\xac\x02\x41\x00\x29\x00\xad\x02\x21\xad\x02\x41\x00\x29\x00\xae\x02\x21\xae\x02\x41\x00\x29\x00\xaf\x02\x21\xaf\x02\x41\x00\x29\x00\xb0\x02\x21\xb0\x02\x41\x00\x29\x00\xb1\x02\x21\xb1\x02\x41\x00\x29\x00\xb2\x02\x21\xb2\x02\x41\x00\x29\x00\xb3\x02\x21\xb3\x02\x41\x00\x29\x00\xb4\x02\x21\xb4\x02\x41\x00\x29\x00\xb5\x02\x21\xb5\x02\x41\x00\x29\x00\xb6\x02\x21\xb6\x02\x41\x00\x29\x00\xb7\x02\x21\xb7\x02\x41\x00\x29\x00\xb8\x02\x21\xb8\x02\x41\x00\x29\x00\xb9\x02\x21\xb9\x02\x41\x00\x29\x00\xba\x02\x21\xba\x02\x41\x00\x29\x00\xbb\x02\x21\xbb\x02\x41\x00\x29\x00\xbc\x02\x21\xbc\x02\x41\x00\x29\x00\xbd\x02\x21\xbd\x02\x41\x00\x29\x00\xbe\x02\x21\xbe\x02\x41\x00\x29\x00\xbf\x02\x21\xbf\x02\x41\x00\x29\x00\xc0\x02\x21\xc0\x02\x41\x00\x29\x00\xc1\x02\x21\xc1\x02\x41\x00\x29\x00\xc2\x02\x21\xc2\x02\x41\x00\x29\x00\xc3\x02\x21\xc3\x02\x41\x00\x29\x00\xc4\x02\x21\xc4\x02\x41\x00\x29\x00\xc5\x02\x21\xc5\x02\x41\x00\x29\x00\xc6\x02\x21\xc6\x02\x41\x00\x29\x00\xc7\x02\x21\xc7\x02\x41\x00\x29\x00\xc8\x02\x21\xc8\x02\x41\x00\x29\x00\xc9\x02\x21\xc9\x02\x41\x00\x29\x00\xca\x02\x21\xca\x02\x41\x00\x29\x00\xcb\x02\x21\xcb\x02\x41\x00\x29\x00\xcc\x02\x21\xcc\x02\x41\x00\x29\x00\xcd\x02\x21\xcd\x02\x41\x00\x29\x00\xce\x02\x21\xce\x02\x41\x00\x29\x00\xcf\x02\x21\xcf\x02\x41\x00\x29\x00\xd0\x02\x21\xd0\x02\x41\x00\x29\x00\xd1\x02\x21\xd1\x02\x41\x00\x29\x00\xd2\x02\x21\xd2\x02\x41\x00\x29\x00\xd3\x02\x21\xd3\x02\x41\x00\x29\x00\xd4\x02\x21\xd4\x02\x41\x00\x29\x00\xd5\x02\x21\xd5\x02\x41\x00\x29\x00\xd6\x02\x21\xd6\x02\x41\x00\x29\x00\xd7\x02\x21\xd7\x02\x41\x00\x29\x00\xd8\x02\x21\xd8\x02\x41\x00\x29\x00\xd9\x02\x21\xd9\x02\x41\x00\x29\x00\xda\x02\x21\xda\x02\x41\x00\x29\x00\xdb\x02\x21\xdb\x02\x41\x00\x29\x00\xdc\x02\x21\xdc\x02\x41\x00\x29\x00\xdd\x02\x21\xdd\x02\x41\x00\x29\x00\xde\x02\x21\xde\x02\x41\x00\x29\x00\xdf\x02\x21\xdf\x02\x41\x00\x29\x00\xe0\x02\x21\xe0\x02\x41\x00\x29\x00\xe1\x02\x21\xe1\x02\x41\x00\x29\x00\xe2\x02\x21\xe2\x02\x41\x00\x29\x00\xe3\x02\x21\xe3\x02\x41\x00\x29\x00\xe4\x02\x21\xe4\x02\x41\x00\x29\x00\xe5\x02\x21\xe5\x02\x41\x00\x29\x00\xe6\x02\x21\xe6\x02\x41\x00\x29\x00\xe7\x02\x21\xe7\x02\x41\x00\x29\x00\xe8\x02\x21\xe8\x02\x41\x00\x29\x00\xe9\x02\x21\xe9\x02\x41\x00\x29\x00\xea\x02\x21\xea\x02\x41\x00\x29\x00\xeb\x02\x21\xeb\x02\x41\x00\x29\x00\xec\x02\x21\xec\x02\x41\x00\x29\x00\xed\x02\x21\xed\x02\x41\x00\x29\x00\xee\x02\x21\xee\x02\x41\x00\x29\x00\xef\x02\x21\xef\x02\x41\x00\x29\x00\xf0\x02\x21\xf0\x02\x41\x00\x29\x00\xf1\x02\x21\xf1\x02\x41\x00\x29\x00\xf2\x02\x21\xf2\x02\x41\x00\x29\x00\xf3\x02\x21\xf3\x02\x41\x00\x29\x00\xf4\x02\x21\xf4\x02\x41\x00\x29\x00\xf5\x02\x21\xf5\x02\x41\x00\x29\x00\xf6\x02\x21\xf6\x02\x41\x00\x29\x00\xf7\x02\x21\xf7\x02\x41\x00\x29\x00\xf8\x02\x21\xf8\x02\x41\x00\x29\x00\xf9\x02\x21\xf9\x02\x41\x00\x29\x00\xfa\x02\x21\xfa\x02\x41\x00\x29\x00\xfb\x02\x21\xfb\x02\x41\x00\x29\x00\xfc\x02\x21\xfc\x02\x41\x00\x29\x00\xfd\x02\x21\xfd\x02\x41\x00\x29\x00\xfe\x02\x21\xfe\x02\x41\x00\x29\x00\xff\x02\x21\xff\x02\x41\x00\x29\x00\x80\x03\x21\x80\x03\x41\x00\x29\x00\x81\x03\x21\x81\x03\x41\x00\x29\x00\x82\x03\x21\x82\x03\x41\x00\x29\x00\x83\x03\x21\x83\x03\x41\x00\x29\x00\x84\x03\x21\x84\x03\x41\x00\x29\x00\x85\x03\x21\x85\x03\x41\x00\x29\x00\x86\x03\x21\x86\x03\x41\x00\x29\x00\x87\x03\x21\x87\x03\x41\x00\x29\x00\x88\x03\x21\x88\x03\x41\x00\x29\x00\x89\x03\x21\x89\x03\x41\x00\x29\x00\x8a\x03\x21\x8a\x03\x41\x00\x29\x00\x8b\x03\x21\x8b\x03\x41\x00\x29\x00\x8c\x03\x21\x8c\x03\x41\x00\x29\x00\x8d\x03\x21\x8d\x03\x41\x00\x29\x00\x8e\x03\x21\x8e\x03\x41\x00\x29\x00\x8f\x03\x21\x8f\x03\x41\x00\x29\x00\x90\x03\x21\x90\x03\x41\x00\x29\x00\x91\x03\x21\x91\x03\x41\x00\x29\x00\x92\x03\x21\x92\x03\x41\x00\x29\x00\x93\x03\x21\x93\x03\x41\x00\x29\x00\x94\x03\x21\x94\x03\x41\x00\x29\x00\x95\x03\x21\x95\x03\x41\x00\x29\x00\x96\x03\x21\x96\x03\x41\x00\x29\x00\x97\x03\x21\x97\x03\x41\x00\x29\x00\x98\x03\x21\x98\x03\x41\x00\x29\x00\x99\x03\x21\x99\x03\x41\x00\x29\x00\x9a\x03\x21\x9a\x03\x41\x00\x29\x00\x9b\x03\x21\x9b\x03\x41\x00\x29\x00\x9c\x03\x21\x9c\x03\x41\x00\x29\x00\x9d\x03\x21\x9d\x03\x41\x00\x29\x00\x9e\x03\x21\x9e\x03\x41\x00\x29\x00\x9f\x03\x21\x9f\x03\x41\x00\x29\x00\xa0\x03\x21\xa0\x03\x41\x00\x29\x00\xa1\x03\x21\xa1\x03\x41\x00\x29\x00\xa2\x03\x21\xa2\x03\x41\x00\x29\x00\xa3\x03\x21\xa3\x03\x41\x00\x29\x00\xa4\x03\x21\xa4\x03\x41\x00\x29\x00\xa5\x03\x21\xa5\x03\x41\x00\x29\x00\xa6\x03\x21\xa6\x03\x41\x00\x29\x00\xa7\x03\x21\xa7\x03\x41\x00\x29\x00\xa8\x03\x21\xa8\x03\x41\x00\x29\x00\xa9\x03\x21\xa9\x03\x41\x00\x29\x00\xaa\x03\x21\xaa\x03\x41\x00\x29\x00\xab\x03\x21\xab\x03\x41\x00\x29\x00\xac\x03\x21\xac\x03\x41\x00\x29\x00\xad\x03\x21\xad\x03\x41\x00\x29\x00\xae\x03\x21\xae\x03\x41\x00\x29\x00\xaf\x03\x21\xaf\x03\x41\x00\x29\x00\xb0\x03\x21\xb0\x03\x41\x00\x29\x00\xb1\x03\x21\xb1\x03\x41\x00\x29\x00\xb2\x03\x21\xb2\x03\x41\x00\x29\x00\xb3\x03\x21\xb3\x03\x41\x00\x29\x00\xb4\x03\x21\xb4\x03\x41\x00\x29\x00\xb5\x03\x21\xb5\x03\x41\x00\x29\x00\xb6\x03\x21\xb6\x03\x41\x00\x29\x00\xb7\x03\x21\xb7\x03\x41\x00\x29\x00\xb8\x03\x21\xb8\x03\x41\x00\x29\x00\xb9\x03\x21\xb9\x03\x41\x00\x29\x00\xba\x03\x21\xba\x03\x41\x00\x29\x00\xbb\x03\x21\xbb\x03\x41\x00\x29\x00\xbc\x03\x21\xbc\x03\x41\x00\x29\x00\xbd\x03\x21\xbd\x03\x41\x00\x29\x00\xbe\x03\x21\xbe\x03\x41\x00\x29\x00\xbf\x03\x21\xbf\x03\x41\x00\x29\x00\xc0\x03\x21\xc0\x03\x41\x00\x29\x00\xc1\x03\x21\xc1\x03\x41\x00\x29\x00\xc2\x03\x21\xc2\x03\x41\x00\x29\x00\xc3\x03\x21\xc3\x03\x41\x00\x29\x00\xc4\x03\x21\xc4\x03\x41\x00\x29\x00\xc5\x03\x21\xc5\x03\x41\x00\x29\x00\xc6\x03\x21\xc6\x03\x41\x00\x29\x00\xc7\x03\x21\xc7\x03\x41\x00\x29\x00\xc8\x03\x21\xc8\x03\x41\x00\x29\x00\xc9\x03\x21\xc9\x03\x41\x00\x29\x00\xca\x03\x21\xca\x03\x41\x00\x29\x00\xcb\x03\x21\xcb\x03\x41\x00\x29\x00\xcc\x03\x21\xcc\x03\x41\x00\x29\x00\xcd\x03\x21\xcd\x03\x41\x00\x29\x00\xce\x03\x21\xce\x03\x41\x00\x29\x00\xcf\x03\x21\xcf\x03\x41\x00\x29\x00\xd0\x03\x21\xd0\x03\x41\x00\x29\x00\xd1\x03\x21\xd1\x03\x41\x00\x29\x00\xd2\x03\x21\xd2\x03\x41\x00\x29\x00\xd3\x03\x21\xd3\x03\x41\x00\x29\x00\xd4\x03\x21\xd4\x03\x41\x00\x29\x00\xd5\x03\x21\xd5\x03\x41\x00\x29\x00\xd6\x03\x21\xd6\x03\x41\x00\x29\x00\xd7\x03\x21\xd7\x03\x41\x00\x29\x00\xd8\x03\x21\xd8\x03\x41\x00\x29\x00\xd9\x03\x21\xd9\x03\x41\x00\x29\x00\xda\x03\x21\xda\x03\x41\x00\x29\x00\xdb\x03\x21\xdb\x03\x41\x00\x29\x00\xdc\x03\x21\xdc\x03\x41\x00\x29\x00\xdd\x03\x21\xdd\x03\x41\x00\x29\x00\xde\x03\x21\xde\x03\x41\x00\x29\x00\xdf\x03\x21\xdf\x03\x41\x00\x29\x00\xe0\x03\x21\xe0\x03\x41\x00\x29\x00\xe1\x03\x21\xe1\x03\x41\x00\x29\x00\xe2\x03\x21\xe2\x03\x41\x00\x29\x00\xe3\x03\x21\xe3\x03\x41\x00\x29\x00\xe4\x03\x21\xe4\x03\x41\x00\x29\x00\xe5\x03\x21\xe5\x03\x41\x00\x29\x00\xe6\x03\x21\xe6\x03\x41\x00\x29\x00\xe7\x03\x21\xe7\x03\x41\x00\x29\x00\xe8\x03\x21\xe8\x03\x41\x00\x29\x00\xe9\x03\x21\xe9\x03\x41\x00\x29\x00\xea\x03\x21\xea\x03\x41\x00\x29\x00\xeb\x03\x21\xeb\x03\x41\x00\x29\x00\xec\x03\x21\xec\x03\x41\x00\x29\x00\xed\x03\x21\xed\x03\x41\x00\x29\x00\xee\x03\x21\xee\x03\x41\x00\x29\x00\xef\x03\x21\xef\x03\x41\x00\x29\x00\xf0\x03\x21\xf0\x03\x41\x00\x29\x00\xf1\x03\x21\xf1\x03\x41\x00\x29\x00\xf2\x03\x21\xf2\x03\x41\x00\x29\x00\xf3\x03\x21\xf3\x03\x41\x00\x29\x00\xf4\x03\x21\xf4\x03\x41\x00\x29\x00\xf5\x03\x21\xf5\x03\x41\x00\x29\x00\xf6\x03\x21\xf6\x03\x41\x00\x29\x00\xf7\x03\x21\xf7\x03\x41\x00\x29\x00\xf8\x03\x21\xf8\x03\x41\x00\x29\x00\xf9\x03\x21\xf9\x03\x41\x00\x29\x00\xfa\x03\x21\xfa\x03\x41\x00\x29\x00\xfb\x03\x21\xfb\x03\x41\x00\x29\x00\xfc\x03\x21\xfc\x03\x41\x00\x29\x00\xfd\x03\x21\xfd\x03\x41\x00\x29\x00\xfe\x03\x21\xfe\x03\x41\x00\x29\x00\xff\x03\x21\xff\x03\x41\x00\x29\x00\x80\x04\x21\x80\x04\x41\x00\x29\x00\x81\x04\x21\x81\x04\x41\x00\x29\x00\x82\x04\x21\x82\x04\x41\x00\x29\x00\x83\x04\x21\x83\x04\x41\x00\x29\x00\x84\x04\x21\x84\x04\x41\x00\x29\x00\x85\x04\x21\x85\x04\x41\x00\x29\x00\x86\x04\x21\x86\x04\x41\x00\x29\x00\x87\x04\x21\x87\x04\x41\x00\x29\x00\x88\x04\x21\x88\x04\x41\x00\x29\x00\x89\x04\x21\x89\x04\x41\x00\x29\x00\x8a\x04\x21\x8a\x04\x41\x00\x29\x00\x8b\x04\x21\x8b\x04\x41\x00\x29\x00\x8c\x04\x21\x8c\x04\x41\x00\x29\x00\x8d\x04\x21\x8d\x04\x41\x00\x29\x00\x8e\x04\x21\x8e\x04\x41\x00\x29\x00\x8f\x04\x21\x8f\x04\x41\x00\x29\x00\x90\x04\x21\x90\x04\x41\x00\x29\x00\x91\x04\x21\x91\x04\x41\x00\x29\x00\x92\x04\x21\x92\x04\x41\x00\x29\x00\x93\x04\x21\x93\x04\x41\x00\x29\x00\x94\x04\x21\x94\x04\x41\x00\x29\x00\x95\x04\x21\x95\x04\x41\x00\x29\x00\x96\x04\x21\x96\x04\x41\x00\x29\x00\x97\x04\x21\x97\x04\x41\x00\x29\x00\x98\x04\x21\x98\x04\x41\x00\x29\x00\x99\x04\x21\x99\x04\x41\x00\x29\x00\x9a\x04\x21\x9a\x04\x41\x00\x29\x00\x9b\x04\x21\x9b\x04\x41\x00\x29\x00\x9c\x04\x21\x9c\x04\x41\x00\x29\x00\x9d\x04\x21\x9d\x04\x41\x00\x29\x00\x9e\x04\x21\x9e\x04\x41\x00\x29\x00\x9f\x04\x21\x9f\x04\x41\x00\x29\x00\xa0\x04\x21\xa0\x04\x41\x00\x29\x00\xa1\x04\x21\xa1\x04\x41\x00\x29\x00\xa2\x04\x21\xa2\x04\x41\x00\x29\x00\xa3\x04\x21\xa3\x04\x41\x00\x29\x00\xa4\x04\x21\xa4\x04\x41\x00\x29\x00\xa5\x04\x21\xa5\x04\x41\x00\x29\x00\xa6\x04\x21\xa6\x04\x41\x00\x29\x00\xa7\x04\x21\xa7\x04\x41\x00\x29\x00\xa8\x04\x21\xa8\x04\x41\x00\x29\x00\xa9\x04\x21\xa9\x04\x41\x00\x29\x00\xaa\x04\x21\xaa\x04\x41\x00\x29\x00\xab\x04\x21\xab\x04\x41\x00\x29\x00\xac\x04\x21\xac\x04\x41\x00\x29\x00\xad\x04\x21\xad\x04\x41\x00\x29\x00\xae\x04\x21\xae\x04\x41\x00\x29\x00\xaf\x04\x21\xaf\x04\x41\x00\x29\x00\xb0\x04\x21\xb0\x04\x41\x00\x29\x00\xb1\x04\x21\xb1\x04\x41\x00\x29\x00\xb2\x04\x21\xb2\x04\x41\x00\x29\x00\xb3\x04\x21\xb3\x04\x41\x00\x29\x00\xb4\x04\x21\xb4\x04\x41\x00\x29\x00\xb5\x04\x21\xb5\x04\x41\x00\x29\x00\xb6\x04\x21\xb6\x04\x41\x00\x29\x00\xb7\x04\x21\xb7\x04\x41\x00\x29\x00\xb8\x04\x21\xb8\x04\x41\x00\x29\x00\xb9\x04\x21\xb9\x04\x41\x00\x29\x00\xba\x04\x21\xba\x04\x41\x00\x29\x00\xbb\x04\x21\xbb\x04\x41\x00\x29\x00\xbc\x04\x21\xbc\x04\x41\x00\x29\x00\xbd\x04\x21\xbd\x04\x41\x00\x29\x00\xbe\x04\x21\xbe\x04\x41\x00\x29\x00\xbf\x04\x21\xbf\x04\x41\x00\x29\x00\xc0\x04\x21\xc0\x04\x41\x00\x29\x00\xc1\x04\x21\xc1\x04\x41\x00\x29\x00\xc2\x04\x21\xc2\x04\x41\x00\x29\x00\xc3\x04\x21\xc3\x04\x41\x00\x29\x00\xc4\x04\x21\xc4\x04\x41\x00\x29\x00\xc5\x04\x21\xc5\x04\x41\x00\x29\x00\xc6\x04\x21\xc6\x04\x41\x00\x29\x00\xc7\x04\x21\xc7\x04\x41\x00\x29\x00\xc8\x04\x21\xc8\x04\x41\x00\x29\x00\xc9\x04\x21\xc9\x04\x41\x00\x29\x00\xca\x04\x21\xca\x04\x41\x00\x29\x00\xcb\x04\x21\xcb\x04\x41\x00\x29\x00\xcc\x04\x21\xcc\x04\x41\x00\x29\x00\xcd\x04\x21\xcd\x04\x41\x00\x29\x00\xce\x04\x21\xce\x04\x41\x00\x29\x00\xcf\x04\x21\xcf\x04\x41\x00\x29\x00\xd0\x04\x21\xd0\x04\x41\x00\x29\x00\xd1\x04\x21\xd1\x04\x41\x00\x29\x00\xd2\x04\x21\xd2\x04\x41\x00\x29\x00\xd3\x04\x21\xd3\x04\x41\x00\x29\x00\xd4\x04\x21\xd4\x04\x41\x00\x29\x00\xd5\x04\x21\xd5\x04\x41\x00\x29\x00\xd6\x04\x21\xd6\x04\x41\x00\x29\x00\xd7\x04\x21\xd7\x04\x41\x00\x29\x00\xd8\x04\x21\xd8\x04\x41\x00\x29\x00\xd9\x04\x21\xd9\x04\x41\x00\x29\x00\xda\x04\x21\xda\x04\x41\x00\x29\x00\xdb\x04\x21\xdb\x04\x41\x00\x29\x00\xdc\x04\x21\xdc\x04\x41\x00\x29\x00\xdd\x04\x21\xdd\x04\x41\x00\x29\x00\xde\x04\x21\xde\x04\x41\x00\x29\x00\xdf\x04\x21\xdf\x04\x41\x00\x29\x00\xe0\x04\x21\xe0\x04\x41\x00\x29\x00\xe1\x04\x21\xe1\x04\x41\x00\x29\x00\xe2\x04\x21\xe2\x04\x41\x00\x29\x00\xe3\x04\x21\xe3\x04\x41\x00\x29\x00\xe4\x04\x21\xe4\x04\x41\x00\x29\x00\xe5\x04\x21\xe5\x04\x41\x00\x29\x00\xe6\x04\x21\xe6\x04\x41\x00\x29\x00\xe7\x04\x21\xe7\x04\x41\x00\x29\x00\xe8\x04\x21\xe8\x04\x41\x00\x29\x00\xe9\x04\x21\xe9\x04\x41\x00\x29\x00\xea\x04\x21\xea\x04\x41\x00\x29\x00\xeb\x04\x21\xeb\x04\x41\x00\x29\x00\xec\x04\x21\xec\x04\x41\x00\x29\x00\xed\x04\x21\xed\x04\x41\x00\x29\x00\xee\x04\x21\xee\x04\x41\x00\x29\x00\xef\x04\x21\xef\x04\x41\x00\x29\x00\xf0\x04\x21\xf0\x04\x41\x00\x29\x00\xf1\x04\x21\xf1\x04\x41\x00\x29\x00\xf2\x04\x21\xf2\x04\x41\x00\x29\x00\xf3\x04\x21\xf3\x04\x41\x00\x29\x00\xf4\x04\x21\xf4\x04\x41\x00\x29\x00\xf5\x04\x21\xf5\x04\x41\x00\x29\x00\xf6\x04\x21\xf6\x04\x41\x00\x29\x00\xf7\x04\x21\xf7\x04\x41\x00\x29\x00\xf8\x04\x21\xf8\x04\x41\x00\x29\x00\xf9\x04\x21\xf9\x04\x41\x00\x29\x00\xfa\x04\x21\xfa\x04\x41\x00\x29\x00\xfb\x04\x21\xfb\x04\x41\x00\x29\x00\xfc\x04\x21\xfc\x04\x41\x00\x29\x00\xfd\x04\x21\xfd\x04\x41\x00\x29\x00\xfe\x04\x21\xfe\x04\x41\x00\x29\x00\xff\x04\x21\xff\x04\x41\x00\x29\x00\x80\x05\x21\x80\x05\x41\x00\x29\x00\x81\x05\x21\x81\x05\x41\x00\x29\x00\x82\x05\x21\x82\x05\x41\x00\x29\x00\x83\x05\x21\x83\x05\x41\x00\x29\x00\x84\x05\x21\x84\x05\x41\x00\x29\x00\x85\x05\x21\x85\x05\x41\x00\x29\x00\x86\x05\x21\x86\x05\x41\x00\x29\x00\x87\x05\x21\x87\x05\x41\x00\x29\x00\x88\x05\x21\x88\x05\x41\x00\x29\x00\x89\x05\x21\x89\x05\x41\x00\x29\x00\x8a\x05\x21\x8a\x05\x41\x00\x29\x00\x8b\x05\x21\x8b\x05\x41\x00\x29\x00\x8c\x05\x21\x8c\x05\x41\x00\x29\x00\x8d\x05\x21\x8d\x05\x41\x00\x29\x00\x8e\x05\x21\x8e\x05\x41\x00\x29\x00\x8f\x05\x21\x8f\x05\x41\x00\x29\x00\x90\x05\x21\x90\x05\x41\x00\x29\x00\x91\x05\x21\x91\x05\x41\x00\x29\x00\x92\x05\x21\x92\x05\x41\x00\x29\x00\x93\x05\x21\x93\x05\x41\x00\x29\x00\x94\x05\x21\x94\x05\x41\x00\x29\x00\x95\x05\x21\x95\x05\x41\x00\x29\x00\x96\x05\x21\x96\x05\x41\x00\x29\x00\x97\x05\x21\x97\x05\x41\x00\x29\x00\x98\x05\x21\x98\x05\x41\x00\x29\x00\x99\x05\x21\x99\x05\x41\x00\x29\x00\x9a\x05\x21\x9a\x05\x41\x00\x29\x00\x9b\x05\x21\x9b\x05\x41\x00\x29\x00\x9c\x05\x21\x9c\x05\x41\x00\x29\x00\x9d\x05\x21\x9d\x05\x41\x00\x29\x00\x9e\x05\x21\x9e\x05\x41\x00\x29\x00\x9f\x05\x21\x9f\x05\x41\x00\x29\x00\xa0\x05\x21\xa0\x05\x41\x00\x29\x00\xa1\x05\x21\xa1\x05\x41\x00\x29\x00\xa2\x05\x21\xa2\x05\x41\x00\x29\x00\xa3\x05\x21\xa3\x05\x41\x00\x29\x00\xa4\x05\x21\xa4\x05\x41\x00\x29\x00\xa5\x05\x21\xa5\x05\x41\x00\x29\x00\xa6\x05\x21\xa6\x05\x41\x00\x29\x00\xa7\x05\x21\xa7\x05\x41\x00\x29\x00\xa8\x05\x21\xa8\x05\x41\x00\x29\x00\xa9\x05\x21\xa9\x05\x41\x00\x29\x00\xaa\x05\x21\xaa\x05\x41\x00\x29\x00\xab\x05\x21\xab\x05\x41\x00\x29\x00\xac\x05\x21\xac\x05\x41\x00\x29\x00\xad\x05\x21\xad\x05\x41\x00\x29\x00\xae\x05\x21\xae\x05\x41\x00\x29\x00\xaf\x05\x21\xaf\x05\x41\x00\x29\x00\xb0\x05\x21\xb0\x05\x41\x00\x29\x00\xb1\x05\x21\xb1\x05\x41\x00\x29\x00\xb2\x05\x21\xb2\x05\x41\x00\x29\x00\xb3\x05\x21\xb3\x05\x41\x00\x29\x00\xb4\x05\x21\xb4\x05\x41\x00\x29\x00\xb5\x05\x21\xb5\x05\x41\x00\x29\x00\xb6\x05\x21\xb6\x05\x41\x00\x29\x00\xb7\x05\x21\xb7\x05\x41\x00\x29\x00\xb8\x05\x21\xb8\x05\x41\x00\x29\x00\xb9\x05\x21\xb9\x05\x41\x00\x29\x00\xba\x05\x21\xba\x05\x41\x00\x29\x00\xbb\x05\x21\xbb\x05\x41\x00\x29\x00\xbc\x05\x21\xbc\x05\x41\x00\x29\x00\xbd\x05\x21\xbd\x05\x41\x00\x29\x00\xbe\x05\x21\xbe\x05\x41\x00\x29\x00\xbf\x05\x21\xbf\x05\x41\x00\x29\x00\xc0\x05\x21\xc0\x05\x41\x00\x29\x00\xc1\x05\x21\xc1\x05\x41\x00\x29\x00\xc2\x05\x21\xc2\x05\x41\x00\x29\x00\xc3\x05\x21\xc3\x05\x41\x00\x29\x00\xc4\x05\x21\xc4\x05\x41\x00\x29\x00\xc5\x05\x21\xc5\x05\x41\x00\x29\x00\xc6\x05\x21\xc6\x05\x41\x00\x29\x00\xc7\x05\x21\xc7\x05\x41\x00\x29\x00\xc8\x05\x21\xc8\x05\x41\x00\x29\x00\xc9\x05\x21\xc9\x05\x41\x00\x29\x00\xca\x05\x21\xca\x05\x41\x00\x29\x00\xcb\x05\x21\xcb\x05\x41\x00\x29\x00\xcc\x05\x21\xcc\x05\x41\x00\x29\x00\xcd\x05\x21\xcd\x05\x41\x00\x29\x00\xce\x05\x21\xce\x05\x41\x00\x29\x00\xcf\x05\x21\xcf\x05\x41\x00\x29\x00\xd0\x05\x21\xd0\x05\x41\x00\x29\x00\xd1\x05\x21\xd1\x05\x41\x00\x29\x00\xd2\x05\x21\xd2\x05\x41\x00\x29\x00\xd3\x05\x21\xd3\x05\x41\x00\x29\x00\xd4\x05\x21\xd4\x05\x41\x00\x29\x00\xd5\x05\x21\xd5\x05\x41\x00\x29\x00\xd6\x05\x21\xd6\x05\x41\x00\x29\x00\xd7\x05\x21\xd7\x05\x41\x00\x29\x00\xd8\x05\x21\xd8\x05\x41\x00\x29\x00\xd9\x05\x21\xd9\x05\x41\x00\x29\x00\xda\x05\x21\xda\x05\x41\x00\x29\x00\xdb\x05\x21\xdb\x05\x41\x00\x29\x00\xdc\x05\x21\xdc\x05\x41\x00\x29\x00\xdd\x05\x21\xdd\x05\x41\x00\x29\x00\xde\x05\x21\xde\x05\x41\x00\x29\x00\xdf\x05\x21\xdf\x05\x41\x00\x29\x00\xe0\x05\x21\xe0\x05\x41\x00\x29\x00\xe1\x05\x21\xe1\x05\x41\x00\x29\x00\xe2\x05\x21\xe2\x05\x41\x00\x29\x00\xe3\x05\x21\xe3\x05\x41\x00\x29\x00\xe4\x05\x21\xe4\x05\x41\x00\x29\x00\xe5\x05\x21\xe5\x05\x41\x00\x29\x00\xe6\x05\x21\xe6\x05\x41\x00\x29\x00\xe7\x05\x21\xe7\x05\x41\x00\x29\x00\xe8\x05\x21\xe8\x05\x41\x00\x29\x00\xe9\x05\x21\xe9\x05\x41\x00\x29\x00\xea\x05\x21\xea\x05\x41\x00\x29\x00\xeb\x05\x21\xeb\x05\x41\x00\x29\x00\xec\x05\x21\xec\x05\x41\x00\x29\x00\xed\x05\x21\xed\x05\x41\x00\x29\x00\xee\x05\x21\xee\x05\x41\x00\x29\x00\xef\x05\x21\xef\x05\x41\x00\x29\x00\xf0\x05\x21\xf0\x05\x41\x00\x29\x00\xf1\x05\x21\xf1\x05\x41\x00\x29\x00\xf2\x05\x21\xf2\x05\x41\x00\x29\x00\xf3\x05\x21\xf3\x05\x41\x00\x29\x00\xf4\x05\x21\xf4\x05\x41\x00\x29\x00\xf5\x05\x21\xf5\x05\x41\x00\x29\x00\xf6\x05\x21\xf6\x05\x41\x00\x29\x00\xf7\x05\x21\xf7\x05\x41\x00\x29\x00\xf8\x05\x21\xf8\x05\x41\x00\x29\x00\xf9\x05\x21\xf9\x05\x41\x00\x29\x00\xfa\x05\x21\xfa\x05\x41\x00\x29\x00\xfb\x05\x21\xfb\x05\x41\x00\x29\x00\xfc\x05\x21\xfc\x05\x41\x00\x29\x00\xfd\x05\x21\xfd\x05\x41\x00\x29\x00\xfe\x05\x21\xfe\x05\x41\x00\x29\x00\xff\x05\x21\xff\x05\x41\x00\x29\x00\x80\x06\x21\x80\x06\x41\x00\x29\x00\x81\x06\x21\x81\x06\x41\x00\x29\x00\x82\x06\x21\x82\x06\x41\x00\x29\x00\x83\x06\x21\x83\x06\x41\x00\x29\x00\x84\x06\x21\x84\x06\x41\x00\x29\x00\x85\x06\x21\x85\x06\x41\x00\x29\x00\x86\x06\x21\x86\x06\x41\x00\x29\x00\x87\x06\x21\x87\x06\x41\x00\x29\x00\x88\x06\x21\x88\x06\x41\x00\x29\x00\x89\x06\x21\x89\x06\x41\x00\x29\x00\x8a\x06\x21\x8a\x06\x41\x00\x29\x00\x8b\x06\x21\x8b\x06\x41\x00\x29\x00\x8c\x06\x21\x8c\x06\x41\x00\x29\x00\x8d\x06\x21\x8d\x06\x41\x00\x29\x00\x8e\x06\x21\x8e\x06\x41\x00\x29\x00\x8f\x06\x21\x8f\x06\x41\x00\x29\x00\x90\x06\x21\x90\x06\x41\x00\x29\x00\x91\x06\x21\x91\x06\x41\x00\x29\x00\x92\x06\x21\x92\x06\x41\x00\x29\x00\x93\x06\x21\x93\x06\x41\x00\x29\x00\x94\x06\x21\x94\x06\x41\x00\x29\x00\x95\x06\x21\x95\x06\x41\x00\x29\x00\x96\x06\x21\x96\x06\x41\x00\x29\x00\x97\x06\x21\x97\x06\x41\x00\x29\x00\x98\x06\x21\x98\x06\x41\x00\x29\x00\x99\x06\x21\x99\x06\x41\x00\x29\x00\x9a\x06\x21\x9a\x06\x41\x00\x29\x00\x9b\x06\x21\x9b\x06\x41\x00\x29\x00\x9c\x06\x21\x9c\x06\x41\x00\x29\x00\x9d\x06\x21\x9d\x06\x41\x00\x29\x00\x9e\x06\x21\x9e\x06\x41\x00\x29\x00\x9f\x06\x21\x9f\x06\x41\x00\x29\x00\xa0\x06\x21\xa0\x06\x41\x00\x29\x00\xa1\x06\x21\xa1\x06\x41\x00\x29\x00\xa2\x06\x21\xa2\x06\x41\x00\x29\x00\xa3\x06\x21\xa3\x06\x41\x00\x29\x00\xa4\x06\x21\xa4\x06\x41\x00\x29\x00\xa5\x06\x21\xa5\x06\x41\x00\x29\x00\xa6\x06\x21\xa6\x06\x41\x00\x29\x00\xa7\x06\x21\xa7\x06\x41\x00\x29\x00\xa8\x06\x21\xa8\x06\x41\x00\x29\x00\xa9\x06\x21\xa9\x06\x41\x00\x29\x00\xaa\x06\x21\xaa\x06\x41\x00\x29\x00\xab\x06\x21\xab\x06\x41\x00\x29\x00\xac\x06\x21\xac\x06\x41\x00\x29\x00\xad\x06\x21\xad\x06\x41\x00\x29\x00\xae\x06\x21\xae\x06\x41\x00\x29\x00\xaf\x06\x21\xaf\x06\x41\x00\x29\x00\xb0\x06\x21\xb0\x06\x41\x00\x29\x00\xb1\x06\x21\xb1\x06\x41\x00\x29\x00\xb2\x06\x21\xb2\x06\x41\x00\x29\x00\xb3\x06\x21\xb3\x06\x41\x00\x29\x00\xb4\x06\x21\xb4\x06\x41\x00\x29\x00\xb5\x06\x21\xb5\x06\x41\x00\x29\x00\xb6\x06\x21\xb6\x06\x41\x00\x29\x00\xb7\x06\x21\xb7\x06\x41\x00\x29\x00\xb8\x06\x21\xb8\x06\x41\x00\x29\x00\xb9\x06\x21\xb9\x06\x41\x00\x29\x00\xba\x06\x21\xba\x06\x41\x00\x29\x00\xbb\x06\x21\xbb\x06\x41\x00\x29\x00\xbc\x06\x21\xbc\x06\x41\x00\x29\x00\xbd\x06\x21\xbd\x06\x41\x00\x29\x00\xbe\x06\x21\xbe\x06\x41\x00\x29\x00\xbf\x06\x21\xbf\x06\x41\x00\x29\x00\xc0\x06\x21\xc0\x06\x41\x00\x29\x00\xc1\x06\x21\xc1\x06\x41\x00\x29\x00\xc2\x06\x21\xc2\x06\x41\x00\x29\x00\xc3\x06\x21\xc3\x06\x41\x00\x29\x00\xc4\x06\x21\xc4\x06\x41\x00\x29\x00\xc5\x06\x21\xc5\x06\x41\x00\x29\x00\xc6\x06\x21\xc6\x06\x41\x00\x29\x00\xc7\x06\x21\xc7\x06\x41\x00\x29\x00\xc8\x06\x21\xc8\x06\x41\x00\x29\x00\xc9\x06\x21\xc9\x06\x41\x00\x29\x00\xca\x06\x21\xca\x06\x41\x00\x29\x00\xcb\x06\x21\xcb\x06\x41\x00\x29\x00\xcc\x06\x21\xcc\x06\x41\x00\x29\x00\xcd\x06\x21\xcd\x06\x41\x00\x29\x00\xce\x06\x21\xce\x06\x41\x00\x29\x00\xcf\x06\x21\xcf\x06\x41\x00\x29\x00\xd0\x06\x21\xd0\x06\x41\x00\x29\x00\xd1\x06\x21\xd1\x06\x41\x00\x29\x00\xd2\x06\x21\xd2\x06\x41\x00\x29\x00\xd3\x06\x21\xd3\x06\x41\x00\x29\x00\xd4\x06\x21\xd4\x06\x41\x00\x29\x00\xd5\x06\x21\xd5\x06\x41\x00\x29\x00\xd6\x06\x21\xd6\x06\x41\x00\x29\x00\xd7\x06\x21\xd7\x06\x41\x00\x29\x00\xd8\x06\x21\xd8\x06\x41\x00\x29\x00\xd9\x06\x21\xd9\x06\x41\x00\x29\x00\xda\x06\x21\xda\x06\x41\x00\x29\x00\xdb\x06\x21\xdb\x06\x41\x00\x29\x00\xdc\x06\x21\xdc\x06\x41\x00\x29\x00\xdd\x06\x21\xdd\x06\x41\x00\x29\x00\xde\x06\x21\xde\x06\x41\x00\x29\x00\xdf\x06\x21\xdf\x06\x41\x00\x29\x00\xe0\x06\x21\xe0\x06\x41\x00\x29\x00\xe1\x06\x21\xe1\x06\x41\x00\x29\x00\xe2\x06\x21\xe2\x06\x41\x00\x29\x00\xe3\x06\x21\xe3\x06\x41\x00\x29\x00\xe4\x06\x21\xe4\x06\x41\x00\x29\x00\xe5\x06\x21\xe5\x06\x41\x00\x29\x00\xe6\x06\x21\xe6\x06\x41\x00\x29\x00\xe7\x06\x21\xe7\x06\x41\x00\x29\x00\xe8\x06\x21\xe8\x06\x41\x00\x29\x00\xe9\x06\x21\xe9\x06\x41\x00\x29\x00\xea\x06\x21\xea\x06\x41\x00\x29\x00\xeb\x06\x21\xeb\x06\x41\x00\x29\x00\xec\x06\x21\xec\x06\x41\x00\x29\x00\xed\x06\x21\xed\x06\x41\x00\x29\x00\xee\x06\x21\xee\x06\x41\x00\x29\x00\xef\x06\x21\xef\x06\x41\x00\x29\x00\xf0\x06\x21\xf0\x06\x41\x00\x29\x00\xf1\x06\x21\xf1\x06\x41\x00\x29\x00\xf2\x06\x21\xf2\x06\x41\x00\x29\x00\xf3\x06\x21\xf3\x06\x41\x00\x29\x00\xf4\x06\x21\xf4\x06\x41\x00\x29\x00\xf5\x06\x21\xf5\x06\x41\x00\x29\x00\xf6\x06\x21\xf6\x06\x41\x00\x29\x00\xf7\x06\x21\xf7\x06\x41\x00\x29\x00\xf8\x06\x21\xf8\x06\x41\x00\x29\x00\xf9\x06\x21\xf9\x06\x41\x00\x29\x00\xfa\x06\x21\xfa\x06\x41\x00\x29\x00\xfb\x06\x21\xfb\x06\x41\x00\x29\x00\xfc\x06\x21\xfc\x06\x41\x00\x29\x00\xfd\x06\x21\xfd\x06\x41\x00\x29\x00\xfe\x06\x21\xfe\x06\x41\x00\x29\x00\xff\x06\x21\xff\x06\x41\x00\x29\x00\x80\x07\x21\x80\x07\x41\x00\x29\x00\x81\x07\x21\x81\x07\x41\x00\x29\x00\x82\x07\x21\x82\x07\x41\x00\x29\x00\x83\x07\x21\x83\x07\x41\x00\x29\x00\x84\x07\x21\x84\x07\x41\x00\x29\x00\x85\x07\x21\x85\x07\x41\x00\x29\x00\x86\x07\x21\x86\x07\x41\x00\x29\x00\x87\x07\x21\x87\x07\x41\x00\x29\x00\x88\x07\x21\x88\x07\x41\x00\x29\x00\x89\x07\x21\x89\x07\x41\x00\x29\x00\x8a\x07\x21\x8a\x07\x41\x00\x29\x00\x8b\x07\x21\x8b\x07\x41\x00\x29\x00\x8c\x07\x21\x8c\x07\x41\x00\x29\x00\x8d\x07\x21\x8d\x07\x41\x00\x29\x00\x8e\x07\x21\x8e\x07\x41\x00\x29\x00\x8f\x07\x21\x8f\x07\x41\x00\x29\x00\x90\x07\x21\x90\x07\x41\x00\x29\x00\x91\x07\x21\x91\x07\x41\x00\x29\x00\x92\x07\x21\x92\x07\x41\x00\x29\x00\x93\x07\x21\x93\x07\x41\x00\x29\x00\x94\x07\x21\x94\x07\x41\x00\x29\x00\x95\x07\x21\x95\x07\x41\x00\x29\x00\x96\x07\x21\x96\x07\x41\x00\x29\x00\x97\x07\x21\x97\x07\x41\x00\x29\x00\x98\x07\x21\x98\x07\x41\x00\x29\x00\x99\x07\x21\x99\x07\x41\x00\x29\x00\x9a\x07\x21\x9a\x07\x41\x00\x29\x00\x9b\x07\x21\x9b\x07\x41\x00\x29\x00\x9c\x07\x21\x9c\x07\x41\x00\x29\x00\x9d\x07\x21\x9d\x07\x41\x00\x29\x00\x9e\x07\x21\x9e\x07\x41\x00\x29\x00\x9f\x07\x21\x9f\x07\x41\x00\x29\x00\xa0\x07\x21\xa0\x07\x41\x00\x29\x00\xa1\x07\x21\xa1\x07\x41\x00\x29\x00\xa2\x07\x21\xa2\x07\x41\x00\x29\x00\xa3\x07\x21\xa3\x07\x41\x00\x29\x00\xa4\x07\x21\xa4\x07\x41\x00\x29\x00\xa5\x07\x21\xa5\x07\x41\x00\x29\x00\xa6\x07\x21\xa6\x07\x41\x00\x29\x00\xa7\x07\x21\xa7\x07\x41\x00\x29\x00\xa8\x07\x21\xa8\x07\x41\x00\x29\x00\xa9\x07\x21\xa9\x07\x41\x00\x29\x00\xaa\x07\x21\xaa\x07\x41\x00\x29\x00\xab\x07\x21\xab\x07\x41\x00\x29\x00\xac\x07\x21\xac\x07\x41\x00\x29\x00\xad\x07\x21\xad\x07\x41\x00\x29\x00\xae\x07\x21\xae\x07\x41\x00\x29\x00\xaf\x07\x21\xaf\x07\x41\x00\x29\x00\xb0\x07\x21\xb0\x07\x41\x00\x29\x00\xb1\x07\x21\xb1\x07\x41\x00\x29\x00\xb2\x07\x21\xb2\x07\x41\x00\x29\x00\xb3\x07\x21\xb3\x07\x41\x00\x29\x00\xb4\x07\x21\xb4\x07\x41\x00\x29\x00\xb5\x07\x21\xb5\x07\x41\x00\x29\x00\xb6\x07\x21\xb6\x07\x41\x00\x29\x00\xb7\x07\x21\xb7\x07\x41\x00\x29\x00\xb8\x07\x21\xb8\x07\x41\x00\x29\x00\xb9\x07\x21\xb9\x07\x41\x00\x29\x00\xba\x07\x21\xba\x07\x41\x00\x29\x00\xbb\x07\x21\xbb\x07\x41\x00\x29\x00\xbc\x07\x21\xbc\x07\x41\x00\x29\x00\xbd\x07\x21\xbd\x07\x41\x00\x29\x00\xbe\x07\x21\xbe\x07\x41\x00\x29\x00\xbf\x07\x21\xbf\x07\x41\x00\x29\x00\xc0\x07\x21\xc0\x07\x41\x00\x29\x00\xc1\x07\x21\xc1\x07\x41\x00\x29\x00\xc2\x07\x21\xc2\x07\x41\x00\x29\x00\xc3\x07\x21\xc3\x07\x41\x00\x29\x00\xc4\x07\x21\xc4\x07\x41\x00\x29\x00\xc5\x07\x21\xc5\x07\x41\x00\x29\x00\xc6\x07\x21\xc6\x07\x41\x00\x29\x00\xc7\x07\x21\xc7\x07\x41\x00\x29\x00\xc8\x07\x21\xc8\x07\x41\x00\x29\x00\xc9\x07\x21\xc9\x07\x41\x00\x29\x00\xca\x07\x21\xca\x07\x41\x00\x29\x00\xcb\x07\x21\xcb\x07\x41\x00\x29\x00\xcc\x07\x21\xcc\x07\x41\x00\x29\x00\xcd\x07\x21\xcd\x07\x41\x00\x29\x00\xce\x07\x21\xce\x07\x41\x00\x29\x00\xcf\x07\x21\xcf\x07\x41\x00\x29\x00\xd0\x07\x21\xd0\x07\x41\x00\x29\x00\xd1\x07\x21\xd1\x07\x41\x00\x29\x00\xd2\x07\x21\xd2\x07\x41\x00\x29\x00\xd3\x07\x21\xd3\x07\x41\x00\x29\x00\xd4\x07\x21\xd4\x07\x41\x00\x29\x00\xd5\x07\x21\xd5\x07\x41\x00\x29\x00\xd6\x07\x21\xd6\x07\x41\x00\x29\x00\xd7\x07\x21\xd7\x07\x41\x00\x29\x00\xd8\x07\x21\xd8\x07\x41\x00\x29\x00\xd9\x07\x21\xd9\x07\x41\x00\x29\x00\xda\x07\x21\xda\x07\x41\x00\x29\x00\xdb\x07\x21\xdb\x07\x41\x00\x29\x00\xdc\x07\x21\xdc\x07\x41\x00\x29\x00\xdd\x07\x21\xdd\x07\x41\x00\x29\x00\xde\x07\x21\xde\x07\x41\x00\x29\x00\xdf\x07\x21\xdf\x07\x41\x00\x29\x00\xe0\x07\x21\xe0\x07\x41\x00\x29\x00\xe1\x07\x21\xe1\x07\x41\x00\x29\x00\xe2\x07\x21\xe2\x07\x41\x00\x29\x00\xe3\x07\x21\xe3\x07\x41\x00\x29\x00\xe4\x07\x21\xe4\x07\x41\x00\x29\x00\xe5\x07\x21\xe5\x07\x41\x00\x29\x00\xe6\x07\x21\xe6\x07\x41\x00\x29\x00\xe7\x07\x21\xe7\x07\x41\x00\x29\x00\xe8\x07\x21\xe8\x07\x41\x00\x29\x00\xe9\x07\x21\xe9\x07\x41\x00\x29\x00\xea\x07\x21\xea\x07\x41\x00\x29\x00\xeb\x07\x21\xeb\x07\x41\x00\x29\x00\xec\x07\x21\xec\x07\x41\x00\x29\x00\xed\x07\x21\xed\x07\x41\x00\x29\x00\xee\x07\x21\xee\x07\x41\x00\x29\x00\xef\x07\x21\xef\x07\x41\x00\x29\x00\xf0\x07\x21\xf0\x07\x41\x00\x29\x00\xf1\x07\x21\xf1\x07\x41\x00\x29\x00\xf2\x07\x21\xf2\x07\x41\x00\x29\x00\xf3\x07\x21\xf3\x07\x41\x00\x29\x00\xf4\x07\x21\xf4\x07\x41\x00\x29\x00\xf5\x07\x21\xf5\x07\x41\x00\x29\x00\xf6\x07\x21\xf6\x07\x41\x00\x29\x00\xf7\x07\x21\xf7\x07\x41\x00\x29\x00\xf8\x07\x21\xf8\x07\x41\x00\x29\x00\xf9\x07\x21\xf9\x07\x41\x00\x29\x00\xfa\x07\x21\xfa\x07\x41\x00\x29\x00\xfb\x07\x21\xfb\x07\x41\x00\x29\x00\xfc\x07\x21\xfc\x07\x41\x00\x29\x00\xfd\x07\x21\xfd\x07\x41\x00\x29\x00\xfe\x07\x21\xfe\x07\x41\x00\x29\x00\xff\x07\x21\xff\x07\x41\x00\x29\x00\x80\x08\x21\x80\x08\x41\x00\x29\x00\x81\x08\x21\x81\x08\x41\x00\x29\x00\x82\x08\x21\x82\x08\x41\x00\x29\x00\x83\x08\x21\x83\x08\x41\x00\x29\x00\x84\x08\x21\x84\x08\x41\x00\x29\x00\x85\x08\x21\x85\x08\x41\x00\x29\x00\x86\x08\x21\x86\x08\x41\x00\x29\x00\x87\x08\x21\x87\x08\x41\x00\x29\x00\x88\x08\x21\x88\x08\x41\x00\x29\x00\x89\x08\x21\x89\x08\x41\x00\x29\x00\x8a\x08\x21\x8a\x08\x41\x00\x29\x00\x8b\x08\x21\x8b\x08\x41\x00\x29\x00\x8c\x08\x21\x8c\x08\x41\x00\x29\x00\x8d\x08\x21\x8d\x08\x41\x00\x29\x00\x8e\x08\x21\x8e\x08\x41\x00\x29\x00\x8f\x08\x21\x8f\x08\x41\x00\x29\x00\x90\x08\x21\x90\x08\x41\x00\x29\x00\x91\x08\x21\x91\x08\x41\x00\x29\x00\x92\x08\x21\x92\x08\x41\x00\x29\x00\x93\x08\x21\x93\x08\x41\x00\x29\x00\x94\x08\x21\x94\x08\x41\x00\x29\x00\x95\x08\x21\x95\x08\x41\x00\x29\x00\x96\x08\x21\x96\x08\x41\x00\x29\x00\x97\x08\x21\x97\x08\x41\x00\x29\x00\x98\x08\x21\x98\x08\x41\x00\x29\x00\x99\x08\x21\x99\x08\x41\x00\x29\x00\x9a\x08\x21\x9a\x08\x41\x00\x29\x00\x9b\x08\x21\x9b\x08\x41\x00\x29\x00\x9c\x08\x21\x9c\x08\x41\x00\x29\x00\x9d\x08\x21\x9d\x08\x41\x00\x29\x00\x9e\x08\x21\x9e\x08\x41\x00\x29\x00\x9f\x08\x21\x9f\x08\x41\x00\x20\x00\x37\x00\x00\x41\x00\x20\x01\x37\x00\x01\x41\x00\x20\x02\x37\x00\x02\x41\x00\x20\x03\x37\x00\x03\x41\x00\x20\x04\x37\x00\x04\x41\x00\x20\x05\x37\x00\x05\x41\x00\x20\x06\x37\x00\x06\x41\x00\x20\x07\x37\x00\x07\x41\x00\x20\x08\x37\x00\x08\x41\x00\x20\x09\x37\x00\x09\x41\x00\x20\x0a\x37\x00\x0a\x41\x00\x20\x0b\x37\x00\x0b\x41\x00\x20\x0c\x37\x00\x0c\x41\x00\x20\x0d\x37\x00\x0d\x41\x00\x20\x0e\x37\x00\x0e\x41\x00\x20\x0f\x37\x00\x0f\x41\x00\x20\x10\x37\x00\x10\x41\x00\x20\x11\x37\x00\x11\x41\x00\x20\x12\x37\x00\x12\x41\x00\x20\x13\x37\x00\x13\x41\x00\x20\x14\x37\x00\x14\x41\x00\x20\x15\x37\x00\x15\x41\x00\x20\x16\x37\x00\x16\x41\x00\x20\x17\x37\x00\x17\x41\x00\x20\x18\x37\x00\x18\x41\x00\x20\x19\x37\x00\x19\x41\x00\x20\x1a\x37\x00\x1a\x41\x00\x20\x1b\x37\x00\x1b\x41\x00\x20\x1c\x37\x00\x1c\x41\x00\x20\x1d\x37\x00\x1d\x41\x00\x20\x1e\x37\x00\x1e\x41\x00\x20\x1f\x37\x00\x1f\x41\x00\x20\x20\x37\x00\x20\x41\x00\x20\x21\x37\x00\x21\x41\x00\x20\x22\x37\x00\x22\x41\x00\x20\x23\x37\x00\x23\x41\x00\x20\x24\x37\x00\x24\x41\x00\x20\x25\x37\x00\x25\x41\x00\x20\x26\x37\x00\x26\x41\x00\x20\x27\x37\x00\x27\x41\x00\x20\x28\x37\x00\x28\x41\x00\x20\x29\x37\x00\x29\x41\x00\x20\x2a\x37\x00\x2a\x41\x00\x20\x2b\x37\x00\x2b\x41\x00\x20\x2c\x37\x00\x2c\x41\x00\x20\x2d\x37\x00\x2d\x41\x00\x20\x2e\x37\x00\x2e\x41\x00\x20\x2f\x37\x00\x2f\x41\x00\x20\x30\x37\x00\x30\x41\x00\x20\x31\x37\x00\x31\x41\x00\x20\x32\x37\x00\x32\x41\x00\x20\x33\x37\x00\x33\x41\x00\x20\x34\x37\x00\x34\x41\x00\x20\x35\x37\x00\x35\x41\x00\x20\x36\x37\x00\x36\x41\x00\x20\x37\x37\x00\x37\x41\x00\x20\x38\x37\x00\x38\x41\x00\x20\x39\x37\x00\x39\x41\x00\x20\x3a\x37\x00\x3a\x41\x00\x20\x3b\x37\x00\x3b\x41\x00\x20\x3c\x37\x00\x3c\x41\x00\x20\x3d\x37\x00\x3d\x41\x00\x20\x3e\x37\x00\x3e\x41\x00\x20\x3f\x37\x00\x3f\x41\x00\x20\x40\x37\x00\x40\x41\x00\x20\x41\x37\x00\x41\x41\x00\x20\x42\x37\x00\x42\x41\x00\x20\x43\x37\x00\x43\x41\x00\x20\x44\x37\x00\x44\x41\x00\x20\x45\x37\x00\x45\x41\x00\x20\x46\x37\x00\x46\x41\x00\x20\x47\x37\x00\x47\x41\x00\x20\x48\x37\x00\x48\x41\x00\x20\x49\x37\x00\x49\x41\x00\x20\x4a\x37\x00\x4a\x41\x00\x20\x4b\x37\x00\x4b\x41\x00\x20\x4c\x37\x00\x4c\x41\x00\x20\x4d\x37\x00\x4d\x41\x00\x20\x4e\x37\x00\x4e\x41\x00\x20\x4f\x37\x00\x4f\x41\x00\x20\x50\x37\x00\x50\x41\x00\x20\x51\x37\x00\x51\x41\x00\x20\x52\x37\x00\x52\x41\x00\x20\x53\x37\x00\x53\x41\x00\x20\x54\x37\x00\x54\x41\x00\x20\x55\x37\x00\x55\x41\x00\x20\x56\x37\x00\x56\x41\x00\x20\x57\x37\x00\x57\x41\x00\x20\x58\x37\x00\x58\x41\x00\x20\x59\x37\x00\x59\x41\x00\x20\x5a\x37\x00\x5a\x41\x00\x20\x5b\x37\x00\x5b\x41\x00\x20\x5c\x37\x00\x5c\x41\x00\x20\x5d\x37\x00\x5d\x41\x00\x20\x5e\x37\x00\x5e\x41\x00\x20\x5f\x37\x00\x5f\x41\x00\x20\x60\x37\x00\x60\x41\x00\x20\x61\x37\x00\x61\x41\x00\x20\x62\x37\x00\x62\x41\x00\x20\x63\x37\x00\x63\x41\x00\x20\x64\x37\x00\x64\x41\x00\x20\x65\x37\x00\x65\x41\x00\x20\x66\x37\x00\x66\x41\x00\x20\x67\x37\x00\x67\x41\x00\x20\x68\x37\x00\x68\x41\x00\x20\x69\x37\x00\x69\x41\x00\x20\x6a\x37\x00\x6a\x41\x00\x20\x6b\x37\x00\x6b\x41\x00\x20\x6c\x37\x00\x6c\x41\x00\x20\x6d\x37\x00\x6d\x41\x00\x20\x6e\x37\x00\x6e\x41\x00\x20\x6f\x37\x00\x6f\x41\x00\x20\x70\x37\x00\x70\x41\x00\x20\x71\x37\x00\x71\x41\x00\x20\x72\x37\x00\x72\x41\x00\x20\x73\x37\x00\x73\x41\x00\x20\x74\x37\x00\x74\x41\x00\x20\x75\x37\x00\x75\x41\x00\x20\x76\x37\x00\x76\x41\x00\x20\x77\x37\x00\x77\x41\x00\x20\x78\x37\x00\x78\x41\x00\x20\x79\x37\x00\x79\x41\x00\x20\x7a\x37\x00\x7a\x41\x00\x20\x7b\x37\x00\x7b\x41\x00\x20\x7c\x37\x00\x7c\x41\x00\x20\x7d\x37\x00\x7d\x41\x00\x20\x7e\x37\x00\x7e\x41\x00\x20\x7f\x37\x00\x7f\x41\x00\x20\x80\x01\x37\x00\x80\x01\x41\x00\x20\x81\x01\x37\x00\x81\x01\x41\x00\x20\x82\x01\x37\x00\x82\x01\x41\x00\x20\x83\x01\x37\x00\x83\x01\x41\x00\x20\x84\x01\x37\x00\x84\x01\x41\x00\x20\x85\x01\x37\x00\x85\x01\x41\x00\x20\x86\x01\x37\x00\x86\x01\x41\x00\x20\x87\x01\x37\x00\x87\x01\x41\x00\x20\x88\x01\x37\x00\x88\x01\x41\x00\x20\x89\x01\x37\x00\x89\x01\x41\x00\x20\x8a\x01\x37\x00\x8a\x01\x41\x00\x20\x8b\x01\x37\x00\x8b\x01\x41\x00\x20\x8c\x01\x37\x00\x8c\x01\x41\x00\x20\x8d\x01\x37\x00\x8d\x01\x41\x00\x20\x8e\x01\x37\x00\x8e\x01\x41\x00\x20\x8f\x01\x37\x00\x8f\x01\x41\x00\x20\x90\x01\x37\x00\x90\x01\x41\x00\x20\x91\x01\x37\x00\x91\x01\x41\x00\x20\x92\x01\x37\x00\x92\x01\x41\x00\x20\x93\x01\x37\x00\x93\x01\x41\x00\x20\x94\x01\x37\x00\x94\x01\x41\x00\x20\x95\x01\x37\x00\x95\x01\x41\x00\x20\x96\x01\x37\x00\x96\x01\x41\x00\x20\x97\x01\x37\x00\x97\x01\x41\x00\x20\x98\x01\x37\x00\x98\x01\x41\x00\x20\x99\x01\x37\x00\x99\x01\x41\x00\x20\x9a\x01\x37\x00\x9a\x01\x41\x00\x20\x9b\x01\x37\x00\x9b\x01\x41\x00\x20\x9c\x01\x37\x00\x9c\x01\x41\x00\x20\x9d\x01\x37\x00\x9d\x01\x41\x00\x20\x9e\x01\x37\x00\x9e\x01\x41\x00\x20\x9f\x01\x37\x00\x9f\x01\x41\x00\x20\xa0\x01\x37\x00\xa0\x01\x41\x00\x20\xa1\x01\x37\x00\xa1\x01\x41\x00\x20\xa2\x01\x37\x00\xa2\x01\x41\x00\x20\xa3\x01\x37\x00\xa3\x01\x41\x00\x20\xa4\x01\x37\x00\xa4\x01\x41\x00\x20\xa5\x01\x37\x00\xa5\x01\x41\x00\x20\xa6\x01\x37\x00\xa6\x01\x41\x00\x20\xa7\x01\x37\x00\xa7\x01\x41\x00\x20\xa8\x01\x37\x00\xa8\x01\x41\x00\x20\xa9\x01\x37\x00\xa9\x01\x41\x00\x20\xaa\x01\x37\x00\xaa\x01\x41\x00\x20\xab\x01\x37\x00\xab\x01\x41\x00\x20\xac\x01\x37\x00\xac\x01\x41\x00\x20\xad\x01\x37\x00\xad\x01\x41\x00\x20\xae\x01\x37\x00\xae\x01\x41\x00\x20\xaf\x01\x37\x00\xaf\x01\x41\x00\x20\xb0\x01\x37\x00\xb0\x01\x41\x00\x20\xb1\x01\x37\x00\xb1\x01\x41\x00\x20\xb2\x01\x37\x00\xb2\x01\x41\x00\x20\xb3\x01\x37\x00\xb3\x01\x41\x00\x20\xb4\x01\x37\x00\xb4\x01\x41\x00\x20\xb5\x01\x37\x00\xb5\x01\x41\x00\x20\xb6\x01\x37\x00\xb6\x01\x41\x00\x20\xb7\x01\x37\x00\xb7\x01\x41\x00\x20\xb8\x01\x37\x00\xb8\x01\x41\x00\x20\xb9\x01\x37\x00\xb9\x01\x41\x00\x20\xba\x01\x37\x00\xba\x01\x41\x00\x20\xbb\x01\x37\x00\xbb\x01\x41\x00\x20\xbc\x01\x37\x00\xbc\x01\x41\x00\x20\xbd\x01\x37\x00\xbd\x01\x41\x00\x20\xbe\x01\x37\x00\xbe\x01\x41\x00\x20\xbf\x01\x37\x00\xbf\x01\x41\x00\x20\xc0\x01\x37\x00\xc0\x01\x41\x00\x20\xc1\x01\x37\x00\xc1\x01\x41\x00\x20\xc2\x01\x37\x00\xc2\x01\x41\x00\x20\xc3\x01\x37\x00\xc3\x01\x41\x00\x20\xc4\x01\x37\x00\xc4\x01\x41\x00\x20\xc5\x01\x37\x00\xc5\x01\x41\x00\x20\xc6\x01\x37\x00\xc6\x01\x41\x00\x20\xc7\x01\x37\x00\xc7\x01\x41\x00\x20\xc8\x01\x37\x00\xc8\x01\x41\x00\x20\xc9\x01\x37\x00\xc9\x01\x41\x00\x20\xca\x01\x37\x00\xca\x01\x41\x00\x20\xcb\x01\x37\x00\xcb\x01\x41\x00\x20\xcc\x01\x37\x00\xcc\x01\x41\x00\x20\xcd\x01\x37\x00\xcd\x01\x41\x00\x20\xce\x01\x37\x00\xce\x01\x41\x00\x20\xcf\x01\x37\x00\xcf\x01\x41\x00\x20\xd0\x01\x37\x00\xd0\x01\x41\x00\x20\xd1\x01\x37\x00\xd1\x01\x41\x00\x20\xd2\x01\x37\x00\xd2\x01\x41\x00\x20\xd3\x01\x37\x00\xd3\x01\x41\x00\x20\xd4\x01\x37\x00\xd4\x01\x41\x00\x20\xd5\x01\x37\x00\xd5\x01\x41\x00\x20\xd6\x01\x37\x00\xd6\x01\x41\x00\x20\xd7\x01\x37\x00\xd7\x01\x41\x00\x20\xd8\x01\x37\x00\xd8\x01\x41\x00\x20\xd9\x01\x37\x00\xd9\x01\x41\x00\x20\xda\x01\x37\x00\xda\x01\x41\x00\x20\xdb\x01\x37\x00\xdb\x01\x41\x00\x20\xdc\x01\x37\x00\xdc\x01\x41\x00\x20\xdd\x01\x37\x00\xdd\x01\x41\x00\x20\xde\x01\x37\x00\xde\x01\x41\x00\x20\xdf\x01\x37\x00\xdf\x01\x41\x00\x20\xe0\x01\x37\x00\xe0\x01\x41\x00\x20\xe1\x01\x37\x00\xe1\x01\x41\x00\x20\xe2\x01\x37\x00\xe2\x01\x41\x00\x20\xe3\x01\x37\x00\xe3\x01\x41\x00\x20\xe4\x01\x37\x00\xe4\x01\x41\x00\x20\xe5\x01\x37\x00\xe5\x01\x41\x00\x20\xe6\x01\x37\x00\xe6\x01\x41\x00\x20\xe7\x01\x37\x00\xe7\x01\x41\x00\x20\xe8\x01\x37\x00\xe8\x01\x41\x00\x20\xe9\x01\x37\x00\xe9\x01\x41\x00\x20\xea\x01\x37\x00\xea\x01\x41\x00\x20\xeb\x01\x37\x00\xeb\x01\x41\x00\x20\xec\x01\x37\x00\xec\x01\x41\x00\x20\xed\x01\x37\x00\xed\x01\x41\x00\x20\xee\x01\x37\x00\xee\x01\x41\x00\x20\xef\x01\x37\x00\xef\x01\x41\x00\x20\xf0\x01\x37\x00\xf0\x01\x41\x00\x20\xf1\x01\x37\x00\xf1\x01\x41\x00\x20\xf2\x01\x37\x00\xf2\x01\x41\x00\x20\xf3\x01\x37\x00\xf3\x01\x41\x00\x20\xf4\x01\x37\x00\xf4\x01\x41\x00\x20\xf5\x01\x37\x00\xf5\x01\x41\x00\x20\xf6\x01\x37\x00\xf6\x01\x41\x00\x20\xf7\x01\x37\x00\xf7\x01\x41\x00\x20\xf8\x01\x37\x00\xf8\x01\x41\x00\x20\xf9\x01\x37\x00\xf9\x01\x41\x00\x20\xfa\x01\x37\x00\xfa\x01\x41\x00\x20\xfb\x01\x37\x00\xfb\x01\x41\x00\x20\xfc\x01\x37\x00\xfc\x01\x41\x00\x20\xfd\x01\x37\x00\xfd\x01\x41\x00\x20\xfe\x01\x37\x00\xfe\x01\x41\x00\x20\xff\x01\x37\x00\xff\x01\x41\x00\x20\x80\x02\x37\x00\x80\x02\x41\x00\x20\x81\x02\x37\x00\x81\x02\x41\x00\x20\x82\x02\x37\x00\x82\x02\x41\x00\x20\x83\x02\x37\x00\x83\x02\x41\x00\x20\x84\x02\x37\x00\x84\x02\x41\x00\x20\x85\x02\x37\x00\x85\x02\x41\x00\x20\x86\x02\x37\x00\x86\x02\x41\x00\x20\x87\x02\x37\x00\x87\x02\x41\x00\x20\x88\x02\x37\x00\x88\x02\x41\x00\x20\x89\x02\x37\x00\x89\x02\x41\x00\x20\x8a\x02\x37\x00\x8a\x02\x41\x00\x20\x8b\x02\x37\x00\x8b\x02\x41\x00\x20\x8c\x02\x37\x00\x8c\x02\x41\x00\x20\x8d\x02\x37\x00\x8d\x02\x41\x00\x20\x8e\x02\x37\x00\x8e\x02\x41\x00\x20\x8f\x02\x37\x00\x8f\x02\x41\x00\x20\x90\x02\x37\x00\x90\x02\x41\x00\x20\x91\x02\x37\x00\x91\x02\x41\x00\x20\x92\x02\x37\x00\x92\x02\x41\x00\x20\x93\x02\x37\x00\x93\x02\x41\x00\x20\x94\x02\x37\x00\x94\x02\x41\x00\x20\x95\x02\x37\x00\x95\x02\x41\x00\x20\x96\x02\x37\x00\x96\x02\x41\x00\x20\x97\x02\x37\x00\x97\x02\x41\x00\x20\x98\x02\x37\x00\x98\x02\x41\x00\x20\x99\x02\x37\x00\x99\x02\x41\x00\x20\x9a\x02\x37\x00\x9a\x02\x41\x00\x20\x9b\x02\x37\x00\x9b\x02\x41\x00\x20\x9c\x02\x37\x00\x9c\x02\x41\x00\x20\x9d\x02\x37\x00\x9d\x02\x41\x00\x20\x9e\x02\x37\x00\x9e\x02\x41\x00\x20\x9f\x02\x37\x00\x9f\x02\x41\x00\x20\xa0\x02\x37\x00\xa0\x02\x41\x00\x20\xa1\x02\x37\x00\xa1\x02\x41\x00\x20\xa2\x02\x37\x00\xa2\x02\x41\x00\x20\xa3\x02\x37\x00\xa3\x02\x41\x00\x20\xa4\x02\x37\x00\xa4\x02\x41\x00\x20\xa5\x02\x37\x00\xa5\x02\x41\x00\x20\xa6\x02\x37\x00\xa6\x02\x41\x00\x20\xa7\x02\x37\x00\xa7\x02\x41\x00\x20\xa8\x02\x37\x00\xa8\x02\x41\x00\x20\xa9\x02\x37\x00\xa9\x02\x41\x00\x20\xaa\x02\x37\x00\xaa\x02\x41\x00\x20\xab\x02\x37\x00\xab\x02\x41\x00\x20\xac\x02\x37\x00\xac\x02\x41\x00\x20\xad\x02\x37\x00\xad\x02\x41\x00\x20\xae\x02\x37\x00\xae\x02\x41\x00\x20\xaf\x02\x37\x00\xaf\x02\x41\x00\x20\xb0\x02\x37\x00\xb0\x02\x41\x00\x20\xb1\x02\x37\x00\xb1\x02\x41\x00\x20\xb2\x02\x37\x00\xb2\x02\x41\x00\x20\xb3\x02\x37\x00\xb3\x02\x41\x00\x20\xb4\x02\x37\x00\xb4\x02\x41\x00\x20\xb5\x02\x37\x00\xb5\x02\x41\x00\x20\xb6\x02\x37\x00\xb6\x02\x41\x00\x20\xb7\x02\x37\x00\xb7\x02\x41\x00\x20\xb8\x02\x37\x00\xb8\x02\x41\x00\x20\xb9\x02\x37\x00\xb9\x02\x41\x00\x20\xba\x02\x37\x00\xba\x02\x41\x00\x20\xbb\x02\x37\x00\xbb\x02\x41\x00\x20\xbc\x02\x37\x00\xbc\x02\x41\x00\x20\xbd\x02\x37\x00\xbd\x02\x41\x00\x20\xbe\x02\x37\x00\xbe\x02\x41\x00\x20\xbf\x02\x37\x00\xbf\x02\x41\x00\x20\xc0\x02\x37\x00\xc0\x02\x41\x00\x20\xc1\x02\x37\x00\xc1\x02\x41\x00\x20\xc2\x02\x37\x00\xc2\x02\x41\x00\x20\xc3\x02\x37\x00\xc3\x02\x41\x00\x20\xc4\x02\x37\x00\xc4\x02\x41\x00\x20\xc5\x02\x37\x00\xc5\x02\x41\x00\x20\xc6\x02\x37\x00\xc6\x02\x41\x00\x20\xc7\x02\x37\x00\xc7\x02\x41\x00\x20\xc8\x02\x37\x00\xc8\x02\x41\x00\x20\xc9\x02\x37\x00\xc9\x02\x41\x00\x20\xca\x02\x37\x00\xca\x02\x41\x00\x20\xcb\x02\x37\x00\xcb\x02\x41\x00\x20\xcc\x02\x37\x00\xcc\x02\x41\x00\x20\xcd\x02\x37\x00\xcd\x02\x41\x00\x20\xce\x02\x37\x00\xce\x02\x41\x00\x20\xcf\x02\x37\x00\xcf\x02\x41\x00\x20\xd0\x02\x37\x00\xd0\x02\x41\x00\x20\xd1\x02\x37\x00\xd1\x02\x41\x00\x20\xd2\x02\x37\x00\xd2\x02\x41\x00\x20\xd3\x02\x37\x00\xd3\x02\x41\x00\x20\xd4\x02\x37\x00\xd4\x02\x41\x00\x20\xd5\x02\x37\x00\xd5\x02\x41\x00\x20\xd6\x02\x37\x00\xd6\x02\x41\x00\x20\xd7\x02\x37\x00\xd7\x02\x41\x00\x20\xd8\x02\x37\x00\xd8\x02\x41\x00\x20\xd9\x02\x37\x00\xd9\x02\x41\x00\x20\xda\x02\x37\x00\xda\x02\x41\x00\x20\xdb\x02\x37\x00\xdb\x02\x41\x00\x20\xdc\x02\x37\x00\xdc\x02\x41\x00\x20\xdd\x02\x37\x00\xdd\x02\x41\x00\x20\xde\x02\x37\x00\xde\x02\x41\x00\x20\xdf\x02\x37\x00\xdf\x02\x41\x00\x20\xe0\x02\x37\x00\xe0\x02\x41\x00\x20\xe1\x02\x37\x00\xe1\x02\x41\x00\x20\xe2\x02\x37\x00\xe2\x02\x41\x00\x20\xe3\x02\x37\x00\xe3\x02\x41\x00\x20\xe4\x02\x37\x00\xe4\x02\x41\x00\x20\xe5\x02\x37\x00\xe5\x02\x41\x00\x20\xe6\x02\x37\x00\xe6\x02\x41\x00\x20\xe7\x02\x37\x00\xe7\x02\x41\x00\x20\xe8\x02\x37\x00\xe8\x02\x41\x00\x20\xe9\x02\x37\x00\xe9\x02\x41\x00\x20\xea\x02\x37\x00\xea\x02\x41\x00\x20\xeb\x02\x37\x00\xeb\x02\x41\x00\x20\xec\x02\x37\x00\xec\x02\x41\x00\x20\xed\x02\x37\x00\xed\x02\x41\x00\x20\xee\x02\x37\x00\xee\x02\x41\x00\x20\xef\x02\x37\x00\xef\x02\x41\x00\x20\xf0\x02\x37\x00\xf0\x02\x41\x00\x20\xf1\x02\x37\x00\xf1\x02\x41\x00\x20\xf2\x02\x37\x00\xf2\x02\x41\x00\x20\xf3\x02\x37\x00\xf3\x02\x41\x00\x20\xf4\x02\x37\x00\xf4\x02\x41\x00\x20\xf5\x02\x37\x00\xf5\x02\x41\x00\x20\xf6\x02\x37\x00\xf6\x02\x41\x00\x20\xf7\x02\x37\x00\xf7\x02\x41\x00\x20\xf8\x02\x37\x00\xf8\x02\x41\x00\x20\xf9\x02\x37\x00\xf9\x02\x41\x00\x20\xfa\x02\x37\x00\xfa\x02\x41\x00\x20\xfb\x02\x37\x00\xfb\x02\x41\x00\x20\xfc\x02\x37\x00\xfc\x02\x41\x00\x20\xfd\x02\x37\x00\xfd\x02\x41\x00\x20\xfe\x02\x37\x00\xfe\x02\x41\x00\x20\xff\x02\x37\x00\xff\x02\x41\x00\x20\x80\x03\x37\x00\x80\x03\x41\x00\x20\x81\x03\x37\x00\x81\x03\x41\x00\x20\x82\x03\x37\x00\x82\x03\x41\x00\x20\x83\x03\x37\x00\x83\x03\x41\x00\x20\x84\x03\x37\x00\x84\x03\x41\x00\x20\x85\x03\x37\x00\x85\x03\x41\x00\x20\x86\x03\x37\x00\x86\x03\x41\x00\x20\x87\x03\x37\x00\x87\x03\x41\x00\x20\x88\x03\x37\x00\x88\x03\x41\x00\x20\x89\x03\x37\x00\x89\x03\x41\x00\x20\x8a\x03\x37\x00\x8a\x03\x41\x00\x20\x8b\x03\x37\x00\x8b\x03\x41\x00\x20\x8c\x03\x37\x00\x8c\x03\x41\x00\x20\x8d\x03\x37\x00\x8d\x03\x41\x00\x20\x8e\x03\x37\x00\x8e\x03\x41\x00\x20\x8f\x03\x37\x00\x8f\x03\x41\x00\x20\x90\x03\x37\x00\x90\x03\x41\x00\x20\x91\x03\x37\x00\x91\x03\x41\x00\x20\x92\x03\x37\x00\x92\x03\x41\x00\x20\x93\x03\x37\x00\x93\x03\x41\x00\x20\x94\x03\x37\x00\x94\x03\x41\x00\x20\x95\x03\x37\x00\x95\x03\x41\x00\x20\x96\x03\x37\x00\x96\x03\x41\x00\x20\x97\x03\x37\x00\x97\x03\x41\x00\x20\x98\x03\x37\x00\x98\x03\x41\x00\x20\x99\x03\x37\x00\x99\x03\x41\x00\x20\x9a\x03\x37\x00\x9a\x03\x41\x00\x20\x9b\x03\x37\x00\x9b\x03\x41\x00\x20\x9c\x03\x37\x00\x9c\x03\x41\x00\x20\x9d\x03\x37\x00\x9d\x03\x41\x00\x20\x9e\x03\x37\x00\x9e\x03\x41\x00\x20\x9f\x03\x37\x00\x9f\x03\x41\x00\x20\xa0\x03\x37\x00\xa0\x03\x41\x00\x20\xa1\x03\x37\x00\xa1\x03\x41\x00\x20\xa2\x03\x37\x00\xa2\x03\x41\x00\x20\xa3\x03\x37\x00\xa3\x03\x41\x00\x20\xa4\x03\x37\x00\xa4\x03\x41\x00\x20\xa5\x03\x37\x00\xa5\x03\x41\x00\x20\xa6\x03\x37\x00\xa6\x03\x41\x00\x20\xa7\x03\x37\x00\xa7\x03\x41\x00\x20\xa8\x03\x37\x00\xa8\x03\x41\x00\x20\xa9\x03\x37\x00\xa9\x03\x41\x00\x20\xaa\x03\x37\x00\xaa\x03\x41\x00\x20\xab\x03\x37\x00\xab\x03\x41\x00\x20\xac\x03\x37\x00\xac\x03\x41\x00\x20\xad\x03\x37\x00\xad\x03\x41\x00\x20\xae\x03\x37\x00\xae\x03\x41\x00\x20\xaf\x03\x37\x00\xaf\x03\x41\x00\x20\xb0\x03\x37\x00\xb0\x03\x41\x00\x20\xb1\x03\x37\x00\xb1\x03\x41\x00\x20\xb2\x03\x37\x00\xb2\x03\x41\x00\x20\xb3\x03\x37\x00\xb3\x03\x41\x00\x20\xb4\x03\x37\x00\xb4\x03\x41\x00\x20\xb5\x03\x37\x00\xb5\x03\x41\x00\x20\xb6\x03\x37\x00\xb6\x03\x41\x00\x20\xb7\x03\x37\x00\xb7\x03\x41\x00\x20\xb8\x03\x37\x00\xb8\x03\x41\x00\x20\xb9\x03\x37\x00\xb9\x03\x41\x00\x20\xba\x03\x37\x00\xba\x03\x41\x00\x20\xbb\x03\x37\x00\xbb\x03\x41\x00\x20\xbc\x03\x37\x00\xbc\x03\x41\x00\x20\xbd\x03\x37\x00\xbd\x03\x41\x00\x20\xbe\x03\x37\x00\xbe\x03\x41\x00\x20\xbf\x03\x37\x00\xbf\x03\x41\x00\x20\xc0\x03\x37\x00\xc0\x03\x41\x00\x20\xc1\x03\x37\x00\xc1\x03\x41\x00\x20\xc2\x03\x37\x00\xc2\x03\x41\x00\x20\xc3\x03\x37\x00\xc3\x03\x41\x00\x20\xc4\x03\x37\x00\xc4\x03\x41\x00\x20\xc5\x03\x37\x00\xc5\x03\x41\x00\x20\xc6\x03\x37\x00\xc6\x03\x41\x00\x20\xc7\x03\x37\x00\xc7\x03\x41\x00\x20\xc8\x03\x37\x00\xc8\x03\x41\x00\x20\xc9\x03\x37\x00\xc9\x03\x41\x00\x20\xca\x03\x37\x00\xca\x03\x41\x00\x20\xcb\x03\x37\x00\xcb\x03\x41\x00\x20\xcc\x03\x37\x00\xcc\x03\x41\x00\x20\xcd\x03\x37\x00\xcd\x03\x41\x00\x20\xce\x03\x37\x00\xce\x03\x41\x00\x20\xcf\x03\x37\x00\xcf\x03\x41\x00\x20\xd0\x03\x37\x00\xd0\x03\x41\x00\x20\xd1\x03\x37\x00\xd1\x03\x41\x00\x20\xd2\x03\x37\x00\xd2\x03\x41\x00\x20\xd3\x03\x37\x00\xd3\x03\x41\x00\x20\xd4\x03\x37\x00\xd4\x03\x41\x00\x20\xd5\x03\x37\x00\xd5\x03\x41\x00\x20\xd6\x03\x37\x00\xd6\x03\x41\x00\x20\xd7\x03\x37\x00\xd7\x03\x41\x00\x20\xd8\x03\x37\x00\xd8\x03\x41\x00\x20\xd9\x03\x37\x00\xd9\x03\x41\x00\x20\xda\x03\x37\x00\xda\x03\x41\x00\x20\xdb\x03\x37\x00\xdb\x03\x41\x00\x20\xdc\x03\x37\x00\xdc\x03\x41\x00\x20\xdd\x03\x37\x00\xdd\x03\x41\x00\x20\xde\x03\x37\x00\xde\x03\x41\x00\x20\xdf\x03\x37\x00\xdf\x03\x41\x00\x20\xe0\x03\x37\x00\xe0\x03\x41\x00\x20\xe1\x03\x37\x00\xe1\x03\x41\x00\x20\xe2\x03\x37\x00\xe2\x03\x41\x00\x20\xe3\x03\x37\x00\xe3\x03\x41\x00\x20\xe4\x03\x37\x00\xe4\x03\x41\x00\x20\xe5\x03\x37\x00\xe5\x03\x41\x00\x20\xe6\x03\x37\x00\xe6\x03\x41\x00\x20\xe7\x03\x37\x00\xe7\x03\x41\x00\x20\xe8\x03\x37\x00\xe8\x03\x41\x00\x20\xe9\x03\x37\x00\xe9\x03\x41\x00\x20\xea\x03\x37\x00\xea\x03\x41\x00\x20\xeb\x03\x37\x00\xeb\x03\x41\x00\x20\xec\x03\x37\x00\xec\x03\x41\x00\x20\xed\x03\x37\x00\xed\x03\x41\x00\x20\xee\x03\x37\x00\xee\x03\x41\x00\x20\xef\x03\x37\x00\xef\x03\x41\x00\x20\xf0\x03\x37\x00\xf0\x03\x41\x00\x20\xf1\x03\x37\x00\xf1\x03\x41\x00\x20\xf2\x03\x37\x00\xf2\x03\x41\x00\x20\xf3\x03\x37\x00\xf3\x03\x41\x00\x20\xf4\x03\x37\x00\xf4\x03\x41\x00\x20\xf5\x03\x37\x00\xf5\x03\x41\x00\x20\xf6\x03\x37\x00\xf6\x03\x41\x00\x20\xf7\x03\x37\x00\xf7\x03\x41\x00\x20\xf8\x03\x37\x00\xf8\x03\x41\x00\x20\xf9\x03\x37\x00\xf9\x03\x41\x00\x20\xfa\x03\x37\x00\xfa\x03\x41\x00\x20\xfb\x03\x37\x00\xfb\x03\x41\x00\x20\xfc\x03\x37\x00\xfc\x03\x41\x00\x20\xfd\x03\x37\x00\xfd\x03\x41\x00\x20\xfe\x03\x37\x00\xfe\x03\x41\x00\x20\xff\x03\x37\x00\xff\x03\x41\x00\x20\x80\x04\x37\x00\x80\x04\x41\x00\x20\x81\x04\x37\x00\x81\x04\x41\x00\x20\x82\x04\x37\x00\x82\x04\x41\x00\x20\x83\x04\x37\x00\x83\x04\x41\x00\x20\x84\x04\x37\x00\x84\x04\x41\x00\x20\x85\x04\x37\x00\x85\x04\x41\x00\x20\x86\x04\x37\x00\x86\x04\x41\x00\x20\x87\x04\x37\x00\x87\x04\x41\x00\x20\x88\x04\x37\x00\x88\x04\x41\x00\x20\x89\x04\x37\x00\x89\x04\x41\x00\x20\x8a\x04\x37\x00\x8a\x04\x41\x00\x20\x8b\x04\x37\x00\x8b\x04\x41\x00\x20\x8c\x04\x37\x00\x8c\x04\x41\x00\x20\x8d\x04\x37\x00\x8d\x04\x41\x00\x20\x8e\x04\x37\x00\x8e\x04\x41\x00\x20\x8f\x04\x37\x00\x8f\x04\x41\x00\x20\x90\x04\x37\x00\x90\x04\x41\x00\x20\x91\x04\x37\x00\x91\x04\x41\x00\x20\x92\x04\x37\x00\x92\x04\x41\x00\x20\x93\x04\x37\x00\x93\x04\x41\x00\x20\x94\x04\x37\x00\x94\x04\x41\x00\x20\x95\x04\x37\x00\x95\x04\x41\x00\x20\x96\x04\x37\x00\x96\x04\x41\x00\x20\x97\x04\x37\x00\x97\x04\x41\x00\x20\x98\x04\x37\x00\x98\x04\x41\x00\x20\x99\x04\x37\x00\x99\x04\x41\x00\x20\x9a\x04\x37\x00\x9a\x04\x41\x00\x20\x9b\x04\x37\x00\x9b\x04\x41\x00\x20\x9c\x04\x37\x00\x9c\x04\x41\x00\x20\x9d\x04\x37\x00\x9d\x04\x41\x00\x20\x9e\x04\x37\x00\x9e\x04\x41\x00\x20\x9f\x04\x37\x00\x9f\x04\x41\x00\x20\xa0\x04\x37\x00\xa0\x04\x41\x00\x20\xa1\x04\x37\x00\xa1\x04\x41\x00\x20\xa2\x04\x37\x00\xa2\x04\x41\x00\x20\xa3\x04\x37\x00\xa3\x04\x41\x00\x20\xa4\x04\x37\x00\xa4\x04\x41\x00\x20\xa5\x04\x37\x00\xa5\x04\x41\x00\x20\xa6\x04\x37\x00\xa6\x04\x41\x00\x20\xa7\x04\x37\x00\xa7\x04\x41\x00\x20\xa8\x04\x37\x00\xa8\x04\x41\x00\x20\xa9\x04\x37\x00\xa9\x04\x41\x00\x20\xaa\x04\x37\x00\xaa\x04\x41\x00\x20\xab\x04\x37\x00\xab\x04\x41\x00\x20\xac\x04\x37\x00\xac\x04\x41\x00\x20\xad\x04\x37\x00\xad\x04\x41\x00\x20\xae\x04\x37\x00\xae\x04\x41\x00\x20\xaf\x04\x37\x00\xaf\x04\x41\x00\x20\xb0\x04\x37\x00\xb0\x04\x41\x00\x20\xb1\x04\x37\x00\xb1\x04\x41\x00\x20\xb2\x04\x37\x00\xb2\x04\x41\x00\x20\xb3\x04\x37\x00\xb3\x04\x41\x00\x20\xb4\x04\x37\x00\xb4\x04\x41\x00\x20\xb5\x04\x37\x00\xb5\x04\x41\x00\x20\xb6\x04\x37\x00\xb6\x04\x41\x00\x20\xb7\x04\x37\x00\xb7\x04\x41\x00\x20\xb8\x04\x37\x00\xb8\x04\x41\x00\x20\xb9\x04\x37\x00\xb9\x04\x41\x00\x20\xba\x04\x37\x00\xba\x04\x41\x00\x20\xbb\x04\x37\x00\xbb\x04\x41\x00\x20\xbc\x04\x37\x00\xbc\x04\x41\x00\x20\xbd\x04\x37\x00\xbd\x04\x41\x00\x20\xbe\x04\x37\x00\xbe\x04\x41\x00\x20\xbf\x04\x37\x00\xbf\x04\x41\x00\x20\xc0\x04\x37\x00\xc0\x04\x41\x00\x20\xc1\x04\x37\x00\xc1\x04\x41\x00\x20\xc2\x04\x37\x00\xc2\x04\x41\x00\x20\xc3\x04\x37\x00\xc3\x04\x41\x00\x20\xc4\x04\x37\x00\xc4\x04\x41\x00\x20\xc5\x04\x37\x00\xc5\x04\x41\x00\x20\xc6\x04\x37\x00\xc6\x04\x41\x00\x20\xc7\x04\x37\x00\xc7\x04\x41\x00\x20\xc8\x04\x37\x00\xc8\x04\x41\x00\x20\xc9\x04\x37\x00\xc9\x04\x41\x00\x20\xca\x04\x37\x00\xca\x04\x41\x00\x20\xcb\x04\x37\x00\xcb\x04\x41\x00\x20\xcc\x04\x37\x00\xcc\x04\x41\x00\x20\xcd\x04\x37\x00\xcd\x04\x41\x00\x20\xce\x04\x37\x00\xce\x04\x41\x00\x20\xcf\x04\x37\x00\xcf\x04\x41\x00\x20\xd0\x04\x37\x00\xd0\x04\x41\x00\x20\xd1\x04\x37\x00\xd1\x04\x41\x00\x20\xd2\x04\x37\x00\xd2\x04\x41\x00\x20\xd3\x04\x37\x00\xd3\x04\x41\x00\x20\xd4\x04\x37\x00\xd4\x04\x41\x00\x20\xd5\x04\x37\x00\xd5\x04\x41\x00\x20\xd6\x04\x37\x00\xd6\x04\x41\x00\x20\xd7\x04\x37\x00\xd7\x04\x41\x00\x20\xd8\x04\x37\x00\xd8\x04\x41\x00\x20\xd9\x04\x37\x00\xd9\x04\x41\x00\x20\xda\x04\x37\x00\xda\x04\x41\x00\x20\xdb\x04\x37\x00\xdb\x04\x41\x00\x20\xdc\x04\x37\x00\xdc\x04\x41\x00\x20\xdd\x04\x37\x00\xdd\x04\x41\x00\x20\xde\x04\x37\x00\xde\x04\x41\x00\x20\xdf\x04\x37\x00\xdf\x04\x41\x00\x20\xe0\x04\x37\x00\xe0\x04\x41\x00\x20\xe1\x04\x37\x00\xe1\x04\x41\x00\x20\xe2\x04\x37\x00\xe2\x04\x41\x00\x20\xe3\x04\x37\x00\xe3\x04\x41\x00\x20\xe4\x04\x37\x00\xe4\x04\x41\x00\x20\xe5\x04\x37\x00\xe5\x04\x41\x00\x20\xe6\x04\x37\x00\xe6\x04\x41\x00\x20\xe7\x04\x37\x00\xe7\x04\x41\x00\x20\xe8\x04\x37\x00\xe8\x04\x41\x00\x20\xe9\x04\x37\x00\xe9\x04\x41\x00\x20\xea\x04\x37\x00\xea\x04\x41\x00\x20\xeb\x04\x37\x00\xeb\x04\x41\x00\x20\xec\x04\x37\x00\xec\x04\x41\x00\x20\xed\x04\x37\x00\xed\x04\x41\x00\x20\xee\x04\x37\x00\xee\x04\x41\x00\x20\xef\x04\x37\x00\xef\x04\x41\x00\x20\xf0\x04\x37\x00\xf0\x04\x41\x00\x20\xf1\x04\x37\x00\xf1\x04\x41\x00\x20\xf2\x04\x37\x00\xf2\x04\x41\x00\x20\xf3\x04\x37\x00\xf3\x04\x41\x00\x20\xf4\x04\x37\x00\xf4\x04\x41\x00\x20\xf5\x04\x37\x00\xf5\x04\x41\x00\x20\xf6\x04\x37\x00\xf6\x04\x41\x00\x20\xf7\x04\x37\x00\xf7\x04\x41\x00\x20\xf8\x04\x37\x00\xf8\x04\x41\x00\x20\xf9\x04\x37\x00\xf9\x04\x41\x00\x20\xfa\x04\x37\x00\xfa\x04\x41\x00\x20\xfb\x04\x37\x00\xfb\x04\x41\x00\x20\xfc\x04\x37\x00\xfc\x04\x41\x00\x20\xfd\x04\x37\x00\xfd\x04\x41\x00\x20\xfe\x04\x37\x00\xfe\x04\x41\x00\x20\xff\x04\x37\x00\xff\x04\x41\x00\x20\x80\x05\x37\x00\x80\x05\x41\x00\x20\x81\x05\x37\x00\x81\x05\x41\x00\x20\x82\x05\x37\x00\x82\x05\x41\x00\x20\x83\x05\x37\x00\x83\x05\x41\x00\x20\x84\x05\x37\x00\x84\x05\x41\x00\x20\x85\x05\x37\x00\x85\x05\x41\x00\x20\x86\x05\x37\x00\x86\x05\x41\x00\x20\x87\x05\x37\x00\x87\x05\x41\x00\x20\x88\x05\x37\x00\x88\x05\x41\x00\x20\x89\x05\x37\x00\x89\x05\x41\x00\x20\x8a\x05\x37\x00\x8a\x05\x41\x00\x20\x8b\x05\x37\x00\x8b\x05\x41\x00\x20\x8c\x05\x37\x00\x8c\x05\x41\x00\x20\x8d\x05\x37\x00\x8d\x05\x41\x00\x20\x8e\x05\x37\x00\x8e\x05\x41\x00\x20\x8f\x05\x37\x00\x8f\x05\x41\x00\x20\x90\x05\x37\x00\x90\x05\x41\x00\x20\x91\x05\x37\x00\x91\x05\x41\x00\x20\x92\x05\x37\x00\x92\x05\x41\x00\x20\x93\x05\x37\x00\x93\x05\x41\x00\x20\x94\x05\x37\x00\x94\x05\x41\x00\x20\x95\x05\x37\x00\x95\x05\x41\x00\x20\x96\x05\x37\x00\x96\x05\x41\x00\x20\x97\x05\x37\x00\x97\x05\x41\x00\x20\x98\x05\x37\x00\x98\x05\x41\x00\x20\x99\x05\x37\x00\x99\x05\x41\x00\x20\x9a\x05\x37\x00\x9a\x05\x41\x00\x20\x9b\x05\x37\x00\x9b\x05\x41\x00\x20\x9c\x05\x37\x00\x9c\x05\x41\x00\x20\x9d\x05\x37\x00\x9d\x05\x41\x00\x20\x9e\x05\x37\x00\x9e\x05\x41\x00\x20\x9f\x05\x37\x00\x9f\x05\x41\x00\x20\xa0\x05\x37\x00\xa0\x05\x41\x00\x20\xa1\x05\x37\x00\xa1\x05\x41\x00\x20\xa2\x05\x37\x00\xa2\x05\x41\x00\x20\xa3\x05\x37\x00\xa3\x05\x41\x00\x20\xa4\x05\x37\x00\xa4\x05\x41\x00\x20\xa5\x05\x37\x00\xa5\x05\x41\x00\x20\xa6\x05\x37\x00\xa6\x05\x41\x00\x20\xa7\x05\x37\x00\xa7\x05\x41\x00\x20\xa8\x05\x37\x00\xa8\x05\x41\x00\x20\xa9\x05\x37\x00\xa9\x05\x41\x00\x20\xaa\x05\x37\x00\xaa\x05\x41\x00\x20\xab\x05\x37\x00\xab\x05\x41\x00\x20\xac\x05\x37\x00\xac\x05\x41\x00\x20\xad\x05\x37\x00\xad\x05\x41\x00\x20\xae\x05\x37\x00\xae\x05\x41\x00\x20\xaf\x05\x37\x00\xaf\x05\x41\x00\x20\xb0\x05\x37\x00\xb0\x05\x41\x00\x20\xb1\x05\x37\x00\xb1\x05\x41\x00\x20\xb2\x05\x37\x00\xb2\x05\x41\x00\x20\xb3\x05\x37\x00\xb3\x05\x41\x00\x20\xb4\x05\x37\x00\xb4\x05\x41\x00\x20\xb5\x05\x37\x00\xb5\x05\x41\x00\x20\xb6\x05\x37\x00\xb6\x05\x41\x00\x20\xb7\x05\x37\x00\xb7\x05\x41\x00\x20\xb8\x05\x37\x00\xb8\x05\x41\x00\x20\xb9\x05\x37\x00\xb9\x05\x41\x00\x20\xba\x05\x37\x00\xba\x05\x41\x00\x20\xbb\x05\x37\x00\xbb\x05\x41\x00\x20\xbc\x05\x37\x00\xbc\x05\x41\x00\x20\xbd\x05\x37\x00\xbd\x05\x41\x00\x20\xbe\x05\x37\x00\xbe\x05\x41\x00\x20\xbf\x05\x37\x00\xbf\x05\x41\x00\x20\xc0\x05\x37\x00\xc0\x05\x41\x00\x20\xc1\x05\x37\x00\xc1\x05\x41\x00\x20\xc2\x05\x37\x00\xc2\x05\x41\x00\x20\xc3\x05\x37\x00\xc3\x05\x41\x00\x20\xc4\x05\x37\x00\xc4\x05\x41\x00\x20\xc5\x05\x37\x00\xc5\x05\x41\x00\x20\xc6\x05\x37\x00\xc6\x05\x41\x00\x20\xc7\x05\x37\x00\xc7\x05\x41\x00\x20\xc8\x05\x37\x00\xc8\x05\x41\x00\x20\xc9\x05\x37\x00\xc9\x05\x41\x00\x20\xca\x05\x37\x00\xca\x05\x41\x00\x20\xcb\x05\x37\x00\xcb\x05\x41\x00\x20\xcc\x05\x37\x00\xcc\x05\x41\x00\x20\xcd\x05\x37\x00\xcd\x05\x41\x00\x20\xce\x05\x37\x00\xce\x05\x41\x00\x20\xcf\x05\x37\x00\xcf\x05\x41\x00\x20\xd0\x05\x37\x00\xd0\x05\x41\x00\x20\xd1\x05\x37\x00\xd1\x05\x41\x00\x20\xd2\x05\x37\x00\xd2\x05\x41\x00\x20\xd3\x05\x37\x00\xd3\x05\x41\x00\x20\xd4\x05\x37\x00\xd4\x05\x41\x00\x20\xd5\x05\x37\x00\xd5\x05\x41\x00\x20\xd6\x05\x37\x00\xd6\x05\x41\x00\x20\xd7\x05\x37\x00\xd7\x05\x41\x00\x20\xd8\x05\x37\x00\xd8\x05\x41\x00\x20\xd9\x05\x37\x00\xd9\x05\x41\x00\x20\xda\x05\x37\x00\xda\x05\x41\x00\x20\xdb\x05\x37\x00\xdb\x05\x41\x00\x20\xdc\x05\x37\x00\xdc\x05\x41\x00\x20\xdd\x05\x37\x00\xdd\x05\x41\x00\x20\xde\x05\x37\x00\xde\x05\x41\x00\x20\xdf\x05\x37\x00\xdf\x05\x41\x00\x20\xe0\x05\x37\x00\xe0\x05\x41\x00\x20\xe1\x05\x37\x00\xe1\x05\x41\x00\x20\xe2\x05\x37\x00\xe2\x05\x41\x00\x20\xe3\x05\x37\x00\xe3\x05\x41\x00\x20\xe4\x05\x37\x00\xe4\x05\x41\x00\x20\xe5\x05\x37\x00\xe5\x05\x41\x00\x20\xe6\x05\x37\x00\xe6\x05\x41\x00\x20\xe7\x05\x37\x00\xe7\x05\x41\x00\x20\xe8\x05\x37\x00\xe8\x05\x41\x00\x20\xe9\x05\x37\x00\xe9\x05\x41\x00\x20\xea\x05\x37\x00\xea\x05\x41\x00\x20\xeb\x05\x37\x00\xeb\x05\x41\x00\x20\xec\x05\x37\x00\xec\x05\x41\x00\x20\xed\x05\x37\x00\xed\x05\x41\x00\x20\xee\x05\x37\x00\xee\x05\x41\x00\x20\xef\x05\x37\x00\xef\x05\x41\x00\x20\xf0\x05\x37\x00\xf0\x05\x41\x00\x20\xf1\x05\x37\x00\xf1\x05\x41\x00\x20\xf2\x05\x37\x00\xf2\x05\x41\x00\x20\xf3\x05\x37\x00\xf3\x05\x41\x00\x20\xf4\x05\x37\x00\xf4\x05\x41\x00\x20\xf5\x05\x37\x00\xf5\x05\x41\x00\x20\xf6\x05\x37\x00\xf6\x05\x41\x00\x20\xf7\x05\x37\x00\xf7\x05\x41\x00\x20\xf8\x05\x37\x00\xf8\x05\x41\x00\x20\xf9\x05\x37\x00\xf9\x05\x41\x00\x20\xfa\x05\x37\x00\xfa\x05\x41\x00\x20\xfb\x05\x37\x00\xfb\x05\x41\x00\x20\xfc\x05\x37\x00\xfc\x05\x41\x00\x20\xfd\x05\x37\x00\xfd\x05\x41\x00\x20\xfe\x05\x37\x00\xfe\x05\x41\x00\x20\xff\x05\x37\x00\xff\x05\x41\x00\x20\x80\x06\x37\x00\x80\x06\x41\x00\x20\x81\x06\x37\x00\x81\x06\x41\x00\x20\x82\x06\x37\x00\x82\x06\x41\x00\x20\x83\x06\x37\x00\x83\x06\x41\x00\x20\x84\x06\x37\x00\x84\x06\x41\x00\x20\x85\x06\x37\x00\x85\x06\x41\x00\x20\x86\x06\x37\x00\x86\x06\x41\x00\x20\x87\x06\x37\x00\x87\x06\x41\x00\x20\x88\x06\x37\x00\x88\x06\x41\x00\x20\x89\x06\x37\x00\x89\x06\x41\x00\x20\x8a\x06\x37\x00\x8a\x06\x41\x00\x20\x8b\x06\x37\x00\x8b\x06\x41\x00\x20\x8c\x06\x37\x00\x8c\x06\x41\x00\x20\x8d\x06\x37\x00\x8d\x06\x41\x00\x20\x8e\x06\x37\x00\x8e\x06\x41\x00\x20\x8f\x06\x37\x00\x8f\x06\x41\x00\x20\x90\x06\x37\x00\x90\x06\x41\x00\x20\x91\x06\x37\x00\x91\x06\x41\x00\x20\x92\x06\x37\x00\x92\x06\x41\x00\x20\x93\x06\x37\x00\x93\x06\x41\x00\x20\x94\x06\x37\x00\x94\x06\x41\x00\x20\x95\x06\x37\x00\x95\x06\x41\x00\x20\x96\x06\x37\x00\x96\x06\x41\x00\x20\x97\x06\x37\x00\x97\x06\x41\x00\x20\x98\x06\x37\x00\x98\x06\x41\x00\x20\x99\x06\x37\x00\x99\x06\x41\x00\x20\x9a\x06\x37\x00\x9a\x06\x41\x00\x20\x9b\x06\x37\x00\x9b\x06\x41\x00\x20\x9c\x06\x37\x00\x9c\x06\x41\x00\x20\x9d\x06\x37\x00\x9d\x06\x41\x00\x20\x9e\x06\x37\x00\x9e\x06\x41\x00\x20\x9f\x06\x37\x00\x9f\x06\x41\x00\x20\xa0\x06\x37\x00\xa0\x06\x41\x00\x20\xa1\x06\x37\x00\xa1\x06\x41\x00\x20\xa2\x06\x37\x00\xa2\x06\x41\x00\x20\xa3\x06\x37\x00\xa3\x06\x41\x00\x20\xa4\x06\x37\x00\xa4\x06\x41\x00\x20\xa5\x06\x37\x00\xa5\x06\x41\x00\x20\xa6\x06\x37\x00\xa6\x06\x41\x00\x20\xa7\x06\x37\x00\xa7\x06\x41\x00\x20\xa8\x06\x37\x00\xa8\x06\x41\x00\x20\xa9\x06\x37\x00\xa9\x06\x41\x00\x20\xaa\x06\x37\x00\xaa\x06\x41\x00\x20\xab\x06\x37\x00\xab\x06\x41\x00\x20\xac\x06\x37\x00\xac\x06\x41\x00\x20\xad\x06\x37\x00\xad\x06\x41\x00\x20\xae\x06\x37\x00\xae\x06\x41\x00\x20\xaf\x06\x37\x00\xaf\x06\x41\x00\x20\xb0\x06\x37\x00\xb0\x06\x41\x00\x20\xb1\x06\x37\x00\xb1\x06\x41\x00\x20\xb2\x06\x37\x00\xb2\x06\x41\x00\x20\xb3\x06\x37\x00\xb3\x06\x41\x00\x20\xb4\x06\x37\x00\xb4\x06\x41\x00\x20\xb5\x06\x37\x00\xb5\x06\x41\x00\x20\xb6\x06\x37\x00\xb6\x06\x41\x00\x20\xb7\x06\x37\x00\xb7\x06\x41\x00\x20\xb8\x06\x37\x00\xb8\x06\x41\x00\x20\xb9\x06\x37\x00\xb9\x06\x41\x00\x20\xba\x06\x37\x00\xba\x06\x41\x00\x20\xbb\x06\x37\x00\xbb\x06\x41\x00\x20\xbc\x06\x37\x00\xbc\x06\x41\x00\x20\xbd\x06\x37\x00\xbd\x06\x41\x00\x20\xbe\x06\x37\x00\xbe\x06\x41\x00\x20\xbf\x06\x37\x00\xbf\x06\x41\x00\x20\xc0\x06\x37\x00\xc0\x06\x41\x00\x20\xc1\x06\x37\x00\xc1\x06\x41\x00\x20\xc2\x06\x37\x00\xc2\x06\x41\x00\x20\xc3\x06\x37\x00\xc3\x06\x41\x00\x20\xc4\x06\x37\x00\xc4\x06\x41\x00\x20\xc5\x06\x37\x00\xc5\x06\x41\x00\x20\xc6\x06\x37\x00\xc6\x06\x41\x00\x20\xc7\x06\x37\x00\xc7\x06\x41\x00\x20\xc8\x06\x37\x00\xc8\x06\x41\x00\x20\xc9\x06\x37\x00\xc9\x06\x41\x00\x20\xca\x06\x37\x00\xca\x06\x41\x00\x20\xcb\x06\x37\x00\xcb\x06\x41\x00\x20\xcc\x06\x37\x00\xcc\x06\x41\x00\x20\xcd\x06\x37\x00\xcd\x06\x41\x00\x20\xce\x06\x37\x00\xce\x06\x41\x00\x20\xcf\x06\x37\x00\xcf\x06\x41\x00\x20\xd0\x06\x37\x00\xd0\x06\x41\x00\x20\xd1\x06\x37\x00\xd1\x06\x41\x00\x20\xd2\x06\x37\x00\xd2\x06\x41\x00\x20\xd3\x06\x37\x00\xd3\x06\x41\x00\x20\xd4\x06\x37\x00\xd4\x06\x41\x00\x20\xd5\x06\x37\x00\xd5\x06\x41\x00\x20\xd6\x06\x37\x00\xd6\x06\x41\x00\x20\xd7\x06\x37\x00\xd7\x06\x41\x00\x20\xd8\x06\x37\x00\xd8\x06\x41\x00\x20\xd9\x06\x37\x00\xd9\x06\x41\x00\x20\xda\x06\x37\x00\xda\x06\x41\x00\x20\xdb\x06\x37\x00\xdb\x06\x41\x00\x20\xdc\x06\x37\x00\xdc\x06\x41\x00\x20\xdd\x06\x37\x00\xdd\x06\x41\x00\x20\xde\x06\x37\x00\xde\x06\x41\x00\x20\xdf\x06\x37\x00\xdf\x06\x41\x00\x20\xe0\x06\x37\x00\xe0\x06\x41\x00\x20\xe1\x06\x37\x00\xe1\x06\x41\x00\x20\xe2\x06\x37\x00\xe2\x06\x41\x00\x20\xe3\x06\x37\x00\xe3\x06\x41\x00\x20\xe4\x06\x37\x00\xe4\x06\x41\x00\x20\xe5\x06\x37\x00\xe5\x06\x41\x00\x20\xe6\x06\x37\x00\xe6\x06\x41\x00\x20\xe7\x06\x37\x00\xe7\x06\x41\x00\x20\xe8\x06\x37\x00\xe8\x06\x41\x00\x20\xe9\x06\x37\x00\xe9\x06\x41\x00\x20\xea\x06\x37\x00\xea\x06\x41\x00\x20\xeb\x06\x37\x00\xeb\x06\x41\x00\x20\xec\x06\x37\x00\xec\x06\x41\x00\x20\xed\x06\x37\x00\xed\x06\x41\x00\x20\xee\x06\x37\x00\xee\x06\x41\x00\x20\xef\x06\x37\x00\xef\x06\x41\x00\x20\xf0\x06\x37\x00\xf0\x06\x41\x00\x20\xf1\x06\x37\x00\xf1\x06\x41\x00\x20\xf2\x06\x37\x00\xf2\x06\x41\x00\x20\xf3\x06\x37\x00\xf3\x06\x41\x00\x20\xf4\x06\x37\x00\xf4\x06\x41\x00\x20\xf5\x06\x37\x00\xf5\x06\x41\x00\x20\xf6\x06\x37\x00\xf6\x06\x41\x00\x20\xf7\x06\x37\x00\xf7\x06\x41\x00\x20\xf8\x06\x37\x00\xf8\x06\x41\x00\x20\xf9\x06\x37\x00\xf9\x06\x41\x00\x20\xfa\x06\x37\x00\xfa\x06\x41\x00\x20\xfb\x06\x37\x00\xfb\x06\x41\x00\x20\xfc\x06\x37\x00\xfc\x06\x41\x00\x20\xfd\x06\x37\x00\xfd\x06\x41\x00\x20\xfe\x06\x37\x00\xfe\x06\x41\x00\x20\xff\x06\x37\x00\xff\x06\x41\x00\x20\x80\x07\x37\x00\x80\x07\x41\x00\x20\x81\x07\x37\x00\x81\x07\x41\x00\x20\x82\x07\x37\x00\x82\x07\x41\x00\x20\x83\x07\x37\x00\x83\x07\x41\x00\x20\x84\x07\x37\x00\x84\x07\x41\x00\x20\x85\x07\x37\x00\x85\x07\x41\x00\x20\x86\x07\x37\x00\x86\x07\x41\x00\x20\x87\x07\x37\x00\x87\x07\x41\x00\x20\x88\x07\x37\x00\x88\x07\x41\x00\x20\x89\x07\x37\x00\x89\x07\x41\x00\x20\x8a\x07\x37\x00\x8a\x07\x41\x00\x20\x8b\x07\x37\x00\x8b\x07\x41\x00\x20\x8c\x07\x37\x00\x8c\x07\x41\x00\x20\x8d\x07\x37\x00\x8d\x07\x41\x00\x20\x8e\x07\x37\x00\x8e\x07\x41\x00\x20\x8f\x07\x37\x00\x8f\x07\x41\x00\x20\x90\x07\x37\x00\x90\x07\x41\x00\x20\x91\x07\x37\x00\x91\x07\x41\x00\x20\x92\x07\x37\x00\x92\x07\x41\x00\x20\x93\x07\x37\x00\x93\x07\x41\x00\x20\x94\x07\x37\x00\x94\x07\x41\x00\x20\x95\x07\x37\x00\x95\x07\x41\x00\x20\x96\x07\x37\x00\x96\x07\x41\x00\x20\x97\x07\x37\x00\x97\x07\x41\x00\x20\x98\x07\x37\x00\x98\x07\x41\x00\x20\x99\x07\x37\x00\x99\x07\x41\x00\x20\x9a\x07\x37\x00\x9a\x07\x41\x00\x20\x9b\x07\x37\x00\x9b\x07\x41\x00\x20\x9c\x07\x37\x00\x9c\x07\x41\x00\x20\x9d\x07\x37\x00\x9d\x07\x41\x00\x20\x9e\x07\x37\x00\x9e\x07\x41\x00\x20\x9f\x07\x37\x00\x9f\x07\x41\x00\x20\xa0\x07\x37\x00\xa0\x07\x41\x00\x20\xa1\x07\x37\x00\xa1\x07\x41\x00\x20\xa2\x07\x37\x00\xa2\x07\x41\x00\x20\xa3\x07\x37\x00\xa3\x07\x41\x00\x20\xa4\x07\x37\x00\xa4\x07\x41\x00\x20\xa5\x07\x37\x00\xa5\x07\x41\x00\x20\xa6\x07\x37\x00\xa6\x07\x41\x00\x20\xa7\x07\x37\x00\xa7\x07\x41\x00\x20\xa8\x07\x37\x00\xa8\x07\x41\x00\x20\xa9\x07\x37\x00\xa9\x07\x41\x00\x20\xaa\x07\x37\x00\xaa\x07\x41\x00\x20\xab\x07\x37\x00\xab\x07\x41\x00\x20\xac\x07\x37\x00\xac\x07\x41\x00\x20\xad\x07\x37\x00\xad\x07\x41\x00\x20\xae\x07\x37\x00\xae\x07\x41\x00\x20\xaf\x07\x37\x00\xaf\x07\x41\x00\x20\xb0\x07\x37\x00\xb0\x07\x41\x00\x20\xb1\x07\x37\x00\xb1\x07\x41\x00\x20\xb2\x07\x37\x00\xb2\x07\x41\x00\x20\xb3\x07\x37\x00\xb3\x07\x41\x00\x20\xb4\x07\x37\x00\xb4\x07\x41\x00\x20\xb5\x07\x37\x00\xb5\x07\x41\x00\x20\xb6\x07\x37\x00\xb6\x07\x41\x00\x20\xb7\x07\x37\x00\xb7\x07\x41\x00\x20\xb8\x07\x37\x00\xb8\x07\x41\x00\x20\xb9\x07\x37\x00\xb9\x07\x41\x00\x20\xba\x07\x37\x00\xba\x07\x41\x00\x20\xbb\x07\x37\x00\xbb\x07\x41\x00\x20\xbc\x07\x37\x00\xbc\x07\x41\x00\x20\xbd\x07\x37\x00\xbd\x07\x41\x00\x20\xbe\x07\x37\x00\xbe\x07\x41\x00\x20\xbf\x07\x37\x00\xbf\x07\x41\x00\x20\xc0\x07\x37\x00\xc0\x07\x41\x00\x20\xc1\x07\x37\x00\xc1\x07\x41\x00\x20\xc2\x07\x37\x00\xc2\x07\x41\x00\x20\xc3\x07\x37\x00\xc3\x07\x41\x00\x20\xc4\x07\x37\x00\xc4\x07\x41\x00\x20\xc5\x07\x37\x00\xc5\x07\x41\x00\x20\xc6\x07\x37\x00\xc6\x07\x41\x00\x20\xc7\x07\x37\x00\xc7\x07\x41\x00\x20\xc8\x07\x37\x00\xc8\x07\x41\x00\x20\xc9\x07\x37\x00\xc9\x07\x41\x00\x20\xca\x07\x37\x00\xca\x07\x41\x00\x20\xcb\x07\x37\x00\xcb\x07\x41\x00\x20\xcc\x07\x37\x00\xcc\x07\x41\x00\x20\xcd\x07\x37\x00\xcd\x07\x41\x00\x20\xce\x07\x37\x00\xce\x07\x41\x00\x20\xcf\x07\x37\x00\xcf\x07\x41\x00\x20\xd0\x07\x37\x00\xd0\x07\x41\x00\x20\xd1\x07\x37\x00\xd1\x07\x41\x00\x20\xd2\x07\x37\x00\xd2\x07\x41\x00\x20\xd3\x07\x37\x00\xd3\x07\x41\x00\x20\xd4\x07\x37\x00\xd4\x07\x41\x00\x20\xd5\x07\x37\x00\xd5\x07\x41\x00\x20\xd6\x07\x37\x00\xd6\x07\x41\x00\x20\xd7\x07\x37\x00\xd7\x07\x41\x00\x20\xd8\x07\x37\x00\xd8\x07\x41\x00\x20\xd9\x07\x37\x00\xd9\x07\x41\x00\x20\xda\x07\x37\x00\xda\x07\x41\x00\x20\xdb\x07\x37\x00\xdb\x07\x41\x00\x20\xdc\x07\x37\x00\xdc\x07\x41\x00\x20\xdd\x07\x37\x00\xdd\x07\x41\x00\x20\xde\x07\x37\x00\xde\x07\x41\x00\x20\xdf\x07\x37\x00\xdf\x07\x41\x00\x20\xe0\x07\x37\x00\xe0\x07\x41\x00\x20\xe1\x07\x37\x00\xe1\x07\x41\x00\x20\xe2\x07\x37\x00\xe2\x07\x41\x00\x20\xe3\x07\x37\x00\xe3\x07\x41\x00\x20\xe4\x07\x37\x00\xe4\x07\x41\x00\x20\xe5\x07\x37\x00\xe5\x07\x41\x00\x20\xe6\x07\x37\x00\xe6\x07\x41\x00\x20\xe7\x07\x37\x00\xe7\x07\x41\x00\x20\xe8\x07\x37\x00\xe8\x07\x41\x00\x20\xe9\x07\x37\x00\xe9\x07\x41\x00\x20\xea\x07\x37\x00\xea\x07\x41\x00\x20\xeb\x07\x37\x00\xeb\x07\x41\x00\x20\xec\x07\x37\x00\xec\x07\x41\x00\x20\xed\x07\x37\x00\xed\x07\x41\x00\x20\xee\x07\x37\x00\xee\x07\x41\x00\x20\xef\x07\x37\x00\xef\x07\x41\x00\x20\xf0\x07\x37\x00\xf0\x07\x41\x00\x20\xf1\x07\x37\x00\xf1\x07\x41\x00\x20\xf2\x07\x37\x00\xf2\x07\x41\x00\x20\xf3\x07\x37\x00\xf3\x07\x41\x00\x20\xf4\x07\x37\x00\xf4\x07\x41\x00\x20\xf5\x07\x37\x00\xf5\x07\x41\x00\x20\xf6\x07\x37\x00\xf6\x07\x41\x00\x20\xf7\x07\x37\x00\xf7\x07\x41\x00\x20\xf8\x07\x37\x00\xf8\x07\x41\x00\x20\xf9\x07\x37\x00\xf9\x07\x41\x00\x20\xfa\x07\x37\x00\xfa\x07\x41\x00\x20\xfb\x07\x37\x00\xfb\x07\x41\x00\x20\xfc\x07\x37\x00\xfc\x07\x41\x00\x20\xfd\x07\x37\x00\xfd\x07\x41\x00\x20\xfe\x07\x37\x00\xfe\x07\x41\x00\x20\xff\x07\x37\x00\xff\x07\x41\x00\x20\x80\x08\x37\x00\x80\x08\x41\x00\x20\x81\x08\x37\x00\x81\x08\x41\x00\x20\x82\x08\x37\x00\x82\x08\x41\x00\x20\x83\x08\x37\x00\x83\x08\x41\x00\x20\x84\x08\x37\x00\x84\x08\x41\x00\x20\x85\x08\x37\x00\x85\x08\x41\x00\x20\x86\x08\x37\x00\x86\x08\x41\x00\x20\x87\x08\x37\x00\x87\x08\x41\x00\x20\x88\x08\x37\x00\x88\x08\x41\x00\x20\x89\x08\x37\x00\x89\x08\x41\x00\x20\x8a\x08\x37\x00\x8a\x08\x41\x00\x20\x8b\x08\x37\x00\x8b\x08\x41\x00\x20\x8c\x08\x37\x00\x8c\x08\x41\x00\x20\x8d\x08\x37\x00\x8d\x08\x41\x00\x20\x8e\x08\x37\x00\x8e\x08\x41\x00\x20\x8f\x08\x37\x00\x8f\x08\x41\x00\x20\x90\x08\x37\x00\x90\x08\x41\x00\x20\x91\x08\x37\x00\x91\x08\x41\x00\x20\x92\x08\x37\x00\x92\x08\x41\x00\x20\x93\x08\x37\x00\x93\x08\x41\x00\x20\x94\x08\x37\x00\x94\x08\x41\x00\x20\x95\x08\x37\x00\x95\x08\x41\x00\x20\x96\x08\x37\x00\x96\x08\x41\x00\x20\x97\x08\x37\x00\x97\x08\x41\x00\x20\x98\x08\x37\x00\x98\x08\x41\x00\x20\x99\x08\x37\x00\x99\x08\x41\x00\x20\x9a\x08\x37\x00\x9a\x08\x41\x00\x20\x9b\x08\x37\x00\x9b\x08\x41\x00\x20\x9c\x08\x37\x00\x9c\x08\x41\x00\x20\x9d\x08\x37\x00\x9d\x08\x41\x00\x20\x9e\x08\x37\x00\x9e\x08\x41\x00\x20\x9f\x08\x37\x00\x9f\x08\x0b");
+assert_trap(() => $$.exports["test-guard-page-skip"](0));
+assert_trap(() => $$.exports["test-guard-page-skip"](100));
+assert_trap(() => $$.exports["test-guard-page-skip"](200));
+assert_trap(() => $$.exports["test-guard-page-skip"](300));
+assert_trap(() => $$.exports["test-guard-page-skip"](400));
+assert_trap(() => $$.exports["test-guard-page-skip"](500));
+assert_trap(() => $$.exports["test-guard-page-skip"](600));
+assert_trap(() => $$.exports["test-guard-page-skip"](700));
+assert_trap(() => $$.exports["test-guard-page-skip"](800));
+assert_trap(() => $$.exports["test-guard-page-skip"](900));
diff --git a/JSTests/wasm/spec-tests/stack.wast.js b/JSTests/wasm/spec-tests/stack.wast.js
new file mode 100644
index 0000000..0a3dbe8
--- /dev/null
+++ b/JSTests/wasm/spec-tests/stack.wast.js
@@ -0,0 +1,98 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x09\x02\x60\x01\x7e\x01\x7e\x60\x00\x00\x03\x09\x08\x00\x00\x00\x00\x00\x01\x01\x01\x07\x65\x08\x08\x66\x61\x63\x2d\x65\x78\x70\x72\x00\x00\x09\x66\x61\x63\x2d\x73\x74\x61\x63\x6b\x00\x01\x0d\x66\x61\x63\x2d\x73\x74\x61\x63\x6b\x2d\x72\x61\x77\x00\x02\x09\x66\x61\x63\x2d\x6d\x69\x78\x65\x64\x00\x03\x0d\x66\x61\x63\x2d\x6d\x69\x78\x65\x64\x2d\x72\x61\x77\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x07\x0a\xc5\x02\x08\x32\x01\x02\x7e\x20\x00\x21\x01\x42\x01\x21\x02\x02\x40\x03\x40\x20\x01\x42\x00\x51\x04\x40\x0c\x02\x05\x02\x40\x20\x01\x20\x02\x7e\x21\x02\x20\x01\x42\x01\x7d\x21\x01\x0b\x0b\x0c\x00\x0b\x0b\x20\x02\x0b\x2f\x01\x02\x7e\x20\x00\x21\x01\x42\x01\x21\x02\x02\x40\x03\x40\x20\x01\x42\x00\x51\x04\x40\x0c\x02\x05\x20\x01\x20\x02\x7e\x21\x02\x20\x01\x42\x01\x7d\x21\x01\x0b\x0c\x00\x0b\x0b\x20\x02\x0b\x2f\x01\x02\x7e\x20\x00\x21\x01\x42\x01\x21\x02\x02\x40\x03\x40\x20\x01\x42\x00\x51\x04\x40\x0c\x02\x05\x20\x01\x20\x02\x7e\x21\x02\x20\x01\x42\x01\x7d\x21\x01\x0b\x0c\x00\x0b\x0b\x20\x02\x0b\x2f\x01\x02\x7e\x20\x00\x21\x01\x42\x01\x21\x02\x02\x40\x03\x40\x20\x01\x42\x00\x51\x04\x40\x0c\x02\x05\x20\x01\x20\x02\x7e\x21\x02\x20\x01\x42\x01\x7d\x21\x01\x0b\x0c\x00\x0b\x0b\x20\x02\x0b\x2f\x01\x02\x7e\x20\x00\x21\x01\x42\x01\x21\x02\x02\x40\x03\x40\x20\x01\x42\x00\x51\x04\x40\x0c\x02\x05\x20\x01\x20\x02\x7e\x21\x02\x20\x01\x42\x01\x7d\x21\x01\x0b\x0c\x00\x0b\x0b\x20\x02\x0b\x1a\x00\x02\x40\x42\x19\x10\x00\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x01\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1a\x00\x02\x40\x42\x19\x10\x03\x42\x80\x80\x80\xde\x87\x92\xec\xcf\xe1\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
diff --git a/JSTests/wasm/spec-tests/start.wast.js b/JSTests/wasm/spec-tests/start.wast.js
new file mode 100644
index 0000000..5e11104
--- /dev/null
+++ b/JSTests/wasm/spec-tests/start.wast.js
@@ -0,0 +1,113 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x08\x01\x01\x0a\x04\x01\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x08\x01\x00\x0a\x07\x01\x05\x00\x41\x00\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x08\x01\x00\x0a\x04\x01\x02\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x00\x60\x00\x01\x7f\x03\x04\x03\x00\x01\x00\x05\x04\x01\x01\x01\x01\x07\x0d\x02\x03\x69\x6e\x63\x00\x00\x03\x67\x65\x74\x00\x01\x08\x01\x02\x0a\x23\x03\x0f\x00\x41\x00\x41\x00\x2d\x00\x00\x41\x01\x6a\x3a\x00\x00\x0b\x08\x00\x41\x00\x2d\x00\x00\x0f\x0b\x08\x00\x10\x00\x10\x00\x10\x00\x0b\x0b\x07\x01\x00\x41\x00\x0b\x01\x41");
+assert_return(() => $$.exports["get"](), 68);
+$$.exports["inc"]();
+assert_return(() => $$.exports["get"](), 69);
+$$.exports["inc"]();
+assert_return(() => $$.exports["get"](), 70);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x00\x60\x00\x01\x7f\x03\x04\x03\x00\x01\x00\x05\x04\x01\x01\x01\x01\x07\x0d\x02\x03\x69\x6e\x63\x00\x00\x03\x67\x65\x74\x00\x01\x08\x01\x02\x0a\x23\x03\x0f\x00\x41\x00\x41\x00\x2d\x00\x00\x41\x01\x6a\x3a\x00\x00\x0b\x08\x00\x41\x00\x2d\x00\x00\x0f\x0b\x08\x00\x10\x00\x10\x00\x10\x00\x0b\x0b\x07\x01\x00\x41\x00\x0b\x01\x41");
+assert_return(() => $$.exports["get"](), 68);
+$$.exports["inc"]();
+assert_return(() => $$.exports["get"](), 69);
+$$.exports["inc"]();
+assert_return(() => $$.exports["get"](), 70);
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x03\x02\x01\x01\x08\x01\x01\x0a\x08\x01\x06\x00\x41\x01\x10\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x03\x02\x01\x01\x08\x01\x01\x0a\x08\x01\x06\x00\x41\x02\x10\x00\x0b");
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x02\x12\x01\x08\x73\x70\x65\x63\x74\x65\x73\x74\x05\x70\x72\x69\x6e\x74\x00\x00\x08\x01\x00");
+assert_uninstantiable("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x08\x01\x00\x0a\x05\x01\x03\x00\x00\x0b");
diff --git a/JSTests/wasm/spec-tests/store_retval.wast.js b/JSTests/wasm/spec-tests/store_retval.wast.js
new file mode 100644
index 0000000..bb2b749
--- /dev/null
+++ b/JSTests/wasm/spec-tests/store_retval.wast.js
@@ -0,0 +1,107 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x41\x01\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7e\x01\x7e\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x42\x01\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7d\x01\x7d\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x43\x00\x00\x80\x3f\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7c\x01\x7c\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x41\x01\x36\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7e\x01\x7e\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x42\x01\x37\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7d\x01\x7d\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x41\x00\x43\x00\x00\x80\x3f\x38\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7c\x01\x7c\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x12\x01\x10\x00\x41\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x39\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x41\x01\x3a\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7f\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x41\x01\x3b\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7e\x01\x7e\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x42\x01\x3c\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7e\x01\x7e\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x42\x01\x3d\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7e\x01\x7e\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x42\x01\x3e\x02\x00\x0b");
diff --git a/JSTests/wasm/spec-tests/switch.wast.js b/JSTests/wasm/spec-tests/switch.wast.js
new file mode 100644
index 0000000..18cfcd5
--- /dev/null
+++ b/JSTests/wasm/spec-tests/switch.wast.js
@@ -0,0 +1,122 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x12\x04\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x00\x01\x7f\x60\x00\x00\x03\x0c\x0b\x00\x01\x00\x02\x03\x03\x03\x03\x03\x03\x03\x07\x6b\x0b\x04\x73\x74\x6d\x74\x00\x00\x04\x65\x78\x70\x72\x00\x01\x03\x61\x72\x67\x00\x02\x06\x63\x6f\x72\x6e\x65\x72\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x06\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0a\x0a\xde\x02\x0b\x57\x01\x01\x7f\x41\xe4\x00\x21\x01\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x20\x00\x0e\x08\x00\x01\x02\x03\x04\x05\x06\x08\x07\x0b\x20\x00\x0f\x0b\x01\x0b\x0b\x41\x00\x20\x00\x6b\x21\x01\x0c\x05\x0b\x0c\x04\x0b\x41\xe5\x00\x21\x01\x0c\x03\x0b\x41\xe5\x00\x21\x01\x0b\x41\xe6\x00\x21\x01\x0b\x0b\x20\x01\x0f\x0b\x4c\x01\x01\x7e\x42\xe4\x00\x21\x01\x02\x7e\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x02\x40\x20\x00\xa7\x0e\x08\x00\x01\x02\x03\x06\x05\x04\x08\x07\x0b\x20\x00\x0f\x0b\x01\x0b\x0b\x42\x00\x20\x00\x7d\x0c\x05\x0b\x42\xe5\x00\x21\x01\x0b\x0b\x0b\x20\x01\x0c\x01\x0b\x42\x7b\x0b\x0f\x0b\x2a\x00\x02\x7f\x41\x0a\x02\x7f\x41\xe4\x00\x02\x7f\x41\xe8\x07\x02\x7f\x41\x02\x20\x00\x6c\x41\x03\x20\x00\x71\x0e\x03\x01\x02\x03\x00\x0b\x6a\x0b\x6a\x0b\x6a\x0b\x0f\x0b\x0c\x00\x02\x40\x41\x00\x0e\x00\x00\x0b\x41\x01\x0b\x11\x00\x02\x40\x42\x00\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x01\x10\x01\x42\x7f\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x02\x10\x01\x42\x7e\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x03\x10\x01\x42\x7d\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x06\x10\x01\x42\xe5\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x07\x10\x01\x42\x7b\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x12\x00\x02\x40\x42\x76\x10\x01\x42\xe4\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["stmt"](0), 0);
+assert_return(() => $$.exports["stmt"](1), -1);
+assert_return(() => $$.exports["stmt"](2), -2);
+assert_return(() => $$.exports["stmt"](3), -3);
+assert_return(() => $$.exports["stmt"](4), 100);
+assert_return(() => $$.exports["stmt"](5), 101);
+assert_return(() => $$.exports["stmt"](6), 102);
+assert_return(() => $$.exports["stmt"](7), 100);
+assert_return(() => $$.exports["stmt"](-10), 102);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_return(() => $$.exports["assert_5"]());
+assert_return(() => $$.exports["assert_6"]());
+assert_return(() => $$.exports["arg"](0), 110);
+assert_return(() => $$.exports["arg"](1), 12);
+assert_return(() => $$.exports["arg"](2), 4);
+assert_return(() => $$.exports["arg"](3), 1116);
+assert_return(() => $$.exports["arg"](4), 118);
+assert_return(() => $$.exports["arg"](5), 20);
+assert_return(() => $$.exports["arg"](6), 12);
+assert_return(() => $$.exports["arg"](7), 1124);
+assert_return(() => $$.exports["arg"](8), 126);
+assert_return(() => $$.exports["corner"](), 1);
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x00\x41\x00\x0e\x00\x03\x0b");
diff --git a/JSTests/wasm/spec-tests/tee_local.wast.js b/JSTests/wasm/spec-tests/tee_local.wast.js
new file mode 100644
index 0000000..dfee97c
--- /dev/null
+++ b/JSTests/wasm/spec-tests/tee_local.wast.js
@@ -0,0 +1,129 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x42\x0c\x60\x00\x01\x7f\x60\x00\x01\x7e\x60\x00\x01\x7d\x60\x00\x01\x7c\x60\x01\x7f\x01\x7f\x60\x01\x7e\x01\x7e\x60\x01\x7d\x01\x7d\x60\x01\x7c\x01\x7c\x60\x05\x7e\x7d\x7c\x7f\x7f\x00\x60\x05\x7e\x7d\x7c\x7f\x7f\x01\x7e\x60\x05\x7e\x7d\x7c\x7f\x7f\x01\x7c\x60\x00\x00\x03\x11\x10\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0b\x0b\x0b\x0b\x07\xde\x01\x10\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x33\x32\x00\x00\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x69\x36\x34\x00\x01\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x33\x32\x00\x02\x0e\x74\x79\x70\x65\x2d\x6c\x6f\x63\x61\x6c\x2d\x66\x36\x34\x00\x03\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x69\x33\x32\x00\x04\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x69\x36\x34\x00\x05\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x66\x33\x32\x00\x06\x0e\x74\x79\x70\x65\x2d\x70\x61\x72\x61\x6d\x2d\x66\x36\x34\x00\x07\x0a\x74\x79\x70\x65\x2d\x6d\x69\x78\x65\x64\x00\x08\x05\x77\x72\x69\x74\x65\x00\x09\x06\x72\x65\x73\x75\x6c\x74\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0f\x0a\xdf\x03\x10\x08\x01\x01\x7f\x41\x00\x22\x00\x0b\x08\x01\x01\x7e\x42\x00\x22\x00\x0b\x0b\x01\x01\x7d\x43\x00\x00\x00\x00\x22\x00\x0b\x0f\x01\x01\x7c\x44\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x0b\x06\x00\x41\x0a\x22\x00\x0b\x06\x00\x42\x0b\x22\x00\x0b\x09\x00\x43\x9a\x99\x31\x41\x22\x00\x0b\x0d\x00\x44\x66\x66\x66\x66\x66\x66\x28\x40\x22\x00\x0b\x52\x03\x01\x7d\x02\x7e\x01\x7c\x42\x00\x22\x00\x50\x1a\x43\x00\x00\x00\x00\x22\x01\x8c\x1a\x44\x00\x00\x00\x00\x00\x00\x00\x00\x22\x02\x9a\x1a\x41\x00\x22\x03\x45\x1a\x41\x00\x22\x04\x45\x1a\x43\x00\x00\x00\x00\x22\x05\x8c\x1a\x42\x00\x22\x06\x50\x1a\x42\x00\x22\x07\x50\x1a\x44\x00\x00\x00\x00\x00\x00\x00\x00\x22\x08\x9a\x1a\x0b\x55\x03\x01\x7d\x02\x7e\x01\x7c\x43\x9a\x99\x99\xbe\x22\x01\x1a\x41\x28\x22\x03\x1a\x41\x79\x22\x04\x1a\x43\x00\x00\xb0\x40\x22\x05\x1a\x42\x06\x22\x06\x1a\x44\x00\x00\x00\x00\x00\x00\x20\x40\x22\x08\x1a\x20\x00\xba\x20\x01\xbb\x20\x02\x20\x03\xb8\x20\x04\xb7\x20\x05\xbb\x20\x06\xba\x20\x07\xba\x20\x08\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xb0\x0b\x4f\x03\x01\x7d\x02\x7e\x01\x7c\x42\x01\x22\x00\xba\x43\x00\x00\x00\x40\x22\x01\xbb\x44\x66\x66\x66\x66\x66\x66\x0a\x40\x22\x02\x41\x04\x22\x03\xb8\x41\x05\x22\x04\xb7\x43\x00\x00\xb0\x40\x22\x05\xbb\x42\x06\x22\x06\xba\x42\x00\x22\x07\xba\x44\x00\x00\x00\x00\x00\x00\x20\x40\x22\x08\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\x0b\x0f\x00\x02\x40\x10\x01\x42\x00\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x11\x00\x02\x40\x42\x03\x10\x05\x42\x0b\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x1d\x00\x02\x40\x42\x01\x43\xcd\xcc\x0c\x40\x44\x66\x66\x66\x66\x66\x66\x0a\x40\x41\x04\x41\x05\x10\x08\x0f\x0b\x00\x0b\x23\x00\x02\x40\x42\x01\x43\x00\x00\x00\x40\x44\x66\x66\x66\x66\x66\x66\x0a\x40\x41\x04\x41\x05\x10\x09\x42\x38\x51\x45\x0d\x00\x0f\x0b\x00\x0b\x2c\x00\x02\x40\x42\x7f\x43\x00\x00\x00\xc0\x44\x66\x66\x66\x66\x66\x66\x0a\xc0\x41\x7c\x41\x7b\x10\x0a\xbd\x44\x66\x66\x66\x66\x66\x66\x41\x40\xbd\x51\x45\x0d\x00\x0f\x0b\x00\x0b");
+assert_return(() => $$.exports["type-local-i32"](), 0);
+assert_return(() => $$.exports["assert_0"]());
+assert_return(() => $$.exports["type-local-f32"](), f32(0.0));
+assert_return(() => $$.exports["type-local-f64"](), 0.0);
+assert_return(() => $$.exports["type-param-i32"](2), 10);
+assert_return(() => $$.exports["assert_1"]());
+assert_return(() => $$.exports["type-param-f32"](f32(4.40000009537)), f32(11.1000003815));
+assert_return(() => $$.exports["type-param-f64"](5.5), 12.2);
+assert_return(() => $$.exports["assert_2"]());
+assert_return(() => $$.exports["assert_3"]());
+assert_return(() => $$.exports["assert_4"]());
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7e\x03\x02\x01\x00\x0a\x0a\x01\x08\x01\x01\x7f\x41\x00\x22\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x01\x01\x7d\x43\x00\x00\x00\x00\x22\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7c\x01\x7e\x42\x00\x22\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x09\x01\x07\x01\x01\x7f\x01\x22\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x01\x01\x7f\x43\x00\x00\x00\x00\x22\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x11\x01\x0f\x01\x01\x7d\x44\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x13\x01\x11\x02\x01\x7c\x01\x7e\x44\x00\x00\x00\x00\x00\x00\x00\x00\x22\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x01\x7f\x01\x7e\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x20\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7c\x7e\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x20\x01\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x01\x22\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x43\x00\x00\x00\x00\x22\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7c\x7e\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x22\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x02\x01\x7f\x01\x7e\x20\x03\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7f\x01\x7e\x20\xf7\xa4\xea\x06\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7f\x7e\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x20\x02\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x02\x01\x7f\x01\x7e\x20\xf7\xf2\xce\xd4\x02\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7f\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x02\x01\x7f\x01\x7e\x20\x03\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7e\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x02\x01\x7f\x01\x7e\x20\xf7\xa8\x99\x66\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7d\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x01\x01\x7f\x43\x00\x00\x00\x00\x22\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x06\x01\x60\x02\x7e\x7f\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x01\x01\x7d\x43\x00\x00\x00\x00\x22\x01\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x01\x7e\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x02\x01\x7c\x01\x7e\x42\x00\x22\x01\x0b");
diff --git a/JSTests/wasm/spec-tests/traps.wast.js b/JSTests/wasm/spec-tests/traps.wast.js
new file mode 100644
index 0000000..bdfb9b9
--- /dev/null
+++ b/JSTests/wasm/spec-tests/traps.wast.js
@@ -0,0 +1,118 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7f\x7f\x01\x7f\x60\x02\x7e\x7e\x01\x7e\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x63\x06\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x64\x69\x76\x5f\x73\x00\x00\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x64\x69\x76\x5f\x75\x00\x01\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x64\x69\x76\x5f\x73\x00\x02\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x64\x69\x76\x5f\x75\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x37\x06\x07\x00\x20\x00\x20\x01\x6d\x0b\x07\x00\x20\x00\x20\x01\x6e\x0b\x07\x00\x20\x00\x20\x01\x7f\x0b\x07\x00\x20\x00\x20\x01\x80\x0b\x0a\x00\x42\x01\x42\x00\x10\x02\x0c\x00\x0b\x0a\x00\x42\x01\x42\x00\x10\x03\x0c\x00\x0b");
+assert_trap(() => $$.exports["no_dce.i32.div_s"](1, 0));
+assert_trap(() => $$.exports["no_dce.i32.div_u"](1, 0));
+assert_trap(() => $$.exports["assert_0"]());
+assert_trap(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x10\x03\x60\x02\x7f\x7f\x01\x7f\x60\x02\x7e\x7e\x01\x7e\x60\x00\x00\x03\x07\x06\x00\x00\x01\x01\x02\x02\x07\x63\x06\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x72\x65\x6d\x5f\x73\x00\x00\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x72\x65\x6d\x5f\x75\x00\x01\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x72\x65\x6d\x5f\x73\x00\x02\x10\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x72\x65\x6d\x5f\x75\x00\x03\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x04\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x05\x0a\x37\x06\x07\x00\x20\x00\x20\x01\x6f\x0b\x07\x00\x20\x00\x20\x01\x70\x0b\x07\x00\x20\x00\x20\x01\x81\x0b\x07\x00\x20\x00\x20\x01\x82\x0b\x0a\x00\x42\x01\x42\x00\x10\x02\x0c\x00\x0b\x0a\x00\x42\x01\x42\x00\x10\x03\x0c\x00\x0b");
+assert_trap(() => $$.exports["no_dce.i32.rem_s"](1, 0));
+assert_trap(() => $$.exports["no_dce.i32.rem_u"](1, 0));
+assert_trap(() => $$.exports["assert_0"]());
+assert_trap(() => $$.exports["assert_1"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x18\x05\x60\x01\x7d\x01\x7f\x60\x01\x7c\x01\x7f\x60\x01\x7d\x01\x7e\x60\x01\x7c\x01\x7e\x60\x00\x00\x03\x11\x10\x00\x00\x01\x01\x02\x02\x03\x03\x04\x04\x04\x04\x04\x04\x04\x04\x07\xa1\x02\x10\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x33\x32\x00\x00\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x33\x32\x00\x01\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x36\x34\x00\x02\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x36\x34\x00\x03\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x33\x32\x00\x04\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x33\x32\x00\x05\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x73\x5f\x66\x36\x34\x00\x06\x16\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x74\x72\x75\x6e\x63\x5f\x75\x5f\x66\x36\x34\x00\x07\x08\x61\x73\x73\x65\x72\x74\x5f\x30\x00\x08\x08\x61\x73\x73\x65\x72\x74\x5f\x31\x00\x09\x08\x61\x73\x73\x65\x72\x74\x5f\x32\x00\x0a\x08\x61\x73\x73\x65\x72\x74\x5f\x33\x00\x0b\x08\x61\x73\x73\x65\x72\x74\x5f\x34\x00\x0c\x08\x61\x73\x73\x65\x72\x74\x5f\x35\x00\x0d\x08\x61\x73\x73\x65\x72\x74\x5f\x36\x00\x0e\x08\x61\x73\x73\x65\x72\x74\x5f\x37\x00\x0f\x0a\xa1\x01\x10\x05\x00\x20\x00\xa8\x0b\x05\x00\x20\x00\xa9\x0b\x05\x00\x20\x00\xaa\x0b\x05\x00\x20\x00\xab\x0b\x05\x00\x20\x00\xae\x0b\x05\x00\x20\x00\xaf\x0b\x05\x00\x20\x00\xb0\x0b\x05\x00\x20\x00\xb1\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x00\x0c\x00\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x01\x0c\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x02\x0c\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x03\x0c\x00\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x04\x0c\x00\x0b\x0b\x00\x43\x00\x00\xc0\x7f\x10\x05\x0c\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x06\x0c\x00\x0b\x0f\x00\x44\x00\x00\x00\x00\x00\x00\xf8\x7f\x10\x07\x0c\x00\x0b");
+assert_trap(() => $$.exports["assert_0"]());
+assert_trap(() => $$.exports["assert_1"]());
+assert_trap(() => $$.exports["assert_2"]());
+assert_trap(() => $$.exports["assert_3"]());
+assert_trap(() => $$.exports["assert_4"]());
+assert_trap(() => $$.exports["assert_5"]());
+assert_trap(() => $$.exports["assert_6"]());
+assert_trap(() => $$.exports["assert_7"]());
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x15\x04\x60\x01\x7f\x01\x7f\x60\x01\x7f\x01\x7e\x60\x01\x7f\x01\x7d\x60\x01\x7f\x01\x7c\x03\x05\x04\x00\x01\x02\x03\x05\x03\x01\x00\x01\x07\x49\x04\x0f\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x33\x32\x2e\x6c\x6f\x61\x64\x00\x00\x0f\x6e\x6f\x5f\x64\x63\x65\x2e\x69\x36\x34\x2e\x6c\x6f\x61\x64\x00\x01\x0f\x6e\x6f\x5f\x64\x63\x65\x2e\x66\x33\x32\x2e\x6c\x6f\x61\x64\x00\x02\x0f\x6e\x6f\x5f\x64\x63\x65\x2e\x66\x36\x34\x2e\x6c\x6f\x61\x64\x00\x03\x0a\x21\x04\x07\x00\x20\x00\x28\x02\x00\x0b\x07\x00\x20\x00\x29\x03\x00\x0b\x07\x00\x20\x00\x2a\x02\x00\x0b\x07\x00\x20\x00\x2b\x03\x00\x0b");
+assert_trap(() => $$.exports["no_dce.i32.load"](65536));
+assert_trap(() => $$.exports["no_dce.i64.load"](65536));
+assert_trap(() => $$.exports["no_dce.f32.load"](65536));
+assert_trap(() => $$.exports["no_dce.f64.load"](65536));
diff --git a/JSTests/wasm/spec-tests/typecheck.wast.js b/JSTests/wasm/spec-tests/typecheck.wast.js
new file mode 100644
index 0000000..f881b9c
--- /dev/null
+++ b/JSTests/wasm/spec-tests/typecheck.wast.js
@@ -0,0 +1,287 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x45\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x41\x00\x02\x40\x45\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x41\x00\x03\x40\x45\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x41\x00\x41\x00\x04\x40\x45\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x41\x00\x41\x00\x04\x7f\x41\x00\x05\x45\x0b\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x06\x01\x04\x00\x6a\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x08\x01\x06\x00\x41\x00\x6a\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x41\x00\x41\x00\x02\x40\x6a\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x41\x00\x02\x40\x41\x00\x6a\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x41\x00\x41\x00\x03\x40\x6a\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x41\x00\x03\x40\x41\x00\x6a\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x41\x00\x41\x00\x41\x00\x6a\x04\x40\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x41\x00\x41\x00\x41\x00\x04\x40\x6a\x05\x1a\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x15\x01\x13\x00\x41\x00\x41\x00\x41\x00\x04\x7f\x41\x00\x05\x6a\x41\x00\x0b\x1a\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x41\x00\x41\x00\x04\x7f\x41\x00\x05\x6a\x0b\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x04\x40\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x02\x40\x04\x40\x0b\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x03\x40\x04\x40\x0b\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x41\x00\x41\x00\x04\x40\x04\x40\x0b\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x14\x01\x12\x00\x41\x00\x41\x00\x04\x7f\x41\x00\x05\x04\x40\x0b\x41\x00\x0b\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0b\x01\x09\x00\x02\x7f\x0c\x00\x0b\x45\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x00\x41\x00\x02\x7f\x0c\x00\x0b\x45\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x12\x01\x10\x00\x02\x40\x41\x00\x41\x00\x04\x7f\x0c\x00\x0b\x0b\x45\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x15\x01\x13\x00\x02\x40\x41\x00\x41\x00\x04\x7f\x41\x00\x05\x0c\x00\x0b\x0b\x45\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x05\x01\x03\x00\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x41\x00\x02\x40\x0f\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x41\x00\x03\x40\x0f\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x41\x00\x04\x40\x0f\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x41\x00\x41\x00\x04\x7f\x41\x00\x05\x0f\x0b\x1a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x43\x00\x00\x00\x00\x04\x40\x01\x05\x01\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0e\x01\x0c\x00\x02\x40\x43\x00\x00\x00\x00\x0d\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x02\x40\x43\x00\x00\x00\x00\x0e\x00\x00\x0b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x03\x03\x02\x00\x01\x0a\x0e\x02\x02\x00\x0b\x09\x00\x43\x00\x00\x00\x00\x10\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x01\x7f\x00\x60\x00\x00\x03\x03\x02\x00\x01\x04\x04\x01\x70\x00\x00\x0a\x11\x02\x02\x00\x0b\x0c\x00\x41\x00\x43\x00\x00\x00\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x03\x02\x00\x00\x04\x04\x01\x70\x00\x00\x0a\x0f\x02\x02\x00\x0b\x0a\x00\x43\x00\x00\x00\x00\x11\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x43\x00\x00\x00\x00\x0f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0d\x01\x0b\x01\x01\x7f\x43\x00\x00\x00\x00\x21\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x28\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x2c\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x2d\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x2e\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x2f\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x29\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x30\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x31\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x32\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x33\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x34\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x35\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x2a\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0c\x01\x0a\x00\x43\x00\x00\x00\x00\x2b\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x41\x00\x36\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x41\x00\x3a\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x41\x00\x3b\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x41\x00\x37\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x42\x00\x3c\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x42\x00\x3d\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x43\x00\x00\x00\x00\x42\x00\x3e\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x11\x01\x0f\x00\x43\x00\x00\x00\x00\x43\x00\x00\x00\x00\x38\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x15\x01\x13\x00\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x39\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x41\x00\x43\x00\x00\x00\x00\x36\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x41\x00\x43\x00\x00\x00\x00\x3a\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x41\x00\x43\x00\x00\x00\x00\x3b\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0e\x01\x0c\x00\x41\x00\x43\x00\x00\x00\x00\x37\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x12\x01\x10\x00\x41\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x12\x01\x10\x00\x41\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x3d\x01\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x12\x01\x10\x00\x41\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x3e\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x41\x00\x38\x02\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x41\x00\x42\x00\x39\x03\x00\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x6a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x71\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x6d\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x6e\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x6c\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x72\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x6f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x70\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x77\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x78\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x74\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x75\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x76\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x6b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x73\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x7c\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x83\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x7f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x80\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x7e\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x84\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x81\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x82\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x89\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x8a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x86\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x87\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x88\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x7d\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x85\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x92\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x98\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x95\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x97\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x96\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x94\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x93\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\xa0\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\xa6\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\xa3\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\xa5\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\xa4\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\xa2\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\xa1\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x45\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x67\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x68\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x69\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\x50\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\x79\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\x7a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\x7b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x8b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x8d\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x8e\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x90\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x8c\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x91\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x8f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x99\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x9b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x9c\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x9e\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x9a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x9f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\x9d\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x46\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x4e\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x4f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x4a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x4b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x4c\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x4d\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x48\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x49\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x47\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x51\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x59\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x5a\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x55\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x56\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x57\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x58\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x53\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x54\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x41\x00\x43\x00\x00\x00\x00\x52\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x60\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x5e\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x5f\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x10\x01\x0e\x00\x42\x00\x44\x00\x00\x00\x00\x00\x00\x00\x00\x5c\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x61\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x66\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x64\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x65\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x63\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0c\x01\x0a\x00\x42\x00\x43\x00\x00\x00\x00\x62\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x43\x00\x00\x00\x00\xa7\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xa8\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xa9\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xaa\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xab\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xbc\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x43\x00\x00\x00\x00\xac\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x0a\x01\x08\x00\x43\x00\x00\x00\x00\xad\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xae\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xaf\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xb0\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xb1\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xbd\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xb2\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xb3\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xb4\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xb5\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xb6\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xbe\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xb7\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x42\x00\xb8\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xb9\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xba\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xbb\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x0a\x07\x01\x05\x00\x41\x00\xbf\x0b");
+assert_invalid("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x04\x01\x60\x00\x00\x03\x02\x01\x00\x05\x03\x01\x00\x01\x0a\x0b\x01\x09\x00\x43\x00\x00\x00\x00\x40\x00\x0b");
diff --git a/JSTests/wasm/spec-tests/unreachable.wast.js b/JSTests/wasm/spec-tests/unreachable.wast.js
new file mode 100644
index 0000000..dd19162
--- /dev/null
+++ b/JSTests/wasm/spec-tests/unreachable.wast.js
@@ -0,0 +1,152 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x26\x08\x60\x00\x00\x60\x03\x7f\x7f\x7f\x00\x60\x00\x01\x7f\x60\x00\x01\x7c\x60\x00\x01\x7e\x60\x02\x7f\x7f\x01\x7f\x60\x03\x7f\x7f\x7f\x00\x60\x00\x01\x7d\x03\x38\x37\x00\x01\x02\x02\x03\x03\x02\x02\x00\x02\x02\x02\x00\x02\x02\x02\x02\x00\x02\x02\x00\x02\x02\x00\x02\x02\x04\x02\x05\x05\x05\x05\x02\x00\x00\x00\x00\x00\x00\x00\x00\x07\x04\x00\x00\x00\x00\x07\x02\x04\x02\x02\x02\x02\x02\x04\x05\x01\x70\x01\x01\x01\x05\x03\x01\x00\x01\x07\x98\x07\x35\x08\x74\x79\x70\x65\x2d\x69\x33\x32\x00\x02\x08\x74\x79\x70\x65\x2d\x69\x36\x34\x00\x03\x08\x74\x79\x70\x65\x2d\x66\x33\x32\x00\x04\x08\x74\x79\x70\x65\x2d\x66\x36\x34\x00\x05\x0d\x61\x73\x2d\x66\x75\x6e\x63\x2d\x66\x69\x72\x73\x74\x00\x06\x0b\x61\x73\x2d\x66\x75\x6e\x63\x2d\x6d\x69\x64\x00\x07\x0c\x61\x73\x2d\x66\x75\x6e\x63\x2d\x6c\x61\x73\x74\x00\x08\x0d\x61\x73\x2d\x66\x75\x6e\x63\x2d\x76\x61\x6c\x75\x65\x00\x09\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x66\x69\x72\x73\x74\x00\x0a\x0c\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6d\x69\x64\x00\x0b\x0d\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x6c\x61\x73\x74\x00\x0c\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x00\x0d\x0e\x61\x73\x2d\x62\x6c\x6f\x63\x6b\x2d\x62\x72\x6f\x6b\x65\x00\x0e\x0d\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x66\x69\x72\x73\x74\x00\x0f\x0b\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6d\x69\x64\x00\x10\x0c\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x6c\x61\x73\x74\x00\x11\x0d\x61\x73\x2d\x6c\x6f\x6f\x70\x2d\x62\x72\x6f\x6b\x65\x00\x12\x0b\x61\x73\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x13\x0d\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x63\x6f\x6e\x64\x00\x14\x0e\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x00\x15\x13\x61\x73\x2d\x62\x72\x5f\x69\x66\x2d\x76\x61\x6c\x75\x65\x2d\x63\x6f\x6e\x64\x00\x16\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x69\x6e\x64\x65\x78\x00\x17\x11\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x18\x17\x61\x73\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x2d\x69\x6e\x64\x65\x78\x00\x19\x0f\x61\x73\x2d\x72\x65\x74\x75\x72\x6e\x2d\x76\x61\x6c\x75\x65\x00\x1a\x0a\x61\x73\x2d\x69\x66\x2d\x63\x6f\x6e\x64\x00\x1b\x0a\x61\x73\x2d\x69\x66\x2d\x74\x68\x65\x6e\x00\x1c\x0a\x61\x73\x2d\x69\x66\x2d\x65\x6c\x73\x65\x00\x1d\x0f\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x1e\x10\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x73\x65\x63\x6f\x6e\x64\x00\x1f\x0e\x61\x73\x2d\x73\x65\x6c\x65\x63\x74\x2d\x63\x6f\x6e\x64\x00\x20\x0d\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x66\x69\x72\x73\x74\x00\x21\x0b\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6d\x69\x64\x00\x22\x0c\x61\x73\x2d\x63\x61\x6c\x6c\x2d\x6c\x61\x73\x74\x00\x23\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x75\x6e\x63\x00\x24\x16\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x66\x69\x72\x73\x74\x00\x25\x14\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6d\x69\x64\x00\x26\x15\x61\x73\x2d\x63\x61\x6c\x6c\x5f\x69\x6e\x64\x69\x72\x65\x63\x74\x2d\x6c\x61\x73\x74\x00\x27\x12\x61\x73\x2d\x73\x65\x74\x5f\x6c\x6f\x63\x61\x6c\x2d\x76\x61\x6c\x75\x65\x00\x28\x0f\x61\x73\x2d\x6c\x6f\x61\x64\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x29\x10\x61\x73\x2d\x6c\x6f\x61\x64\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2a\x10\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2b\x0e\x61\x73\x2d\x73\x74\x6f\x72\x65\x2d\x76\x61\x6c\x75\x65\x00\x2c\x11\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x61\x64\x64\x72\x65\x73\x73\x00\x2d\x0f\x61\x73\x2d\x73\x74\x6f\x72\x65\x4e\x2d\x76\x61\x6c\x75\x65\x00\x2e\x10\x61\x73\x2d\x75\x6e\x61\x72\x79\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x2f\x0e\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x6c\x65\x66\x74\x00\x30\x0f\x61\x73\x2d\x62\x69\x6e\x61\x72\x79\x2d\x72\x69\x67\x68\x74\x00\x31\x0f\x61\x73\x2d\x74\x65\x73\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x32\x0f\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x6c\x65\x66\x74\x00\x33\x10\x61\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x72\x69\x67\x68\x74\x00\x34\x12\x61\x73\x2d\x63\x6f\x6e\x76\x65\x72\x74\x2d\x6f\x70\x65\x72\x61\x6e\x64\x00\x35\x13\x61\x73\x2d\x67\x72\x6f\x77\x5f\x6d\x65\x6d\x6f\x72\x79\x2d\x73\x69\x7a\x65\x00\x36\x09\x07\x01\x00\x41\x00\x0b\x01\x01\x0a\xff\x03\x37\x02\x00\x0b\x02\x00\x0b\x03\x00\x00\x0b\x03\x00\x00\x0b\x03\x00\x00\x0b\x03\x00\x00\x0b\x05\x00\x00\x41\x7f\x0b\x07\x00\x10\x00\x00\x41\x7f\x0b\x05\x00\x10\x00\x00\x0b\x05\x00\x10\x00\x00\x0b\x08\x00\x02\x7f\x00\x41\x02\x0b\x0b\x0a\x00\x02\x7f\x10\x00\x00\x41\x02\x0b\x0b\x09\x00\x02\x40\x01\x10\x00\x00\x0b\x0b\x09\x00\x02\x7f\x01\x10\x00\x00\x0b\x0b\x0c\x00\x02\x7f\x10\x00\x41\x01\x0c\x00\x00\x0b\x0b\x08\x00\x03\x7f\x00\x41\x02\x0b\x0b\x0a\x00\x03\x7f\x10\x00\x00\x41\x02\x0b\x0b\x09\x00\x03\x40\x01\x10\x00\x00\x0b\x0b\x0f\x00\x02\x7f\x03\x7f\x10\x00\x41\x01\x0c\x01\x00\x0b\x0b\x0b\x08\x00\x02\x7f\x00\x0c\x00\x0b\x0b\x08\x00\x02\x40\x00\x0d\x00\x0b\x0b\x0d\x00\x02\x7f\x00\x41\x01\x0d\x00\x1a\x41\x07\x0b\x0b\x0d\x00\x02\x7f\x41\x06\x00\x0d\x00\x1a\x41\x07\x0b\x0b\x0b\x00\x02\x40\x00\x0e\x02\x00\x00\x00\x0b\x0b\x0f\x00\x02\x7f\x00\x41\x01\x0e\x02\x00\x00\x00\x41\x07\x0b\x0b\x0e\x00\x02\x7f\x41\x06\x00\x0e\x01\x00\x00\x41\x07\x0b\x0b\x04\x00\x00\x0f\x0b\x0b\x00\x00\x04\x7f\x41\x00\x05\x41\x01\x0b\x0b\x0b\x00\x20\x00\x04\x7f\x00\x05\x20\x01\x0b\x0b\x0b\x00\x20\x00\x04\x7f\x20\x01\x05\x00\x0b\x0b\x08\x00\x00\x20\x00\x20\x01\x1b\x0b\x08\x00\x20\x00\x00\x20\x01\x1b\x0b\x08\x00\x41\x00\x41\x01\x00\x1b\x0b\x09\x00\x00\x41\x02\x41\x03\x10\x01\x0b\x09\x00\x41\x01\x00\x41\x03\x10\x01\x0b\x09\x00\x41\x01\x41\x02\x00\x10\x01\x0b\x0c\x00\x00\x41\x01\x41\x02\x41\x03\x11\x06\x00\x0b\x0c\x00\x41\x00\x00\x41\x02\x41\x03\x11\x06\x00\x0b\x0c\x00\x41\x00\x41\x01\x00\x41\x03\x11\x06\x00\x0b\x0c\x00\x41\x00\x41\x01\x41\x02\x00\x11\x06\x00\x0b\x07\x01\x01\x7d\x00\x21\x00\x0b\x06\x00\x00\x2a\x02\x00\x0b\x06\x00\x00\x30\x00\x00\x0b\x0f\x00\x00\x44\x00\x00\x00\x00\x00\x00\x1c\x40\x39\x03\x00\x0b\x08\x00\x41\x02\x00\x37\x03\x00\x0b\x08\x00\x00\x41\x07\x3a\x00\x00\x0b\x08\x00\x41\x02\x00\x3d\x01\x00\x0b\x04\x00\x00\x8c\x0b\x06\x00\x00\x41\x0a\x6a\x0b\x06\x00\x42\x0a\x00\x7d\x0b\x04\x00\x00\x45\x0b\x0d\x00\x00\x44\x00\x00\x00\x00\x00\x00\x24\x40\x65\x0b\x09\x00\x43\x00\x00\x20\x41\x00\x5c\x0b\x04\x00\x00\xa7\x0b\x05\x00\x00\x40\x00\x0b");
+assert_trap(() => $$.exports["type-i32"]());
+assert_trap(() => $$.exports["type-i64"]());
+assert_trap(() => $$.exports["type-f32"]());
+assert_trap(() => $$.exports["type-f64"]());
+assert_trap(() => $$.exports["as-func-first"]());
+assert_trap(() => $$.exports["as-func-mid"]());
+assert_trap(() => $$.exports["as-func-last"]());
+assert_trap(() => $$.exports["as-func-value"]());
+assert_trap(() => $$.exports["as-block-first"]());
+assert_trap(() => $$.exports["as-block-mid"]());
+assert_trap(() => $$.exports["as-block-last"]());
+assert_trap(() => $$.exports["as-block-value"]());
+assert_return(() => $$.exports["as-block-broke"](), 1);
+assert_trap(() => $$.exports["as-loop-first"]());
+assert_trap(() => $$.exports["as-loop-mid"]());
+assert_trap(() => $$.exports["as-loop-last"]());
+assert_return(() => $$.exports["as-loop-broke"](), 1);
+assert_trap(() => $$.exports["as-br-value"]());
+assert_trap(() => $$.exports["as-br_if-cond"]());
+assert_trap(() => $$.exports["as-br_if-value"]());
+assert_trap(() => $$.exports["as-br_if-value-cond"]());
+assert_trap(() => $$.exports["as-br_table-index"]());
+assert_trap(() => $$.exports["as-br_table-value"]());
+assert_trap(() => $$.exports["as-br_table-value-index"]());
+assert_trap(() => $$.exports["as-return-value"]());
+assert_trap(() => $$.exports["as-if-cond"]());
+assert_trap(() => $$.exports["as-if-then"](1, 6));
+assert_return(() => $$.exports["as-if-then"](0, 6), 6);
+assert_trap(() => $$.exports["as-if-else"](0, 6));
+assert_return(() => $$.exports["as-if-else"](1, 6), 6);
+assert_trap(() => $$.exports["as-select-first"](0, 6));
+assert_trap(() => $$.exports["as-select-first"](1, 6));
+assert_trap(() => $$.exports["as-select-second"](0, 6));
+assert_trap(() => $$.exports["as-select-second"](1, 6));
+assert_trap(() => $$.exports["as-select-cond"]());
+assert_trap(() => $$.exports["as-call-first"]());
+assert_trap(() => $$.exports["as-call-mid"]());
+assert_trap(() => $$.exports["as-call-last"]());
+assert_trap(() => $$.exports["as-call_indirect-func"]());
+assert_trap(() => $$.exports["as-call_indirect-first"]());
+assert_trap(() => $$.exports["as-call_indirect-mid"]());
+assert_trap(() => $$.exports["as-call_indirect-last"]());
+assert_trap(() => $$.exports["as-set_local-value"]());
+assert_trap(() => $$.exports["as-load-address"]());
+assert_trap(() => $$.exports["as-loadN-address"]());
+assert_trap(() => $$.exports["as-store-address"]());
+assert_trap(() => $$.exports["as-store-value"]());
+assert_trap(() => $$.exports["as-storeN-address"]());
+assert_trap(() => $$.exports["as-storeN-value"]());
+assert_trap(() => $$.exports["as-unary-operand"]());
+assert_trap(() => $$.exports["as-binary-left"]());
+assert_trap(() => $$.exports["as-binary-right"]());
+assert_trap(() => $$.exports["as-test-operand"]());
+assert_trap(() => $$.exports["as-compare-left"]());
+assert_trap(() => $$.exports["as-compare-right"]());
+assert_trap(() => $$.exports["as-convert-operand"]());
+assert_trap(() => $$.exports["as-grow_memory-size"]());
diff --git a/JSTests/wasm/spec-tests/unwind.wast.js b/JSTests/wasm/spec-tests/unwind.wast.js
new file mode 100644
index 0000000..9df3ec0
--- /dev/null
+++ b/JSTests/wasm/spec-tests/unwind.wast.js
@@ -0,0 +1,133 @@
+/* Copied from *
+ * https://github.com/WebAssembly/spec/blob/master/interpreter/host/js.ml */
+'use strict';
+
+let soft_validate = true;
+
+let spectest = {
+ print: print || ((...xs) => console.log(...xs)),
+ global: 666,
+ table: new WebAssembly.Table({initial: 10, maximum: 20, element: 'anyfunc'}),
+ memory: new WebAssembly.Memory({initial: 1, maximum: 2}),};
+
+let registry = {spectest};
+let $$;
+
+function register(name, instance) {
+ registry[name] = instance.exports;
+}
+
+function module(bytes) {
+ let buffer = new ArrayBuffer(bytes.length);
+ let view = new Uint8Array(buffer);
+ for (let i = 0; i < bytes.length; ++i) {
+ view[i] = bytes.charCodeAt(i);
+ }
+ return new WebAssembly.Module(buffer);
+}
+
+function instance(bytes, imports = registry) {
+ return new WebAssembly.Instance(module(bytes), imports);
+}
+
+function assert_malformed(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm decoding failure expected");
+}
+
+function assert_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ }
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_soft_invalid(bytes) {
+ try { module(bytes) } catch (e) {
+ if (e instanceof WebAssembly.CompileError) return;
+ throw new Error("Wasm validation failure expected");
+ }
+ if (soft_validate)
+ throw new Error("Wasm validation failure expected");
+}
+
+function assert_unlinkable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof TypeError) return;
+ }
+ throw new Error("Wasm linking failure expected");
+}
+
+function assert_uninstantiable(bytes) {
+ let mod = module(bytes);
+ try { new WebAssembly.Instance(mod, registry) } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_trap(action) {
+ try { action() } catch (e) {
+ if (e instanceof WebAssembly.RuntimeError) return;
+ }
+ throw new Error("Wasm trap expected");
+}
+
+function assert_return(action, expected) {
+ let actual = action();
+ if (!Object.is(actual, expected)) {
+ throw new Error("Wasm return value " + expected + " expected, got " + actual);
+ };
+}
+
+function assert_return_nan(action) {
+ let actual = action();
+ if (!Number.isNaN(actual)) {
+ throw new Error("Wasm return value NaN expected, got " + actual);
+ };
+}
+
+let f32 = Math.fround;
+
+$$ = instance("\x00\x61\x73\x6d\x0d\x00\x00\x00\x01\x08\x02\x60\x00\x00\x60\x00\x01\x7f\x03\x27\x26\x00\x00\x01\x00\x01\x01\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x07\xf5\x07\x26\x1a\x66\x75\x6e\x63\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x00\x11\x66\x75\x6e\x63\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x00\x01\x17\x66\x75\x6e\x63\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x02\x17\x66\x75\x6e\x63\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x03\x1d\x66\x75\x6e\x63\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x04\x15\x66\x75\x6e\x63\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x72\x65\x74\x75\x72\x6e\x00\x05\x1b\x62\x6c\x6f\x63\x6b\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x06\x12\x62\x6c\x6f\x63\x6b\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x00\x07\x18\x62\x6c\x6f\x63\x6b\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x08\x18\x62\x6c\x6f\x63\x6b\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x09\x1e\x62\x6c\x6f\x63\x6b\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x0a\x16\x62\x6c\x6f\x63\x6b\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x72\x65\x74\x75\x72\x6e\x00\x0b\x22\x62\x6c\x6f\x63\x6b\x2d\x6e\x65\x73\x74\x65\x64\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x0c\x19\x62\x6c\x6f\x63\x6b\x2d\x6e\x65\x73\x74\x65\x64\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x00\x0d\x1f\x62\x6c\x6f\x63\x6b\x2d\x6e\x65\x73\x74\x65\x64\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x2d\x76\x61\x6c\x75\x65\x00\x0e\x1f\x62\x6c\x6f\x63\x6b\x2d\x6e\x65\x73\x74\x65\x64\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x0f\x25\x62\x6c\x6f\x63\x6b\x2d\x6e\x65\x73\x74\x65\x64\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x2d\x76\x61\x6c\x75\x65\x00\x10\x1d\x62\x6c\x6f\x63\x6b\x2d\x6e\x65\x73\x74\x65\x64\x2d\x75\x6e\x77\x69\x6e\x64\x2d\x62\x79\x2d\x72\x65\x74\x75\x72\x6e\x00\x11\x17\x75\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x12\x0e\x75\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x00\x13\x14\x75\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x14\x12\x75\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x72\x65\x74\x75\x72\x6e\x00\x15\x18\x62\x69\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x16\x0f\x62\x69\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x00\x17\x15\x62\x69\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x18\x13\x62\x69\x6e\x61\x72\x79\x2d\x61\x66\x74\x65\x72\x2d\x72\x65\x74\x75\x72\x6e\x00\x19\x18\x73\x65\x6c\x65\x63\x74\x2d\x61\x66\x74\x65\x72\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x1a\x0f\x73\x65\x6c\x65\x63\x74\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x00\x1b\x15\x73\x65\x6c\x65\x63\x74\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x1c\x13\x73\x65\x6c\x65\x63\x74\x2d\x61\x66\x74\x65\x72\x2d\x72\x65\x74\x75\x72\x6e\x00\x1d\x1d\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x1e\x14\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x00\x1f\x1a\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x20\x18\x62\x6c\x6f\x63\x6b\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x72\x65\x74\x75\x72\x6e\x00\x21\x1c\x6c\x6f\x6f\x70\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x75\x6e\x72\x65\x61\x63\x68\x61\x62\x6c\x65\x00\x22\x13\x6c\x6f\x6f\x70\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x00\x23\x19\x6c\x6f\x6f\x70\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x62\x72\x5f\x74\x61\x62\x6c\x65\x00\x24\x17\x6c\x6f\x6f\x70\x2d\x76\x61\x6c\x75\x65\x2d\x61\x66\x74\x65\x72\x2d\x72\x65\x74\x75\x72\x6e\x00\x25\x0a\xfb\x04\x26\x07\x00\x41\x03\x42\x01\x00\x0b\x08\x00\x41\x03\x42\x01\x0c\x00\x0b\x0a\x00\x41\x03\x42\x01\x41\x09\x0c\x00\x0b\x0b\x00\x41\x03\x42\x01\x41\x00\x0e\x00\x00\x0b\x0d\x00\x41\x03\x42\x01\x41\x09\x41\x00\x0e\x00\x00\x0b\x09\x00\x41\x03\x42\x01\x41\x09\x0f\x0b\x0a\x00\x02\x40\x41\x03\x42\x01\x00\x0b\x0b\x0d\x00\x02\x40\x41\x03\x42\x01\x0c\x00\x0b\x41\x09\x0b\x0d\x00\x02\x7f\x41\x03\x42\x01\x41\x09\x0c\x00\x0b\x0b\x10\x00\x02\x40\x41\x03\x42\x01\x41\x00\x0e\x00\x00\x0b\x41\x09\x0b\x10\x00\x02\x7f\x41\x03\x42\x01\x41\x09\x41\x00\x0e\x00\x00\x0b\x0b\x0c\x00\x02\x7f\x41\x03\x42\x01\x41\x09\x0f\x0b\x0b\x0d\x00\x02\x7f\x41\x03\x02\x40\x42\x01\x00\x0b\x0b\x0b\x11\x00\x02\x40\x41\x03\x02\x40\x42\x01\x0c\x01\x0b\x1a\x0b\x41\x09\x0b\x10\x00\x02\x7f\x41\x03\x02\x40\x42\x01\x41\x09\x0c\x01\x0b\x0b\x0b\x14\x00\x02\x40\x41\x03\x02\x40\x42\x01\x41\x01\x0e\x00\x01\x0b\x1a\x0b\x41\x09\x0b\x13\x00\x02\x7f\x41\x03\x02\x40\x42\x01\x41\x09\x41\x01\x0e\x00\x01\x0b\x0b\x0b\x0f\x00\x02\x7f\x41\x03\x02\x40\x42\x01\x41\x09\x0f\x0b\x0b\x0b\x09\x00\x43\x00\x00\x00\x00\x00\x50\x0b\x0f\x00\x02\x7f\x43\x00\x00\x00\x00\x41\x09\x0c\x00\x50\x0b\x0b\x13\x00\x02\x7f\x43\x00\x00\x00\x00\x41\x09\x41\x00\x0e\x01\x00\x00\x50\x0b\x0b\x0b\x00\x43\x00\x00\x00\x00\x41\x09\x0f\x50\x0b\x12\x00\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x00\x51\x0b\x18\x00\x02\x7f\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x09\x0c\x00\x51\x0b\x0b\x1b\x00\x02\x7f\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x09\x41\x00\x0e\x00\x00\x51\x0b\x0b\x14\x00\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x41\x09\x0f\x51\x0b\x14\x00\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x42\x00\x00\x1b\x0b\x1a\x00\x02\x7f\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x42\x00\x41\x09\x0c\x00\x1b\x0b\x0b\x1d\x00\x02\x7f\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x42\x00\x41\x09\x41\x00\x0e\x00\x00\x1b\x0b\x0b\x16\x00\x43\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\xf0\x3f\x42\x01\x41\x09\x0f\x1b\x0b\x0b\x00\x02\x7f\x43\x00\x00\x00\x00\x00\x0b\x0b\x0e\x00\x02\x7f\x43\x00\x00\x00\x00\x41\x09\x0c\x00\x0b\x0b\x12\x00\x02\x7f\x43\x00\x00\x00\x00\x41\x09\x41\x00\x0e\x01\x00\x00\x0b\x0b\x0d\x00\x02\x7f\x43\x00\x00\x00\x00\x41\x09\x0f\x0b\x0b\x0b\x00\x03\x7f\x43\x00\x00\x00\x00\x00\x0b\x0b\x11\x00\x02\x7f\x03\x7f\x43\x00\x00\x00\x00\x41\x09\x0c\x01\x0b\x0b\x0b\x15\x00\x02\x7f\x03\x7f\x43\x00\x00\x00\x00\x41\x09\x41\x00\x0e\x01\x01\x01\x0b\x0b\x0b\x0d\x00\x03\x7f\x43\x00\x00\x00\x00\x41\x09\x0f\x0b\x0b");
+assert_trap(() => $$.exports["func-unwind-by-unreachable"]());
+assert_return(() => $$.exports["func-unwind-by-br"]());
+assert_return(() => $$.exports["func-unwind-by-br-value"](), 9);
+assert_return(() => $$.exports["func-unwind-by-br_table"]());
+assert_return(() => $$.exports["func-unwind-by-br_table-value"](), 9);
+assert_return(() => $$.exports["func-unwind-by-return"](), 9);
+assert_trap(() => $$.exports["block-unwind-by-unreachable"]());
+assert_return(() => $$.exports["block-unwind-by-br"](), 9);
+assert_return(() => $$.exports["block-unwind-by-br-value"](), 9);
+assert_return(() => $$.exports["block-unwind-by-br_table"](), 9);
+assert_return(() => $$.exports["block-unwind-by-br_table-value"](), 9);
+assert_return(() => $$.exports["block-unwind-by-return"](), 9);
+assert_trap(() => $$.exports["block-nested-unwind-by-unreachable"]());
+assert_return(() => $$.exports["block-nested-unwind-by-br"](), 9);
+assert_return(() => $$.exports["block-nested-unwind-by-br-value"](), 9);
+assert_return(() => $$.exports["block-nested-unwind-by-br_table"](), 9);
+assert_return(() => $$.exports["block-nested-unwind-by-br_table-value"](), 9);
+assert_return(() => $$.exports["block-nested-unwind-by-return"](), 9);
+assert_trap(() => $$.exports["unary-after-unreachable"]());
+assert_return(() => $$.exports["unary-after-br"](), 9);
+assert_return(() => $$.exports["unary-after-br_table"](), 9);
+assert_return(() => $$.exports["unary-after-return"](), 9);
+assert_trap(() => $$.exports["binary-after-unreachable"]());
+assert_return(() => $$.exports["binary-after-br"](), 9);
+assert_return(() => $$.exports["binary-after-br_table"](), 9);
+assert_return(() => $$.exports["binary-after-return"](), 9);
+assert_trap(() => $$.exports["select-after-unreachable"]());
+assert_return(() => $$.exports["select-after-br"](), 9);
+assert_return(() => $$.exports["select-after-br_table"](), 9);
+assert_return(() => $$.exports["select-after-return"](), 9);
+assert_trap(() => $$.exports["block-value-after-unreachable"]());
+assert_return(() => $$.exports["block-value-after-br"](), 9);
+assert_return(() => $$.exports["block-value-after-br_table"](), 9);
+assert_return(() => $$.exports["block-value-after-return"](), 9);
+assert_trap(() => $$.exports["loop-value-after-unreachable"]());
+assert_return(() => $$.exports["loop-value-after-br"](), 9);
+assert_return(() => $$.exports["loop-value-after-br_table"](), 9);
+assert_return(() => $$.exports["loop-value-after-return"](), 9);
diff --git a/Tools/ChangeLog b/Tools/ChangeLog
index f393d04..38e5af5 100644
--- a/Tools/ChangeLog
+++ b/Tools/ChangeLog
@@ -1,3 +1,12 @@
+2016-12-21 Saam Barati <sbarati@apple.com>
+
+ WebAssembly: Import spec tests
+ https://bugs.webkit.org/show_bug.cgi?id=166395
+
+ Rubber stamped by Keith Miller.
+
+ * Scripts/run-jsc-stress-tests:
+
2016-12-21 Alexey Proskuryakov <ap@apple.com>
REGRESSION: API test failure: _WKDownload.OriginatingWebView
diff --git a/Tools/Scripts/run-jsc-stress-tests b/Tools/Scripts/run-jsc-stress-tests
index 7d8e06c..47345b0 100755
--- a/Tools/Scripts/run-jsc-stress-tests
+++ b/Tools/Scripts/run-jsc-stress-tests
@@ -1182,6 +1182,24 @@
run("default-wasm", "-m", "--useWebAssembly=1")
end
+def runWebAssemblySpecTest(mode)
+ case mode
+ when :skip
+ return
+ end
+
+ return if !$jitTests
+ return if !$isFTLPlatform
+ # FIXME: The current WebAssembly implementation includes Darwin specific things.
+ # Once WebAssembly becomes ready to be ported, we will enable it on the other OSes (like Linux) and drop this workaround.
+ # https://bugs.webkit.org/show_bug.cgi?id=164032
+ return if $hostOS != "darwin"
+ modules = Dir[WASMTESTS_PATH + "*.js"].map { |f| File.basename(f) }
+ prepareExtraAbsoluteFiles(WASMTESTS_PATH, ["wasm.json"])
+ prepareExtraRelativeFiles(modules.map { |f| "../../" + f }, $collection)
+ run("default-wasm", "-m", "--useWebAssembly=1")
+end
+
def runChakra(mode, exception, baselineFile, extraFiles)
raise unless $benchmark.to_s =~ /\.js$/
failsWithException = exception != "NoException"