Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cranelift-fuzzgen fuzzbug: "Floating-point-exception in cranelift_filetests::function_runner::CompiledFunction::call::h6386b90d4c398abf" #4760

Closed
Tracked by #4798
cfallin opened this issue Aug 23, 2022 · 6 comments

Comments

@cfallin
Copy link
Member

cfallin commented Aug 23, 2022

https://oss-fuzz.com/testcase-detail/5258173635756032

ERROR: AddressSanitizer: FPE on unknown address 0x627000024418 (pc 0x627000024418 bp 0x7ffece9cd500 sp 0x7ffece9cd3e0 T0)
SCARINESS: 10 (signal)
    #0 0x627000024418  (<unknown module>)
    #1 0x6270000252f7  (<unknown module>)
    #0 0x561a4f7ef6c4 in cranelift_filetests::function_runner::CompiledFunction::call::ha6b9162cd2e21784 [wasmtime/cranelift/filetests/src/function_runner.rs:183](https://github.com/bytecodealliance/wasmtime/blob/418dbc15bd2a5269b338587661387e05fc77b983/cranelift/filetests/src/function_runner.rs#L183):9

input: here

cc @afonso360

@afonso360
Copy link
Contributor

Huh, I can't format this input:

ubuntu@instance-20220805-0848:~/git/wasmtime/fuzz$ cargo fuzz fmt cranelift-fuzzgen ./4760.in --no-default-features

Output of `std::fmt::Debug`:

Arbitrary Error: The raw data is not of the correct format to construct this type

@afonso360
Copy link
Contributor

Nevermind, forgot to base64 decode it 😅

Formatted
ubuntu@instance-20220805-0848:~/git/wasmtime/fuzz$ cargo fuzz fmt cranelift-fuzzgen ./4760.in --no-default-features

Output of `std::fmt::Debug`:

;; Fuzzgen test case

test interpret
test run
set enable_llvm_abi_extensions
target aarch64
target s390x
target x86_64

function u0:1(i8, i32, f32 sext, f32 sext, i64 uext, b1, b1, b1, b1 uext, b1, i128 uext, i64, i16 sext, i8, f64 sext, i8 sext) -> i8, f64, f64 sext, i8, i32, f32 sext, b1 sext, i64 uext, i128, i128, i128 uext, i128 uext, b1 sext, i8 sext, i128 uext, i64 system_v {
    ss0 = explicit_slot 54
    ss1 = explicit_slot 54
    ss2 = explicit_slot 54
    sig0 = (i64, i64) -> i64 fast
    sig1 = () -> b1, f64, f64, f64, f64, f64, f64, f64, f64, f64, f64, f64, f64, f64 system_v
    sig2 = (i64, i64) -> i64 fast
    fn0 = %UdivI64 sig0
    fn1 = colocated u0:0 sig1
    fn2 = colocated %UdivI64 sig2
    jt0 = jump_table [block11, block12, block12, block4, block3, block3, block3, block2, block12, block12, block12, block2, block9, block5]
    jt1 = jump_table [block3, block12, block12, block4, block3, block3, block3]
    jt2 = jump_table [block12, block12, block12, block2, block9, block5, block11, block3, block12, block12, block12, block12, block11, block12]
    jt3 = jump_table [block2, block2, block5, block4, block11, block2, block2, block2, block11, block2, block2, block2, block2, block3, block3, block4, block12, block12, block12, block12, block4, block9, block5, block3, block2, block3, block12, block12]
    jt4 = jump_table [block2, block4, block12, block4, block9, block5, block3, block2, block3, block12, block12, block5, block12, block12, block12]
    jt5 = jump_table [block2, block3, block4, block5, block2, block2, block2, block3, block2]
    jt6 = jump_table [block2, block4]
    jt7 = jump_table [block4, block4, block4, block3, block2, block12, block3, block3, block3, block3, block3, block3, block3, block3]
    jt8 = jump_table [block2, block2, block2]
    jt9 = jump_table [block3, block3]
    jt10 = jump_table [block12, block12]
    jt11 = jump_table [block12, block3, block3, block3, block12, block12, block12, block12, block5, block5, block5, block5, block3, block3, block12, block12, block5, block12, block12]
    jt12 = jump_table [block2, block3, block4, block9, block5, block3, block3, block12, block12, block12, block3, block11, block12, block12, block4, block3, block3, block3, block5]
    jt13 = jump_table [block2, block2]
    jt14 = jump_table [block3, block3, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2]
    jt15 = jump_table [block12, block11, block12, block12, block12, block3, block3, block3, block12, block12, block12, block12, block2, block12, block12, block12, block12, block3, block4]
    jt16 = jump_table [block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2]
    jt17 = jump_table [block12, block4, block9, block5, block3, block3, block12, block12, block5, block12, block12, block12, block12, block2, block3, block4, block2, block4, block12]
    jt18 = jump_table [block9, block5, block3, block3, block12, block12, block4, block3, block3, block3, block12, block12, block12, block12, block2, block9, block5, block11, block3, block12]
    jt19 = jump_table [block2, block2, block4, block2, block3, block3, block3, block3, block2]
    jt20 = jump_table [block5, block2, block2, block2, block2, block11, block2, block2, block2, block2, block2, block2, block2, block4, block2, block3, block4, block2, block4, block12, block4, block9, block5, block3, block2, block3, block12, block12]
    jt21 = jump_table [block2, block11]
    jt22 = jump_table [block4, block4, block4, block4, block4, block4, block3, block2, block12, block3, block3, block3, block3, block3]
    jt23 = jump_table [block3, block3, block12, block12, block12, block12, block2, block9, block5, block11, block3, block12, block12, block12, block12, block11, block12, block12, block12, block3, block3, block3, block12, block12, block12, block12, block2, block12, block12, block12, block12, block3]
    jt24 = jump_table [block3, block2, block2, block2, block2, block2, block2, block2, block2, block9, block4, block2, block9, block5, block2, block3, block4, block5, block2, block2, block2, block3, block2, block2, block2, block2, block2, block2, block2]
    jt25 = jump_table [block2, block2]
    jt26 = jump_table [block5, block3, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2]
    jt27 = jump_table [block5, block2]
    jt28 = jump_table [block3, block3, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2, block2]
    jt29 = jump_table [block3, block12, block12, block5, block12, block12, block4, block9, block5, block3]
    jt30 = jump_table [block12, block12, block2, block3, block4, block4, block4, block12, block4, block9, block5, block3, block3, block12, block12, block5, block12, block12, block12]
    jt31 = jump_table [block11, block12, block12, block4, block3, block3, block3, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5]
    jt32 = jump_table [block12, block2, block2, block2, block2, block2, block2, block2, block5, block2, block2, block2, block3, block2, block4, block2, block2, block2, block2]
    jt33 = jump_table [block5, block11, block12, block3, block12, block4, block12, block3, block2, block9, block5, block11, block9, block12, block3]
    jt34 = jump_table [block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block5, block11, block2, block11, block9, block11, block9, block11, block5, block5, block11, block2, block11, block4, block2, block2]
    jt35 = jump_table [block4, block2]
    jt36 = jump_table [block5, block2, block9, block12, block12, block12, block2, block2, block2, block12, block12]
    jt37 = jump_table [block2, block2]
    jt38 = jump_table [block5, block4, block11, block2, block12, block12, block12, block2, block2, block2, block12, block12, block12, block12, block2, block2, block2, block2, block3, block3, block3, block3, block3]
    jt39 = jump_table [block4, block12, block9, block4, block9, block5, block3, block2, block3, block12, block12, block5, block12, block12, block12, block12, block5, block3, block3, block2, block2, block2, block2, block2, block2, block2, block2]
    jt40 = jump_table [block4, block2, block9, block11, block11, block11, block11, block12, block4, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5]
    jt41 = jump_table [block11, block5]
    jt42 = jump_table [block12, block11, block12, block12, block12, block3, block3, block3, block12, block12, block12, block12, block5, block5, block5, block5, block3, block3, block12]
    jt43 = jump_table [block4, block2]
    jt44 = jump_table [block9, block9, block12, block2, block2, block2, block2, block2, block2, block2, block5, block2, block2, block2, block3, block2, block4, block2, block2, block2, block2, block2, block2, block2]
    jt45 = jump_table [block2, block4]
    jt46 = jump_table [block2, block9, block5, block3, block3, block12, block12, block4, block3, block3, block3, block12, block12, block12, block12, block2, block9, block5, block11]
    jt47 = jump_table [block2, block5, block5, block5, block5, block9, block2, block2, block2, block2, block2, block2, block3, block9, block5]
    jt48 = jump_table [block4, block5, block5, block2, block2, block2, block4, block2]
    jt49 = jump_table [block2, block2, block4]
    jt50 = jump_table [block12, block2, block2, block2, block12, block12, block12, block12, block2, block2, block2, block2, block3, block3, block3, block3, block3, block3, block3]
    jt51 = jump_table [block9, block4, block9, block5, block3, block2, block3, block12, block12, block5, block12, block12, block12, block12, block5, block3, block3, block2, block2]
    jt52 = jump_table [block11, block4, block2, block2, block2, block2, block12, block12, block12, block12, block12, block12, block12, block2, block2, block2, block2, block2, block2, block2, block2, block2]
    jt53 = jump_table [block12, block11, block12, block12, block12, block3, block3, block3, block12, block12, block12, block12, block5, block5, block5, block5, block3, block3, block12]
    jt54 = jump_table [block2, block11, block5, block11, block9, block5, block5, block5, block5, block11, block5, block9, block9, block9, block9, block3, block3, block3]
    jt55 = jump_table [block2, block4]
    jt56 = jump_table [block5, block5, block3, block2, block3, block12, block12, block11, block3, block9, block5, block2, block2, block5]
    jt57 = jump_table [block2, block2, block2, block2, block2, block5, block5, block5, block5, block9, block2, block2, block2, block2, block2]
    jt58 = jump_table [block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block5, block11, block2, block11, block9, block11, block9, block11, block5, block5, block11, block2, block3, block11, block2, block2]
    jt59 = jump_table [block4, block3, block2, block12, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3]
    jt60 = jump_table [block2, block2, block3, block3, block4, block12, block12, block12, block12, block12, block12, block12, block12, block2, block9, block5, block3, block3]
    jt61 = jump_table [block217, block217, block5, block4, block11, block217, block217, block217, block11, block217, block217, block217, block217, block3, block3, block4, block12, block12, block12, block12, block4, block9, block5, block3, block217, block3, block12, block12]
    jt62 = jump_table [block218, block4, block12, block4, block9, block5, block3, block218, block3, block12, block12, block5, block12, block12, block12]
    jt63 = jump_table [block219, block3, block4, block5, block219, block219, block219, block3, block219]
    jt64 = jump_table [block220, block4]
    jt65 = jump_table [block4, block4, block4, block3, block221, block12, block3, block3, block3, block3, block3, block3, block3, block3]
    jt66 = jump_table [block222, block222, block222]
    jt67 = jump_table [block223, block3, block4, block9, block5, block3, block3, block12, block12, block12, block3, block11, block12, block12, block4, block3, block3, block3, block5]
    jt68 = jump_table [block224, block224]
    jt69 = jump_table [block3, block3, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225]
    jt70 = jump_table [block12, block11, block12, block12, block12, block3, block3, block3, block12, block12, block12, block12, block226, block12, block12, block12, block12, block3, block4]
    jt71 = jump_table [block227, block227, block227, block227, block227, block227, block227, block227, block227, block227, block227, block227, block227, block227, block227, block227]
    jt72 = jump_table [block12, block4, block9, block5, block3, block3, block12, block12, block5, block12, block12, block12, block12, block228, block3, block4, block228, block4, block12]
    jt73 = jump_table [block9, block5, block3, block3, block12, block12, block4, block3, block3, block3, block12, block12, block12, block12, block229, block9, block5, block11, block3, block12]
    jt74 = jump_table [block230, block230, block4, block230, block3, block3, block3, block3, block230]
    jt75 = jump_table [block5, block231, block231, block231, block231, block11, block231, block231, block231, block231, block231, block231, block231, block4, block231, block3, block4, block231, block4, block12, block4, block9, block5, block3, block231, block3, block12, block12]
    jt76 = jump_table [block232, block11]
    jt77 = jump_table [block4, block4, block4, block4, block4, block4, block3, block233, block12, block3, block3, block3, block3, block3]
    jt78 = jump_table [block3, block3, block12, block12, block12, block12, block234, block9, block5, block11, block3, block12, block12, block12, block12, block11, block12, block12, block12, block3, block3, block3, block12, block12, block12, block12, block234, block12, block12, block12, block12, block3]
    jt79 = jump_table [block3, block235, block235, block235, block235, block235, block235, block235, block235, block9, block4, block235, block9, block5, block235, block3, block4, block5, block235, block235, block235, block3, block235, block235, block235, block235, block235, block235, block235]
    jt80 = jump_table [block236, block236]
    jt81 = jump_table [block5, block3, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237]
    jt82 = jump_table [block5, block238]
    jt83 = jump_table [block3, block3, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239]
    jt84 = jump_table [block12, block12, block240, block3, block4, block4, block4, block12, block4, block9, block5, block3, block3, block12, block12, block5, block12, block12, block12]
    jt85 = jump_table [block12, block241, block241, block241, block241, block241, block241, block241, block5, block241, block241, block241, block3, block241, block4, block241, block241, block241, block241]
    jt86 = jump_table [block5, block11, block12, block3, block12, block4, block12, block3, block242, block9, block5, block11, block9, block12, block3]
    jt87 = jump_table [block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block5, block11, block243, block11, block9, block11, block9, block11, block5, block5, block11, block243, block11, block4, block243, block243]
    jt88 = jump_table [block4, block244]
    jt89 = jump_table [block5, block245, block9, block12, block12, block12, block245, block245, block245, block12, block12]
    jt90 = jump_table [block246, block246]
    jt91 = jump_table [block5, block4, block11, block247, block12, block12, block12, block247, block247, block247, block12, block12, block12, block12, block247, block247, block247, block247, block3, block3, block3, block3, block3]
    jt92 = jump_table [block4, block12, block9, block4, block9, block5, block3, block248, block3, block12, block12, block5, block12, block12, block12, block12, block5, block3, block3, block248, block248, block248, block248, block248, block248, block248, block248]
    jt93 = jump_table [block4, block249, block9, block11, block11, block11, block11, block12, block4, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5]
    jt94 = jump_table [block4, block250]
    jt95 = jump_table [block9, block9, block12, block251, block251, block251, block251, block251, block251, block251, block5, block251, block251, block251, block3, block251, block4, block251, block251, block251, block251, block251, block251, block251]
    jt96 = jump_table [block252, block4]
    jt97 = jump_table [block253, block9, block5, block3, block3, block12, block12, block4, block3, block3, block3, block12, block12, block12, block12, block253, block9, block5, block11]
    jt98 = jump_table [block254, block5, block5, block5, block5, block9, block254, block254, block254, block254, block254, block254, block3, block9, block5]
    jt99 = jump_table [block4, block5, block5, block255, block255, block255, block4, block255]
    jt100 = jump_table [block256, block256, block4]
    jt101 = jump_table [block12, block257, block257, block257, block12, block12, block12, block12, block257, block257, block257, block257, block3, block3, block3, block3, block3, block3, block3]
    jt102 = jump_table [block9, block4, block9, block5, block3, block258, block3, block12, block12, block5, block12, block12, block12, block12, block5, block3, block3, block258, block258]
    jt103 = jump_table [block11, block4, block259, block259, block259, block259, block12, block12, block12, block12, block12, block12, block12, block259, block259, block259, block259, block259, block259, block259, block259, block259]
    jt104 = jump_table [block260, block11, block5, block11, block9, block5, block5, block5, block5, block11, block5, block9, block9, block9, block9, block3, block3, block3]
    jt105 = jump_table [block261, block4]
    jt106 = jump_table [block5, block5, block3, block262, block3, block12, block12, block11, block3, block9, block5, block262, block262, block5]
    jt107 = jump_table [block263, block263, block263, block263, block263, block5, block5, block5, block5, block9, block263, block263, block263, block263, block263]
    jt108 = jump_table [block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3, block5, block11, block264, block11, block9, block11, block9, block11, block5, block5, block11, block264, block3, block11, block264, block264]
    jt109 = jump_table [block4, block3, block265, block12, block3, block3, block3, block3, block3, block3, block3, block3, block3, block3]
    jt110 = jump_table [block266, block266, block3, block3, block4, block12, block12, block12, block12, block12, block12, block12, block12, block266, block9, block5, block3, block3]
    jt111 = jump_table [block217, block217, block5, block4, block11, block217, block217, block217, block11, block217, block217, block217, block217, block267, block267, block4, block12, block12, block12, block12, block4, block9, block5, block267, block217, block267, block12, block12]
    jt112 = jump_table [block218, block4, block12, block4, block9, block5, block268, block218, block268, block12, block12, block5, block12, block12, block12]
    jt113 = jump_table [block219, block269, block4, block5, block219, block219, block219, block269, block219]
    jt114 = jump_table [block4, block4, block4, block270, block221, block12, block270, block270, block270, block270, block270, block270, block270, block270]
    jt115 = jump_table [block271, block271]
    jt116 = jump_table [block12, block272, block272, block272, block12, block12, block12, block12, block5, block5, block5, block5, block272, block272, block12, block12, block5, block12, block12]
    jt117 = jump_table [block223, block273, block4, block9, block5, block273, block273, block12, block12, block12, block273, block11, block12, block12, block4, block273, block273, block273, block5]
    jt118 = jump_table [block274, block274, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225, block225]
    jt119 = jump_table [block12, block11, block12, block12, block12, block275, block275, block275, block12, block12, block12, block12, block226, block12, block12, block12, block12, block275, block4]
    jt120 = jump_table [block12, block4, block9, block5, block276, block276, block12, block12, block5, block12, block12, block12, block12, block228, block276, block4, block228, block4, block12]
    jt121 = jump_table [block9, block5, block277, block277, block12, block12, block4, block277, block277, block277, block12, block12, block12, block12, block229, block9, block5, block11, block277, block12]
    jt122 = jump_table [block230, block230, block4, block230, block278, block278, block278, block278, block230]
    jt123 = jump_table [block5, block231, block231, block231, block231, block11, block231, block231, block231, block231, block231, block231, block231, block4, block231, block279, block4, block231, block4, block12, block4, block9, block5, block279, block231, block279, block12, block12]
    jt124 = jump_table [block4, block4, block4, block4, block4, block4, block280, block233, block12, block280, block280, block280, block280, block280]
    jt125 = jump_table [block281, block281, block12, block12, block12, block12, block234, block9, block5, block11, block281, block12, block12, block12, block12, block11, block12, block12, block12, block281, block281, block281, block12, block12, block12, block12, block234, block12, block12, block12, block12, block281]
    jt126 = jump_table [block282, block235, block235, block235, block235, block235, block235, block235, block235, block9, block4, block235, block9, block5, block235, block282, block4, block5, block235, block235, block235, block282, block235, block235, block235, block235, block235, block235, block235]
    jt127 = jump_table [block5, block283, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237]
    jt128 = jump_table [block284, block284, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239, block239]
    jt129 = jump_table [block285, block12, block12, block5, block12, block12, block4, block9, block5, block285]
    jt130 = jump_table [block12, block12, block240, block286, block4, block4, block4, block12, block4, block9, block5, block286, block286, block12, block12, block5, block12, block12, block12]
    jt131 = jump_table [block11, block12, block12, block4, block287, block287, block287, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5]
    jt132 = jump_table [block12, block241, block241, block241, block241, block241, block241, block241, block5, block241, block241, block241, block288, block241, block4, block241, block241, block241, block241]
    jt133 = jump_table [block5, block11, block12, block289, block12, block4, block12, block289, block242, block9, block5, block11, block9, block12, block289]
    jt134 = jump_table [block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block5, block11, block243, block11, block9, block11, block9, block11, block5, block5, block11, block243, block11, block4, block243, block243]
    jt135 = jump_table [block5, block4, block11, block247, block12, block12, block12, block247, block247, block247, block12, block12, block12, block12, block247, block247, block247, block247, block293, block293, block293, block293, block293]
    jt136 = jump_table [block4, block12, block9, block4, block9, block5, block295, block248, block295, block12, block12, block5, block12, block12, block12, block12, block5, block295, block295, block248, block248, block248, block248, block248, block248, block248, block248]
    jt137 = jump_table [block12, block11, block12, block12, block12, block299, block299, block299, block12, block12, block12, block12, block5, block5, block5, block5, block299, block299, block12]
    jt138 = jump_table [block9, block9, block12, block251, block251, block251, block251, block251, block251, block251, block5, block251, block251, block251, block302, block251, block4, block251, block251, block251, block251, block251, block251, block251]
    jt139 = jump_table [block253, block9, block5, block305, block305, block12, block12, block4, block305, block305, block305, block12, block12, block12, block12, block253, block9, block5, block11]
    jt140 = jump_table [block254, block5, block5, block5, block5, block9, block254, block254, block254, block254, block254, block254, block307, block9, block5]
    jt141 = jump_table [block12, block257, block257, block257, block12, block12, block12, block12, block257, block257, block257, block257, block310, block310, block310, block310, block310, block310, block310]
    jt142 = jump_table [block9, block4, block9, block5, block311, block258, block311, block12, block12, block5, block12, block12, block12, block12, block5, block311, block311, block258, block258]
    jt143 = jump_table [block12, block11, block12, block12, block12, block312, block312, block312, block12, block12, block12, block12, block5, block5, block5, block5, block312, block312, block12]
    jt144 = jump_table [block260, block11, block5, block11, block9, block5, block5, block5, block5, block11, block5, block9, block9, block9, block9, block313, block313, block313]
    jt145 = jump_table [block5, block5, block314, block262, block314, block12, block12, block11, block314, block9, block5, block262, block262, block5]
    jt146 = jump_table [block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block5, block11, block264, block11, block9, block11, block9, block11, block5, block5, block11, block264, block315, block11, block264, block264]
    jt147 = jump_table [block4, block316, block265, block12, block316, block316, block316, block316, block316, block316, block316, block316, block316, block316]
    jt148 = jump_table [block266, block266, block317, block317, block4, block12, block12, block12, block12, block12, block12, block12, block12, block266, block9, block5, block317, block317]
    jt149 = jump_table [block318, block12, block12, block4, block318, block318, block318]
    jt150 = jump_table [block217, block217, block5, block319, block11, block217, block217, block217, block11, block217, block217, block217, block217, block267, block267, block319, block12, block12, block12, block12, block319, block9, block5, block267, block217, block267, block12, block12]
    jt151 = jump_table [block218, block320, block12, block320, block9, block5, block268, block218, block268, block12, block12, block5, block12, block12, block12]
    jt152 = jump_table [block219, block269, block321, block5, block219, block219, block219, block269, block219]
    jt153 = jump_table [block220, block322]
    jt154 = jump_table [block323, block323, block323, block270, block221, block12, block270, block270, block270, block270, block270, block270, block270, block270]
    jt155 = jump_table [block223, block273, block324, block9, block5, block273, block273, block12, block12, block12, block273, block11, block12, block12, block324, block273, block273, block273, block5]
    jt156 = jump_table [block12, block11, block12, block12, block12, block275, block275, block275, block12, block12, block12, block12, block226, block12, block12, block12, block12, block275, block325]
    jt157 = jump_table [block12, block326, block9, block5, block276, block276, block12, block12, block5, block12, block12, block12, block12, block228, block276, block326, block228, block326, block12]
    jt158 = jump_table [block9, block5, block277, block277, block12, block12, block327, block277, block277, block277, block12, block12, block12, block12, block229, block9, block5, block11, block277, block12]
    jt159 = jump_table [block230, block230, block328, block230, block278, block278, block278, block278, block230]
    jt160 = jump_table [block5, block231, block231, block231, block231, block11, block231, block231, block231, block231, block231, block231, block231, block329, block231, block279, block329, block231, block329, block12, block329, block9, block5, block279, block231, block279, block12, block12]
    jt161 = jump_table [block330, block330, block330, block330, block330, block330, block280, block233, block12, block280, block280, block280, block280, block280]
    jt162 = jump_table [block282, block235, block235, block235, block235, block235, block235, block235, block235, block9, block331, block235, block9, block5, block235, block282, block331, block5, block235, block235, block235, block282, block235, block235, block235, block235, block235, block235, block235]
    jt163 = jump_table [block285, block12, block12, block5, block12, block12, block332, block9, block5, block285]
    jt164 = jump_table [block12, block12, block240, block286, block333, block333, block333, block12, block333, block9, block5, block286, block286, block12, block12, block5, block12, block12, block12]
    jt165 = jump_table [block11, block12, block12, block334, block287, block287, block287, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5]
    jt166 = jump_table [block12, block241, block241, block241, block241, block241, block241, block241, block5, block241, block241, block241, block288, block241, block335, block241, block241, block241, block241]
    jt167 = jump_table [block5, block11, block12, block289, block12, block336, block12, block289, block242, block9, block5, block11, block9, block12, block289]
    jt168 = jump_table [block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block5, block11, block243, block11, block9, block11, block9, block11, block5, block5, block11, block243, block11, block337, block243, block243]
    jt169 = jump_table [block338, block244]
    jt170 = jump_table [block5, block339, block11, block247, block12, block12, block12, block247, block247, block247, block12, block12, block12, block12, block247, block247, block247, block247, block293, block293, block293, block293, block293]
    jt171 = jump_table [block340, block12, block9, block340, block9, block5, block295, block248, block295, block12, block12, block5, block12, block12, block12, block12, block5, block295, block295, block248, block248, block248, block248, block248, block248, block248, block248]
    jt172 = jump_table [block341, block249, block9, block11, block11, block11, block11, block12, block341, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5, block5]
    jt173 = jump_table [block342, block250]
    jt174 = jump_table [block9, block9, block12, block251, block251, block251, block251, block251, block251, block251, block5, block251, block251, block251, block302, block251, block343, block251, block251, block251, block251, block251, block251, block251]
    jt175 = jump_table [block252, block344]
    jt176 = jump_table [block253, block9, block5, block305, block305, block12, block12, block345, block305, block305, block305, block12, block12, block12, block12, block253, block9, block5, block11]
    jt177 = jump_table [block346, block5, block5, block255, block255, block255, block346, block255]
    jt178 = jump_table [block256, block256, block347]
    jt179 = jump_table [block9, block348, block9, block5, block311, block258, block311, block12, block12, block5, block12, block12, block12, block12, block5, block311, block311, block258, block258]
    jt180 = jump_table [block11, block349, block259, block259, block259, block259, block12, block12, block12, block12, block12, block12, block12, block259, block259, block259, block259, block259, block259, block259, block259, block259]
    jt181 = jump_table [block261, block350]
    jt182 = jump_table [block351, block316, block265, block12, block316, block316, block316, block316, block316, block316, block316, block316, block316, block316]
    jt183 = jump_table [block266, block266, block317, block317, block352, block12, block12, block12, block12, block12, block12, block12, block12, block266, block9, block5, block317, block317]
    jt184 = jump_table [block318, block12, block12, block353, block318, block318, block318]
    jt185 = jump_table [block217, block217, block354, block319, block11, block217, block217, block217, block11, block217, block217, block217, block217, block267, block267, block319, block12, block12, block12, block12, block319, block9, block354, block267, block217, block267, block12, block12]
    jt186 = jump_table [block218, block320, block12, block320, block9, block356, block268, block218, block268, block12, block12, block356, block12, block12, block12]
    jt187 = jump_table [block219, block269, block321, block358, block219, block219, block219, block269, block219]
    jt188 = jump_table [block12, block272, block272, block272, block12, block12, block12, block12, block365, block365, block365, block365, block272, block272, block12, block12, block365, block12, block12]
    jt189 = jump_table [block223, block273, block324, block9, block367, block273, block273, block12, block12, block12, block273, block11, block12, block12, block324, block273, block273, block273, block367]
    jt190 = jump_table [block12, block326, block9, block373, block276, block276, block12, block12, block373, block12, block12, block12, block12, block228, block276, block326, block228, block326, block12]
    jt191 = jump_table [block9, block375, block277, block277, block12, block12, block327, block277, block277, block277, block12, block12, block12, block12, block229, block9, block375, block11, block277, block12]
    jt192 = jump_table [block378, block231, block231, block231, block231, block11, block231, block231, block231, block231, block231, block231, block231, block329, block231, block279, block329, block231, block329, block12, block329, block9, block378, block279, block231, block279, block12, block12]
    jt193 = jump_table [block281, block281, block12, block12, block12, block12, block234, block9, block379, block11, block281, block12, block12, block12, block12, block11, block12, block12, block12, block281, block281, block281, block12, block12, block12, block12, block234, block12, block12, block12, block12, block281]
    jt194 = jump_table [block282, block235, block235, block235, block235, block235, block235, block235, block235, block9, block331, block235, block9, block380, block235, block282, block331, block380, block235, block235, block235, block282, block235, block235, block235, block235, block235, block235, block235]
    jt195 = jump_table [block381, block283, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237, block237]
    jt196 = jump_table [block382, block238]
    jt197 = jump_table [block285, block12, block12, block383, block12, block12, block332, block9, block383, block285]
    jt198 = jump_table [block12, block12, block240, block286, block333, block333, block333, block12, block333, block9, block384, block286, block286, block12, block12, block384, block12, block12, block12]
    jt199 = jump_table [block11, block12, block12, block334, block287, block287, block287, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385]
    jt200 = jump_table [block12, block241, block241, block241, block241, block241, block241, block241, block386, block241, block241, block241, block288, block241, block335, block241, block241, block241, block241]
    jt201 = jump_table [block387, block11, block12, block289, block12, block336, block12, block289, block242, block9, block387, block11, block9, block12, block289]
    jt202 = jump_table [block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block388, block11, block243, block11, block9, block11, block9, block11, block388, block388, block11, block243, block11, block337, block243, block243]
    jt203 = jump_table [block389, block245, block9, block12, block12, block12, block245, block245, block245, block12, block12]
    jt204 = jump_table [block390, block339, block11, block247, block12, block12, block12, block247, block247, block247, block12, block12, block12, block12, block247, block247, block247, block247, block293, block293, block293, block293, block293]
    jt205 = jump_table [block340, block12, block9, block340, block9, block391, block295, block248, block295, block12, block12, block391, block12, block12, block12, block12, block391, block295, block295, block248, block248, block248, block248, block248, block248, block248, block248]
    jt206 = jump_table [block341, block249, block9, block11, block11, block11, block11, block12, block341, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392]
    jt207 = jump_table [block11, block393]
    jt208 = jump_table [block12, block11, block12, block12, block12, block299, block299, block299, block12, block12, block12, block12, block394, block394, block394, block394, block299, block299, block12]
    jt209 = jump_table [block9, block9, block12, block251, block251, block251, block251, block251, block251, block251, block395, block251, block251, block251, block302, block251, block343, block251, block251, block251, block251, block251, block251, block251]
    jt210 = jump_table [block253, block9, block396, block305, block305, block12, block12, block345, block305, block305, block305, block12, block12, block12, block12, block253, block9, block396, block11]
    jt211 = jump_table [block254, block397, block397, block397, block397, block9, block254, block254, block254, block254, block254, block254, block307, block9, block397]
    jt212 = jump_table [block346, block398, block398, block255, block255, block255, block346, block255]
    jt213 = jump_table [block9, block348, block9, block399, block311, block258, block311, block12, block12, block399, block12, block12, block12, block12, block399, block311, block311, block258, block258]
    jt214 = jump_table [block12, block11, block12, block12, block12, block312, block312, block312, block12, block12, block12, block12, block400, block400, block400, block400, block312, block312, block12]
    jt215 = jump_table [block260, block11, block401, block11, block9, block401, block401, block401, block401, block11, block401, block9, block9, block9, block9, block313, block313, block313]
    jt216 = jump_table [block402, block402, block314, block262, block314, block12, block12, block11, block314, block9, block402, block262, block262, block402]
    jt217 = jump_table [block263, block263, block263, block263, block263, block403, block403, block403, block403, block9, block263, block263, block263, block263, block263]
    jt218 = jump_table [block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block404, block11, block264, block11, block9, block11, block9, block11, block404, block404, block11, block264, block315, block11, block264, block264]
    jt219 = jump_table [block266, block266, block317, block317, block352, block12, block12, block12, block12, block12, block12, block12, block12, block266, block9, block405, block317, block317]
    jt220 = jump_table [block217, block217, block354, block319, block11, block217, block217, block217, block11, block217, block217, block217, block217, block267, block267, block319, block12, block12, block12, block12, block319, block407, block354, block267, block217, block267, block12, block12]
    jt221 = jump_table [block218, block320, block12, block320, block408, block356, block268, block218, block268, block12, block12, block356, block12, block12, block12]
    jt222 = jump_table [block223, block273, block324, block409, block367, block273, block273, block12, block12, block12, block273, block11, block12, block12, block324, block273, block273, block273, block367]
    jt223 = jump_table [block12, block326, block410, block373, block276, block276, block12, block12, block373, block12, block12, block12, block12, block228, block276, block326, block228, block326, block12]
    jt224 = jump_table [block411, block375, block277, block277, block12, block12, block327, block277, block277, block277, block12, block12, block12, block12, block229, block411, block375, block11, block277, block12]
    jt225 = jump_table [block378, block231, block231, block231, block231, block11, block231, block231, block231, block231, block231, block231, block231, block329, block231, block279, block329, block231, block329, block12, block329, block412, block378, block279, block231, block279, block12, block12]
    jt226 = jump_table [block281, block281, block12, block12, block12, block12, block234, block416, block379, block11, block281, block12, block12, block12, block12, block11, block12, block12, block12, block281, block281, block281, block12, block12, block12, block12, block234, block12, block12, block12, block12, block281]
    jt227 = jump_table [block282, block235, block235, block235, block235, block235, block235, block235, block235, block418, block331, block235, block418, block380, block235, block282, block331, block380, block235, block235, block235, block282, block235, block235, block235, block235, block235, block235, block235]
    jt228 = jump_table [block285, block12, block12, block383, block12, block12, block332, block424, block383, block285]
    jt229 = jump_table [block12, block12, block240, block286, block333, block333, block333, block12, block333, block426, block384, block286, block286, block12, block12, block384, block12, block12, block12]
    jt230 = jump_table [block387, block11, block12, block289, block12, block336, block12, block289, block242, block430, block387, block11, block430, block12, block289]
    jt231 = jump_table [block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block388, block11, block243, block11, block432, block11, block432, block11, block388, block388, block11, block243, block11, block337, block243, block243]
    jt232 = jump_table [block389, block245, block435, block12, block12, block12, block245, block245, block245, block12, block12]
    jt233 = jump_table [block340, block12, block436, block340, block436, block391, block295, block248, block295, block12, block12, block391, block12, block12, block12, block12, block391, block295, block295, block248, block248, block248, block248, block248, block248, block248, block248]
    jt234 = jump_table [block341, block249, block437, block11, block11, block11, block11, block12, block341, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392]
    jt235 = jump_table [block438, block438, block12, block251, block251, block251, block251, block251, block251, block251, block395, block251, block251, block251, block302, block251, block343, block251, block251, block251, block251, block251, block251, block251]
    jt236 = jump_table [block253, block439, block396, block305, block305, block12, block12, block345, block305, block305, block305, block12, block12, block12, block12, block253, block439, block396, block11]
    jt237 = jump_table [block254, block397, block397, block397, block397, block440, block254, block254, block254, block254, block254, block254, block307, block440, block397]
    jt238 = jump_table [block441, block348, block441, block399, block311, block258, block311, block12, block12, block399, block12, block12, block12, block12, block399, block311, block311, block258, block258]
    jt239 = jump_table [block260, block11, block401, block11, block442, block401, block401, block401, block401, block11, block401, block442, block442, block442, block442, block313, block313, block313]
    jt240 = jump_table [block402, block402, block314, block262, block314, block12, block12, block11, block314, block443, block402, block262, block262, block402]
    jt241 = jump_table [block263, block263, block263, block263, block263, block403, block403, block403, block403, block444, block263, block263, block263, block263, block263]
    jt242 = jump_table [block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block404, block11, block264, block11, block445, block11, block445, block11, block404, block404, block11, block264, block315, block11, block264, block264]
    jt243 = jump_table [block266, block266, block317, block317, block352, block12, block12, block12, block12, block12, block12, block12, block12, block266, block446, block405, block317, block317]
    jt244 = jump_table [block217, block217, block354, block319, block447, block217, block217, block217, block447, block217, block217, block217, block217, block267, block267, block319, block12, block12, block12, block12, block319, block407, block354, block267, block217, block267, block12, block12]
    jt245 = jump_table [block223, block273, block324, block409, block367, block273, block273, block12, block12, block12, block273, block448, block12, block12, block324, block273, block273, block273, block367]
    jt246 = jump_table [block12, block449, block12, block12, block12, block275, block275, block275, block12, block12, block12, block12, block226, block12, block12, block12, block12, block275, block325]
    jt247 = jump_table [block411, block375, block277, block277, block12, block12, block327, block277, block277, block277, block12, block12, block12, block12, block229, block411, block375, block450, block277, block12]
    jt248 = jump_table [block378, block231, block231, block231, block231, block451, block231, block231, block231, block231, block231, block231, block231, block329, block231, block279, block329, block231, block329, block12, block329, block412, block378, block279, block231, block279, block12, block12]
    jt249 = jump_table [block232, block452]
    jt250 = jump_table [block281, block281, block12, block12, block12, block12, block234, block416, block379, block453, block281, block12, block12, block12, block12, block453, block12, block12, block12, block281, block281, block281, block12, block12, block12, block12, block234, block12, block12, block12, block12, block281]
    jt251 = jump_table [block454, block12, block12, block334, block287, block287, block287, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385]
    jt252 = jump_table [block387, block455, block12, block289, block12, block336, block12, block289, block242, block430, block387, block455, block430, block12, block289]
    jt253 = jump_table [block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block290, block388, block456, block243, block456, block432, block456, block432, block456, block388, block388, block456, block243, block456, block337, block243, block243]
    jt254 = jump_table [block390, block339, block457, block247, block12, block12, block12, block247, block247, block247, block12, block12, block12, block12, block247, block247, block247, block247, block293, block293, block293, block293, block293]
    jt255 = jump_table [block341, block249, block437, block458, block458, block458, block458, block12, block341, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392]
    jt256 = jump_table [block459, block393]
    jt257 = jump_table [block12, block460, block12, block12, block12, block299, block299, block299, block12, block12, block12, block12, block394, block394, block394, block394, block299, block299, block12]
    jt258 = jump_table [block253, block439, block396, block305, block305, block12, block12, block345, block305, block305, block305, block12, block12, block12, block12, block253, block439, block396, block461]
    jt259 = jump_table [block465, block349, block259, block259, block259, block259, block12, block12, block12, block12, block12, block12, block12, block259, block259, block259, block259, block259, block259, block259, block259, block259]
    jt260 = jump_table [block12, block467, block12, block12, block12, block312, block312, block312, block12, block12, block12, block12, block400, block400, block400, block400, block312, block312, block12]
    jt261 = jump_table [block260, block469, block401, block469, block442, block401, block401, block401, block401, block469, block401, block442, block442, block442, block442, block313, block313, block313]
    jt262 = jump_table [block402, block402, block314, block262, block314, block12, block12, block472, block314, block443, block402, block262, block262, block402]
    jt263 = jump_table [block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block315, block404, block475, block264, block475, block445, block475, block445, block475, block404, block404, block475, block264, block315, block475, block264, block264]
    jt264 = jump_table [block217, block217, block354, block319, block447, block217, block217, block217, block447, block217, block217, block217, block217, block267, block267, block319, block479, block479, block479, block479, block319, block407, block354, block267, block217, block267, block479, block479]
    jt265 = jump_table [block218, block320, block480, block320, block408, block356, block268, block218, block268, block480, block480, block356, block480, block480, block480]
    jt266 = jump_table [block323, block323, block323, block270, block221, block481, block270, block270, block270, block270, block270, block270, block270, block270]
    jt267 = jump_table [block482, block482]
    jt268 = jump_table [block483, block272, block272, block272, block483, block483, block483, block483, block365, block365, block365, block365, block272, block272, block483, block483, block365, block483, block483]
    jt269 = jump_table [block223, block273, block324, block409, block367, block273, block273, block484, block484, block484, block273, block448, block484, block484, block324, block273, block273, block273, block367]
    jt270 = jump_table [block485, block449, block485, block485, block485, block275, block275, block275, block485, block485, block485, block485, block226, block485, block485, block485, block485, block275, block325]
    jt271 = jump_table [block486, block326, block410, block373, block276, block276, block486, block486, block373, block486, block486, block486, block486, block228, block276, block326, block228, block326, block486]
    jt272 = jump_table [block411, block375, block277, block277, block487, block487, block327, block277, block277, block277, block487, block487, block487, block487, block229, block411, block375, block450, block277, block487]
    jt273 = jump_table [block378, block231, block231, block231, block231, block451, block231, block231, block231, block231, block231, block231, block231, block329, block231, block279, block329, block231, block329, block488, block329, block412, block378, block279, block231, block279, block488, block488]
    jt274 = jump_table [block330, block330, block330, block330, block330, block330, block280, block233, block489, block280, block280, block280, block280, block280]
    jt275 = jump_table [block281, block281, block490, block490, block490, block490, block234, block416, block379, block453, block281, block490, block490, block490, block490, block453, block490, block490, block490, block281, block281, block281, block490, block490, block490, block490, block234, block490, block490, block490, block490, block281]
    jt276 = jump_table [block285, block491, block491, block383, block491, block491, block332, block424, block383, block285]
    jt277 = jump_table [block492, block492, block240, block286, block333, block333, block333, block492, block333, block426, block384, block286, block286, block492, block492, block384, block492, block492, block492]
    jt278 = jump_table [block454, block493, block493, block334, block287, block287, block287, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385, block385]
    jt279 = jump_table [block494, block241, block241, block241, block241, block241, block241, block241, block386, block241, block241, block241, block288, block241, block335, block241, block241, block241, block241]
    jt280 = jump_table [block387, block455, block495, block289, block495, block336, block495, block289, block242, block430, block387, block455, block430, block495, block289]
    jt281 = jump_table [block389, block245, block435, block496, block496, block496, block245, block245, block245, block496, block496]
    jt282 = jump_table [block390, block339, block457, block247, block497, block497, block497, block247, block247, block247, block497, block497, block497, block497, block247, block247, block247, block247, block293, block293, block293, block293, block293]
    jt283 = jump_table [block340, block498, block436, block340, block436, block391, block295, block248, block295, block498, block498, block391, block498, block498, block498, block498, block391, block295, block295, block248, block248, block248, block248, block248, block248, block248, block248]
    jt284 = jump_table [block341, block249, block437, block458, block458, block458, block458, block499, block341, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392, block392]
    jt285 = jump_table [block500, block460, block500, block500, block500, block299, block299, block299, block500, block500, block500, block500, block394, block394, block394, block394, block299, block299, block500]
    jt286 = jump_table [block438, block438, block501, block251, block251, block251, block251, block251, block251, block251, block395, block251, block251, block251, block302, block251, block343, block251, block251, block251, block251, block251, block251, block251]
    jt287 = jump_table [block253, block439, block396, block305, block305, block502, block502, block345, block305, block305, block305, block502, block502, block502, block502, block253, block439, block396, block461]
    jt288 = jump_table [block503, block257, block257, block257, block503, block503, block503, block503, block257, block257, block257, block257, block310, block310, block310, block310, block310, block310, block310]
    jt289 = jump_table [block441, block348, block441, block399, block311, block258, block311, block504, block504, block399, block504, block504, block504, block504, block399, block311, block311, block258, block258]
    jt290 = jump_table [block465, block349, block259, block259, block259, block259, block505, block505, block505, block505, block505, block505, block505, block259, block259, block259, block259, block259, block259, block259, block259, block259]
    jt291 = jump_table [block506, block467, block506, block506, block506, block312, block312, block312, block506, block506, block506, block506, block400, block400, block400, block400, block312, block312, block506]
    jt292 = jump_table [block402, block402, block314, block262, block314, block507, block507, block472, block314, block443, block402, block262, block262, block402]
    jt293 = jump_table [block351, block316, block265, block508, block316, block316, block316, block316, block316, block316, block316, block316, block316, block316]
    jt294 = jump_table [block266, block266, block317, block317, block352, block509, block509, block509, block509, block509, block509, block509, block509, block266, block446, block405, block317, block317]
    jt295 = jump_table [block318, block510, block510, block353, block318, block318, block318]

block0(v0: i8, v1: i32, v2: f32, v3: f32, v4: i64, v5: b1, v6: b1, v7: b1, v8: b1, v9: b1, v10: i128, v11: i64, v12: i16, v13: i8, v14: f64, v15: i8):
    v117 = f64const 0x0.1b7b7b7b7b7b7p-1022
    v118 = bconst.b1 false
    v119 = iconst.i8 47
    v120 = f64const -0x1.12fffff2f5f2fp-300
    v121 = iconst.i16 0x772f
    v122 = bconst.b1 false
    v123 = bconst.b1 false
    v124 = bconst.b1 true
    v125 = f64const 0x1.7772f77777777p888
    v126 = f64const 0x1.c5c312c000000p-125
    v127 = iconst.i64 0x3055_235c_3b35_2c30
    v128 = bconst.b1 false
    v129 = bconst.b1 false
    v130 = iconst.i128 0
    v131 = iconst.i64 0
    v132 = iconst.i32 0
    v133 = iconst.i16 0
    v134 = iconst.i8 0
    stack_store v130, ss0  ; v130 = 0
    stack_store v130, ss0+16  ; v130 = 0
    stack_store v130, ss0+32  ; v130 = 0
    stack_store v132, ss0+48  ; v132 = 0
    stack_store v133, ss0+52  ; v133 = 0
    stack_store v130, ss1  ; v130 = 0
    stack_store v130, ss1+16  ; v130 = 0
    stack_store v130, ss1+32  ; v130 = 0
    stack_store v132, ss1+48  ; v132 = 0
    stack_store v133, ss1+52  ; v133 = 0
    stack_store v130, ss2  ; v130 = 0
    stack_store v130, ss2+16  ; v130 = 0
    stack_store v130, ss2+32  ; v130 = 0
    stack_store v132, ss2+48  ; v132 = 0
    stack_store v133, ss2+52  ; v133 = 0
    v135 = rotr v10, v1
    v136 = rotl v12, v11
    v137 = rotl v12, v0
    v138 = ireduce.i8 v4
    v139 = ireduce.i8 v4
    v140 = ireduce.i8 v127  ; v127 = 0x3055_235c_3b35_2c30
    v141 = rotl v137, v139
    v142 = ireduce.i8 v4
    v143 = ireduce.i8 v4
    v144 = ireduce.i8 v4
    v145 = ireduce.i8 v4
    v146 = rotl v15, v136
    v147 = rotl v13, v135
    v148 = sshr v147, v145
    v149 = sshr v1, v127  ; v127 = 0x3055_235c_3b35_2c30
    v150 = sshr v149, v135
    v151 = iadd v147, v145
    v152 = ushr v147, v136
    v153 = uextend.i16 v146
    v154 = ishl v135, v148
    nop
    v155 = udiv v4, v11
    v156 = sextend.i32 v152
    v157 = ushr v152, v156
    v158 = rotr v157, v156
    nop
    v159 = isub v153, v153
    v160 = f64const 0x0.0f8e901002620p-1022
    nop
    v161 = iadd v158, v158
    nop
    nop
    nop
    nop
    nop
    v162 = f64const 0x1.03055555cf030p-252
    v163 = rotr v154, v156
    v164 = rotr v163, v127  ; v127 = 0x3055_235c_3b35_2c30
    nop
    v165 = imul v156, v156
    v166 = sshr v159, v148
    v167 = stack_load.i16 ss2+34
    nop
    v168 = udiv v158, v147
    nop
    nop
    v169 = ishl v166, v165
    v170 = ushr v161, v127  ; v127 = 0x3055_235c_3b35_2c30
    jump block9(v4, v164, v165, v161, v167, v147, v170, v127, v155, v126, v2, v7, v3, v9, v117, v14, v8)  ; v127 = 0x3055_235c_3b35_2c30, v126 = 0x1.c5c312c000000p-125, v117 = 0x0.1b7b7b7b7b7b7p-1022

block1(v16: f32, v17: i128, v18: i128, v19: f32, v20: i32, v21: f32, v22: i8, v23: i16, v24: f64, v25: f64, v26: f64, v27: f64, v28: f64, v198: i16, v200: i8, v202: f64, v205: f64, v207: i8, v208: i64, v221: i64, v1082: b1, v1089: b1, v1105: i64, v1108: f64, v1151: b1, v1161: b1, v1223: b1):
    v171 = rotr v18, v23
    v172 = rotr v171, v23
    v173 = rotr v172, v23
    v174 = rotr v173, v23
    v175 = rotr v174, v23
    v176 = rotr v175, v23
    v177 = rotr v176, v23
    v178 = rotr v177, v23
    v179 = rotr v178, v23
    v180 = rotr v179, v23
    v181 = rotr v180, v23
    v182 = rotr v181, v23
    v183 = rotr v182, v23
    v184 = rotr v183, v23
    v185 = rotr v184, v23
    v186 = rotr v185, v23
    v187 = rotr v186, v23
    v188 = rotr v187, v23
    v189 = rotr v188, v23
    v190 = rotr v189, v23
    v191 = rotr v190, v23
    v192 = rotr v191, v23
    v193 = rotr v192, v23
    v194 = rotr v193, v23
    v195 = rotr v194, v23
    v196 = rotr v195, v23
    v197 = rotr v196, v23
    v199 = rotr v197, v198
    nop
    v201 = iadd v200, v200
    v203 = fabs v202
    v204 = fabs v203
    v206 = fabs v205
    v209 = ushr v207, v208
    v1236 = fdiv v21, v21
    v1237 = fcmp ne v1236, v1236
    v1238 = f32const +NaN
    v210 = select v1237, v1238, v1236  ; v1238 = +NaN
    v1239 = fdiv v210, v210
    v1240 = fcmp ne v1239, v1239
    v1241 = f32const +NaN
    v211 = select v1240, v1241, v1239  ; v1241 = +NaN
    v1242 = fdiv v211, v211
    v1243 = fcmp ne v1242, v1242
    v1244 = f32const +NaN
    v212 = select v1243, v1244, v1242  ; v1244 = +NaN
    v1245 = fdiv v212, v212
    v1246 = fcmp ne v1245, v1245
    v1247 = f32const +NaN
    v213 = select v1246, v1247, v1245  ; v1247 = +NaN
    v1248 = fdiv v213, v213
    v1249 = fcmp ne v1248, v1248
    v1250 = f32const +NaN
    v214 = select v1249, v1250, v1248  ; v1250 = +NaN
    v1251 = fdiv v214, v214
    v1252 = fcmp ne v1251, v1251
    v1253 = f32const +NaN
    v215 = select v1252, v1253, v1251  ; v1253 = +NaN
    v216 = rotl v20, v208
    v1254 = fdiv v215, v215
    v1255 = fcmp ne v1254, v1254
    v1256 = f32const +NaN
    v217 = select v1255, v1256, v1254  ; v1256 = +NaN
    v1257 = fdiv v217, v217
    v1258 = fcmp ne v1257, v1257
    v1259 = f32const +NaN
    v218 = select v1258, v1259, v1257  ; v1259 = +NaN
    v1260 = fdiv v218, v218
    v1261 = fcmp ne v1260, v1260
    v1262 = f32const +NaN
    v219 = select v1261, v1262, v1260  ; v1262 = +NaN
    v1263 = fdiv v219, v219
    v1264 = fcmp ne v1263, v1263
    v1265 = f32const +NaN
    v220 = select v1264, v1265, v1263  ; v1265 = +NaN
    v222 = rotr v199, v221
    v223 = ishl v222, v23
    v224 = icmp_imm uge v216, 0x3030_f05c
    brnz v224, block18
    jump block17

block18:
    v225 = icmp_imm.i32 uge v216, 0x5c55_3030
    brnz v225, block20
    jump block19

block20:
    v226 = icmp_imm.i32 uge v216, 0x919a_88a0
    brnz v226, block22
    jump block21

block22:
    v227 = icmp_imm.i32 uge v216, 0xb740_b7b7
    brnz v227, block24
    jump block23

block24:
    v228 = icmp_imm.i32 eq v216, 0xff2f_312f
    brnz v228, block11(v223, v221, v23, v216, v1105, v198, v204, v205, v209, v201, v200, v208, v19, v206, v1082, v1089, v220, v1108, v1151, v1161, v1223)
    jump block25

block25:
    v229 = icmp_imm.i32 eq v216, 0xb7b7_b7b7
    brnz v229, block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)
    jump block26

block26:
    v230 = icmp_imm.i32 eq v216, 0xb740_b7b7
    brnz v230, block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block23:
    v231 = icmp_imm.i32 eq v216, 0xa8a8_3436
    brnz v231, block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)
    jump block27

block27:
    v232 = icmp_imm.i32 uge v216, 0x919a_88a0
    brnz v232, block28
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block21:
    v233 = icmp_imm.i32 uge v216, 0x736e_206f
    brnz v233, block30
    jump block29

block30:
    v234 = icmp_imm.i32 uge v216, 0x7d7d_3030
    brnz v234, block31
    jump block32

block32:
    v235 = icmp_imm.i32 eq v216, 0x7777_7777
    brnz v235, block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)
    jump block33

block33:
    v236 = icmp_imm.i32 eq v216, 0x736e_206f
    brnz v236, block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block29:
    v237 = icmp_imm.i32 eq v216, 0x5f2f_ffff
    brnz v237, block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)
    jump block34

block34:
    v238 = icmp_imm.i32 uge v216, 0x5c55_3030
    brnz v238, block35
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block19:
    v239 = icmp_imm.i32 uge v216, 0x3430_3030
    brnz v239, block37
    jump block36

block37:
    v240 = icmp_imm.i32 uge v216, 0x382c_302c
    brnz v240, block39
    jump block38

block39:
    v241 = icmp_imm.i32 uge v216, 0x4646_4640
    brnz v241, block40
    jump block41

block41:
    v242 = icmp_imm.i32 uge v216, 0x3b60_5530
    brnz v242, block42
    jump block43

block43:
    v243 = icmp_imm.i32 eq v216, 0x382c_302c
    brnz v243, block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block38:
    v244 = icmp_imm.i32 eq v216, 0x375d_6163
    brnz v244, block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)
    jump block44

block44:
    v245 = icmp_imm.i32 uge v216, 0x3430_3030
    brnz v245, block45
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block36:
    v246 = icmp_imm.i32 uge v216, 0x322f_7700
    brnz v246, block47
    jump block46

block47:
    v247 = icmp_imm.i32 eq v216, 0x322f_7777
    brnz v247, block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)
    jump block48

block48:
    v248 = icmp_imm.i32 uge v216, 0x322f_7700
    brnz v248, block49
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block46:
    v249 = icmp_imm.i32 uge v216, 0x3034_3030
    brnz v249, block50
    jump block51

block51:
    v250 = icmp_imm.i32 eq v216, 0x3030_f05c
    brnz v250, block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block17:
    v251 = icmp_imm.i32 uge v216, 0x2f2f_0000
    brnz v251, block53
    jump block52

block53:
    v252 = icmp_imm.i32 uge v216, 0x2fff_ff2f
    brnz v252, block55
    jump block54

block55:
    v253 = icmp_imm.i32 uge v216, 0x3030_1b00
    brnz v253, block57
    jump block56

block57:
    v254 = icmp_imm.i32 uge v216, 0x3030_30c9
    brnz v254, block58
    jump block59

block59:
    v255 = icmp_imm.i32 eq v216, 0x3030_3030
    brnz v255, block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)
    jump block60

block60:
    v256 = icmp_imm.i32 uge v216, 0x3030_1b00
    brnz v256, block61
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block56:
    v257 = icmp_imm.i32 uge v216, 0x301b_0000
    brnz v257, block62
    jump block63

block63:
    v258 = icmp_imm.i32 eq v216, 0x2fff_ff2f
    brnz v258, block11(v223, v221, v23, v216, v1105, v198, v204, v205, v209, v201, v200, v208, v19, v206, v1082, v1089, v220, v1108, v1151, v1161, v1223)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block54:
    v259 = icmp_imm.i32 uge v216, 0x2f31_2f5f
    brnz v259, block65
    jump block64

block65:
    v260 = icmp_imm.i32 eq v216, 0x2f77_7777
    brnz v260, block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)
    jump block66

block66:
    v261 = icmp_imm.i32 eq v216, 0x2f31_ad32
    brnz v261, block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)
    jump block67

block67:
    v262 = icmp_imm.i32 eq v216, 0x2f31_2f5f
    brnz v262, block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block64:
    v263 = icmp_imm.i32 eq v216, 0x2f2f_2f2f
    brnz v263, block11(v223, v221, v23, v216, v1105, v198, v204, v205, v209, v201, v200, v208, v19, v206, v1082, v1089, v220, v1108, v1151, v1161, v1223)
    jump block68

block68:
    v264 = icmp_imm.i32 eq v216, 0x2f2f_0000
    brnz v264, block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block52:
    v265 = icmp_imm.i32 uge v216, 0x00b6_0000
    brnz v265, block70
    jump block69

block70:
    v266 = icmp_imm.i32 uge v216, 0x1cc6_c6c6
    brnz v266, block72
    jump block71

block72:
    v267 = icmp_imm.i32 eq v216, 0x2c35_3b5c
    brnz v267, block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)
    jump block73

block73:
    v268 = icmp_imm.i32 uge v216, 0x2055_a800
    brnz v268, block74
    jump block75

block75:
    v269 = icmp_imm.i32 uge v216, 0x1cc6_c6c6
    brnz v269, block76
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block71:
    v270 = icmp_imm.i32 eq v216, 0x1c00_0000
    brnz v270, block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)
    jump block77

block77:
    v271 = icmp_imm.i32 uge v216, 0x00b6_0000
    brnz v271, block78
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block69:
    v272 = icmp_imm.i32 uge v216, 0x7bf1
    brnz v272, block80
    jump block79

block80:
    v273 = icmp_imm.i32 uge v216, 0x0027_e9b6
    brnz v273, block81
    jump block82

block82:
    v274 = icmp_imm.i32 eq v216, 0x7bf1
    brnz v274, block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block79:
    v275 = icmp_imm.i32 uge v216, 0x2c31
    brnz v275, block83
    jump block84

block84:
    br_table v216, block354, jt264

block83:
    v276 = iadd_imm.i32 v216, 0xffff_ffff_ffff_d3cf
    br_table v276, block356, jt265

block81:
    v277 = iadd_imm.i32 v216, 0xffff_ffff_ffd8_164a
    br_table v277, block358, jt187

block78:
    v278 = iadd_imm.i32 v216, 0xffff_ffff_ff4a_0000
    br_table v278, block360, jt153

block76:
    v279 = iadd_imm.i32 v216, 0xffff_ffff_e339_393a
    br_table v279, block361, jt266

block74:
    v280 = iadd_imm.i32 v216, 0xffff_ffff_dfaa_5800
    br_table v280, block362, jt66

block62:
    v281 = iadd_imm.i32 v216, 0xffff_ffff_cfe5_0000
    br_table v281, block363, jt115

block61:
    v282 = iadd_imm.i32 v216, 0xffff_ffff_cfcf_e500
    br_table v282, block364, jt267

block58:
    v283 = iadd_imm.i32 v216, 0xffff_ffff_cfcf_cf37
    br_table v283, block365, jt268

block50:
    v284 = iadd_imm.i32 v216, 0xffff_ffff_cfcb_cfd0
    br_table v284, block367, jt269

block49:
    v285 = iadd_imm.i32 v216, 0xffff_ffff_cdd0_8900
    br_table v285, block369, jt68

block45:
    v286 = iadd_imm.i32 v216, 0xffff_ffff_cbcf_cfd0
    br_table v286, block370, jt118

block42:
    v287 = iadd_imm.i32 v216, 0xffff_ffff_c49f_aad0
    br_table v287, block371, jt270

block40:
    v288 = iadd_imm.i32 v216, 0xffff_ffff_b9b9_b9c0
    br_table v288, block372, jt71

block35:
    v289 = iadd_imm.i32 v216, 0xffff_ffff_a3aa_cfd0
    br_table v289, block373, jt271

block31:
    v290 = iadd_imm.i32 v216, 0xffff_ffff_8282_cfd0
    br_table v290, block375, jt272

block28:
    v291 = iadd_imm.i32 v216, 0xffff_ffff_6e65_7760
    br_table v291, block377, jt159

block2(v292: f32, v293: i128, v294: i32, v295: i8, v296: i16, v297: f64, v298: b1, v299: b1, v300: f64, v1069: f64, v1072: i8, v1073: i64, v1075: i64, v1106: i64, v1109: f64, v1122: i16, v1123: i8, v1124: f32, v1152: b1, v1162: b1, v1224: b1) cold:
    v474 -> v295
    v454 -> v296
    v462 -> v300
    v466 -> v1072
    v488 -> v1073
    v456 -> v1075
    v452 -> v1106
    v444 -> v1122
    v469 -> v1123
    v492 -> v1124
    br_icmp eq v295, v295, block1(v292, v293, v293, v292, v294, v292, v295, v296, v297, v297, v297, v297, v297, v296, v295, v300, v1069, v1072, v1073, v1075, v298, v299, v1106, v1109, v1152, v1162, v1224)
    jump block7(v297, v297, v297, v297, v297, v298, v299, v299, v294, v293, v297, v297, v300)

block3(v301: f32, v302: i128, v303: f32, v304: i32, v305: i8, v306: i16, v307: f64, v308: i8, v1070: f64, v1074: i64, v1076: i64, v1083: b1, v1090: b1, v1107: i64, v1113: f64, v1149: i8, v1150: i8, v1159: b1, v1169: b1, v1215: f64, v1233: b1) cold:
    br_icmp eq v308, v308, block1(v301, v302, v302, v303, v304, v301, v305, v306, v307, v307, v307, v307, v307, v306, v308, v307, v1070, v305, v1074, v1076, v1083, v1090, v1107, v1113, v1159, v1169, v1233)
    jump block9(v1074, v302, v304, v1149, v306, v1150, v308, v1076, v1107, v1070, v303, v1159, v301, v1169, v1113, v1215, v1233)

block4(v309: i64, v310: i32, v317: i8, v319: i64, v320: i128, v322: i16, v326: i8, v329: i8, v343: f32, v361: f64, v362: f64, v1084: b1, v1091: b1, v1160: b1, v1171: b1, v1188: f32, v1189: f64, v1230: b1) cold:
    v889 -> v326
    v1098 -> v361
    v1112 -> v362
    v1088 -> v1084
    v1095 -> v1091
    v1158 -> v1160
    v1168 -> v1171
    v853 -> v1188
    v1081 -> v1189
    v311 = ishl v309, v310
    v312 = ireduce.i8 v311
    v313 = ireduce.i8 v311
    v314 = ireduce.i8 v311
    v315 = ireduce.i8 v311
    v316 = ireduce.i8 v311
    v318 = rotl v317, v309
    v321 = ishl v319, v320
    v323 = sshr v322, v310
    v324 = sshr v310, v309
    v325 = sshr v324, v320
    v327 = iadd v326, v316
    v328 = ushr v326, v323
    v330 = uextend.i16 v329
    v331 = sextend.i64 v330
    nop
    nop
    v332 = f64const 0x0.01c7040784063p-1022
    nop
    v333 = isub v330, v330
    v868 -> v333
    v334 = f64const 0x0.0f8e901002620p-1022
    nop
    v335 = iadd v328, v328
    v892 -> v335
    nop
    nop
    nop
    nop
    nop
    v336 = f64const 0x1.03055555cf030p-252
    v1096 -> v336
    v337 = rotr v320, v325
    v338 = rotr v337, v309
    v339 = rotl v330, v319
    v882 -> v339
    v340 = rotr v338, v325
    v341 = rotr v340, v325
    v342 = rotr v341, v325
    v1266 = sqrt v343
    v1267 = fcmp ne v1266, v1266
    v1268 = f32const +NaN
    v344 = select v1267, v1268, v1266  ; v1268 = +NaN
    v345 = rotr v342, v325
    v346 = ishl v319, v319
    v347 = rotr v345, v325
    v348 = rotr v347, v325
    v349 = rotr v348, v325
    v350 = rotr v349, v346
    v351 = rotr v350, v325
    v352 = rotr v351, v325
    v353 = rotr v352, v325
    v354 = ishl v309, v309
    v355 = rotr v353, v325
    v356 = rotr v354, v354
    v866 -> v356
    v357 = ishl v325, v339
    v358 = rotr v355, v357
    v359 = rotl v328, v339
    v360 = rotl v318, v357
    brnz v357, block1(v344, v358, v358, v344, v357, v344, v360, v339, v336, v361, v334, v361, v362, v339, v360, v336, v361, v318, v346, v356, v1084, v1091, v319, v362, v1160, v1171, v1230)  ; v336 = 0x1.03055555cf030p-252, v334 = 0x0.0f8e901002620p-1022, v336 = 0x1.03055555cf030p-252
    jump block13(v358, v357, v356)

block5(v363: i64, v364: i64, v366: i8, v367: i16, v369: i128, v370: i32, v372: i64, v398: i8, v402: i8, v421: f32, v430: f64, v431: f32, v432: b1) cold:
    v365 = ishl v363, v364
    v368 = rotl v366, v367
    v371 = rotr v369, v370
    v373 = rotr v371, v372
    v374 = rotr v372, v372
    v375 = ishl v370, v367
    v376 = rotr v373, v375
    v377 = rotr v376, v375
    v378 = iconcat v365, v365
    v379 = rotr v378, v375
    v380 = iadd v374, v363
    v381 = udiv v365, v365
    v382 = udiv v381, v381
    v383 = udiv v382, v382
    v384 = udiv v383, v383
    v385 = udiv v380, v384
    v386 = udiv v385, v385
    nop
    v387 = udiv v385, v385
    v388 = udiv v387, v387
    v389 = udiv v388, v388
    v390 = udiv v389, v389
    v391 = udiv v390, v390
    v392 = udiv v391, v391
    v393 = udiv v392, v392
    v394 = udiv v393, v393
    v395 = udiv v394, v394
    v396 = udiv v395, v395
    v397 = rotr v379, v375
    v399 = sshr v398, v375
    v400 = rotl v396, v397
    v401 = imul v367, v367
    nop
    v403 = iadd v402, v368
    v404 = ushr v403, v374
    v405 = rotr v397, v375
    v406 = rotr v405, v375
    v407 = rotr v406, v375
    v408 = rotr v407, v374
    v409 = rotl v401, v386
    v410 = rotr v408, v375
    v411 = iadd v374, v386
    v412 = rotr v410, v375
    v413 = rotr v412, v375
    v414 = rotr v413, v375
    v415 = rotr v414, v375
    v416 = rotr v415, v374
    v417 = rotl v409, v411
    v418 = rotr v416, v375
    v419 = rotr v418, v375
    v420 = rotr v419, v375
    v1269 = sqrt v421
    v1270 = fcmp ne v1269, v1269
    v1271 = f32const +NaN
    v422 = select v1270, v1271, v1269  ; v1271 = +NaN
    v423 = rotr v420, v375
    v424 = ishl v411, v411
    v425 = rotr v423, v375
    v426 = rotr v425, v375
    v427 = rotr v426, v375
    v428 = udiv v424, v424
    v429 = ishl v411, v424
    return v368, v430, v430, v368, v375, v431, v432, v429, v427, v427, v427, v427, v432, v368, v427, v429

block6(v29: f64, v30: f64, v31: i16, v32: f64) cold:
    v1227 = bconst.b1 false
    v1226 -> v1227
    v1165 = bconst.b1 false
    v1164 -> v1165
    v1155 = bconst.b1 false
    v1154 -> v1155
    v1147 = f64const 0.0
    v1146 -> v1147
    v1143 = bconst.b1 false
    v1142 -> v1143
    v1140 = bconst.b1 false
    v1139 -> v1140
    v1136 = f32const 0.0
    v1135 -> v1136
    v1134 = iconst.i8 0
    v1133 -> v1134
    v1132 = iconst.i8 0
    v1131 -> v1132
    v1130 = iconst.i8 0
    v1129 -> v1130
    v1128 = iconst.i64 0
    v1127 -> v1128
    v1126 = f32const 0.0
    v1125 -> v1126
    v1121 = f64const 0.0
    v438 -> v1121
    v1120 = iconst.i64 0
    v437 -> v1120
    v1119 = iconst.i8 0
    v436 -> v1119
    v1118 = iconst.i32 0
    v435 -> v1118
    v1117 = iconst.i16 0
    v434 -> v1117
    v1116 = iconst.i128 0
    v433 -> v1116
    br_icmp sge v437, v437, block8(v433, v434, v433, v433, v433, v433, v435, v436, v29, v433, v436, v29, v29, v1125, v437, v1127, v31, v1129, v1131, v1133, v1135, v32, v1139, v1142, v438, v1146, v1154, v1164, v1226)  ; v437 = 0, v437 = 0, v433 = 0, v434 = 0, v433 = 0, v433 = 0, v433 = 0, v433 = 0, v435 = 0, v436 = 0, v433 = 0, v436 = 0, v1125 = 0.0, v437 = 0, v1127 = 0, v1129 = 0, v1131 = 0, v1133 = 0, v1135 = 0.0, v1139 = false, v1142 = false, v438 = 0.0, v1146 = 0.0, v1154 = false, v1164 = false, v1226 = false
    jump block8(v433, v434, v433, v433, v433, v433, v435, v436, v32, v433, v436, v438, v30, v1125, v437, v1127, v31, v1129, v1131, v1133, v1135, v32, v1139, v1142, v438, v1146, v1154, v1164, v1226)  ; v433 = 0, v434 = 0, v433 = 0, v433 = 0, v433 = 0, v433 = 0, v435 = 0, v436 = 0, v433 = 0, v436 = 0, v438 = 0.0, v1125 = 0.0, v437 = 0, v1127 = 0, v1129 = 0, v1131 = 0, v1133 = 0, v1135 = 0.0, v1139 = false, v1142 = false, v438 = 0.0, v1146 = 0.0, v1154 = false, v1164 = false, v1226 = false

block7(v33: f64, v34: f64, v35: f64, v36: f64, v37: f64, v38: b1, v39: b1, v40: b1, v41: i32, v42: i128, v43: f64, v44: f64, v45: f64) cold:
    v439 = sshr v42, v41
    v440 = sshr v439, v41
    v441 = sshr v440, v41
    v442 = sshr v441, v41
    v443 = sshr v442, v41
    v445 = rotr v443, v444
    v446 = sshr v445, v41
    v447 = sshr v446, v41
    v448 = sshr v447, v41
    v449 = sshr v448, v41
    v450 = sshr v449, v41
    v451 = sshr v450, v41
    v453 = ushr.i64 v452, v451
    v455 = ushr v453, v454
    v457 = ushr v451, v456
    v458 = sextend.i128 v454
    v459 = ishl.i16 v454, v456
    v460 = udiv v41, v41
    v461 = udiv v459, v454
    v463 = fcmp.f64 ule v462, v45
    v464 = rotr v458, v458
    v465 = rotr v464, v464
    v467 = sshr.i8 v466, v460
    v468 = rotr v465, v460
    v470 = iadd v467, v469
    v471 = sshr v468, v460
    v472 = sshr v471, v460
    v473 = sshr v472, v460
    v475 = ishl.i8 v474, v474
    v476 = ishl v475, v475
    v477 = isub.i64 v456, v456
    v478 = isub v477, v477
    v479 = isub v478, v478
    v480 = ishl v459, v479
    v481 = ishl v480, v479
    v482 = ishl v481, v479
    v483 = ishl v482, v479
    v484 = rotr v479, v460
    v485 = rotr v473, v461
    v486 = rotr v485, v483
    v487 = rotr v486, v483
    v489 = udiv.i64 v488, v488
    v490 = rotr v460, v487
    v491 = sextend.i64 v476
    stack_store v487, ss2+27
    v1272 = fdiv.f32 v492, v492
    v1273 = fcmp ne v1272, v1272
    v1274 = f32const +NaN
    v493 = select v1273, v1274, v1272  ; v1274 = +NaN
    v1275 = fdiv v493, v493
    v1276 = fcmp ne v1275, v1275
    v1277 = f32const +NaN
    v494 = select v1276, v1277, v1275  ; v1277 = +NaN
    v1278 = fdiv v494, v494
    v1279 = fcmp ne v1278, v1278
    v1280 = f32const +NaN
    v495 = select v1279, v1280, v1278  ; v1280 = +NaN
    v496 = rotl v484, v487
    v497 = rotl v496, v487
    v498 = rotl v497, v487
    v499 = rotl v498, v487
    v500 = rotl v499, v487
    v501 = rotl v500, v487
    jump block8(v487, v483, v487, v487, v487, v487, v490, v470, v462, v487, v470, v462, v462, v494, v489, v491, v461, v475, v476, v469, v495, v43, v298, v299, v45, v1109, v38, v1162, v39)

block8(v46: i128, v47: i16, v48: i128, v49: i128, v50: i128, v51: i128, v52: i32, v53: i8, v54: f64, v55: i128, v56: i8, v57: f64, v58: f64, v502: f32, v507: i64, v513: i64, v531: i16, v532: i8, v545: i8, v546: i8, v1077: f32, v1079: f64, v1086: b1, v1093: b1, v1097: f64, v1110: f64, v1153: b1, v1163: b1, v1225: b1) cold:
    v1281 = fdiv v502, v502
    v1282 = fcmp ne v1281, v1281
    v1283 = f32const +NaN
    v503 = select v1282, v1283, v1281  ; v1283 = +NaN
    v1284 = fdiv v503, v503
    v1285 = fcmp ne v1284, v1284
    v1286 = f32const +NaN
    v504 = select v1285, v1286, v1284  ; v1286 = +NaN
    v1287 = fdiv v504, v504
    v1288 = fcmp ne v1287, v1287
    v1289 = f32const +NaN
    v505 = select v1288, v1289, v1287  ; v1289 = +NaN
    v1290 = fdiv v505, v505
    v1291 = fcmp ne v1290, v1290
    v1292 = f32const +NaN
    v506 = select v1291, v1292, v1290  ; v1292 = +NaN
    v508 = rotl v52, v507
    v1293 = fdiv v506, v506
    v1294 = fcmp ne v1293, v1293
    v1295 = f32const +NaN
    v509 = select v1294, v1295, v1293  ; v1295 = +NaN
    v1296 = fdiv v509, v509
    v1297 = fcmp ne v1296, v1296
    v1298 = f32const +NaN
    v510 = select v1297, v1298, v1296  ; v1298 = +NaN
    v1299 = fdiv v510, v510
    v1300 = fcmp ne v1299, v1299
    v1301 = f32const +NaN
    v511 = select v1300, v1301, v1299  ; v1301 = +NaN
    v1302 = fdiv v511, v511
    v1303 = fcmp ne v1302, v1302
    v1304 = f32const +NaN
    v512 = select v1303, v1304, v1302  ; v1304 = +NaN
    v514 = rotr v55, v513
    v515 = ishl v514, v47
    v516 = ishl v515, v47
    v517 = udiv v507, v513
    v518 = rotr v516, v516
    v519 = rotr v518, v47
    v520 = sshr v519, v508
    v521 = sshr v520, v508
    v522 = sshr v521, v508
    v523 = sshr v522, v508
    v524 = sshr v523, v508
    v525 = sshr v524, v508
    v526 = rotr v525, v47
    v527 = sshr v526, v508
    v528 = sshr v527, v508
    v529 = sshr v528, v508
    nop
    nop
    nop
    v530 = rotr v517, v513
    v533 = rotl v531, v532
    v534 = rotr v530, v530
    v535 = rotr v47, v529
    v536 = rotr v529, v508
    v537 = rotl v532, v535
    v538 = rotr v536, v508
    v539 = rotl v535, v517
    v540 = rotl v537, v507
    v541 = ireduce.i8 v507
    v542 = ireduce.i8 v507
    v543 = ireduce.i8 v534
    v544 = udiv v507, v507
    nop
    nop
    nop
    nop
    nop
    nop
    v547 = iadd v545, v546
    nop
    nop
    nop
    nop
    nop
    v548 = icmp_imm uge v508, 0x3031_5c2c
    brnz v548, block86
    jump block85

block86:
    v549 = icmp_imm.i32 uge v508, 0x60a7_3254
    brnz v549, block88
    jump block87

block88:
    v550 = icmp_imm.i32 uge v508, 0xe9b6_2026
    brnz v550, block90
    jump block89

block90:
    v551 = icmp_imm.i32 eq v508, 0xff46_ffff
    brnz v551, block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)
    jump block91

block91:
    v552 = icmp_imm.i32 uge v508, 0xf7f8_ff00
    brnz v552, block92
    jump block93

block93:
    v553 = icmp_imm.i32 eq v508, 0xe9b6_2026
    brnz v553, block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block89:
    v554 = icmp_imm.i32 uge v508, 0xb7b7_b7b7
    brnz v554, block94
    jump block95

block95:
    v555 = icmp_imm.i32 uge v508, 0xa8a8_a8a8
    brnz v555, block96
    jump block97

block97:
    v556 = icmp_imm.i32 uge v508, 0x60a7_3254
    brnz v556, block98
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block87:
    v557 = icmp_imm.i32 uge v508, 0x5530_3034
    brnz v557, block100
    jump block99

block100:
    v558 = icmp_imm.i32 eq v508, 0x5d00_007b
    brnz v558, block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)
    jump block101

block101:
    v559 = icmp_imm.i32 uge v508, 0x5c55_3030
    brnz v559, block102
    jump block103

block103:
    v560 = icmp_imm.i32 uge v508, 0x5530_3034
    brnz v560, block104
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block99:
    v561 = icmp_imm.i32 uge v508, 0x4646_4646
    brnz v561, block105
    jump block106

block106:
    v562 = icmp_imm.i32 uge v508, 0x3430_3030
    brnz v562, block107
    jump block108

block108:
    v563 = icmp_imm.i32 eq v508, 0x3031_5c2c
    brnz v563, block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block85:
    v564 = icmp_imm.i32 uge v508, 0x0146_0fff
    brnz v564, block110
    jump block109

block110:
    v565 = icmp_imm.i32 uge v508, 0x2c38_2c30
    brnz v565, block112
    jump block111

block112:
    v566 = icmp_imm.i32 eq v508, 0x2f2f_2f2f
    brnz v566, block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)
    jump block113

block113:
    v567 = icmp_imm.i32 uge v508, 0x2c91_9a88
    brnz v567, block114
    jump block115

block115:
    v568 = icmp_imm.i32 uge v508, 0x2c38_2c30
    brnz v568, block116
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block111:
    v569 = icmp_imm.i32 uge v508, 0x20a6_0100
    brnz v569, block117
    jump block118

block118:
    v570 = icmp_imm.i32 eq v508, 0x1339_b925
    brnz v570, block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)
    jump block119

block119:
    v571 = icmp_imm.i32 eq v508, 0x0146_0fff
    brnz v571, block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block109:
    v572 = icmp_imm.i32 uge v508, 0x0001_001c
    brnz v572, block121
    jump block120

block121:
    v573 = icmp_imm.i32 uge v508, 0x00e9_b663
    brnz v573, block122
    jump block123

block123:
    v574 = icmp_imm.i32 uge v508, 0x00e9_3030
    brnz v574, block124
    jump block125

block125:
    v575 = icmp_imm.i32 uge v508, 0x0001_001c
    brnz v575, block126
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block120:
    v576 = icmp_imm.i32 uge v508, 96
    brnz v576, block127
    jump block128

block128:
    br_table v508, block412, jt273

block127:
    v577 = iadd_imm.i32 v508, -96
    br_table v577, block414, jt249

block126:
    v578 = iadd_imm.i32 v508, 0xffff_ffff_fffe_ffe4
    br_table v578, block415, jt274

block124:
    v579 = iadd_imm.i32 v508, 0xffff_ffff_ff16_cfd0
    br_table v579, block416, jt275

block122:
    v580 = iadd_imm.i32 v508, 0xffff_ffff_ff16_499d
    br_table v580, block418, jt227

block117:
    v581 = iadd_imm.i32 v508, 0xffff_ffff_df59_ff00
    br_table v581, block420, jt80

block116:
    v582 = iadd_imm.i32 v508, 0xffff_ffff_d3c7_d3d0
    br_table v582, block421, jt195

block114:
    v583 = iadd_imm.i32 v508, 0xffff_ffff_d36e_6578
    br_table v583, block422, jt196

block107:
    v584 = iadd_imm.i32 v508, 0xffff_ffff_cbcf_cfd0
    br_table v584, block423, jt128

block105:
    v585 = iadd_imm.i32 v508, 0xffff_ffff_b9b9_b9ba
    br_table v585, block424, jt276

block104:
    v586 = iadd_imm.i32 v508, 0xffff_ffff_aacf_cfcc
    br_table v586, block426, jt277

block102:
    v587 = iadd_imm.i32 v508, 0xffff_ffff_a3aa_cfd0
    br_table v587, block428, jt278

block98:
    v588 = iadd_imm.i32 v508, 0xffff_ffff_9f58_cdac
    br_table v588, block429, jt279

block96:
    v589 = iadd_imm.i32 v508, 0xffff_ffff_5757_5758
    br_table v589, block430, jt280

block94:
    v590 = iadd_imm.i32 v508, 0xffff_ffff_4848_4849
    br_table v590, block432, jt253

block92:
    v591 = iadd_imm.i32 v508, 0xffff_ffff_0807_0100
    br_table v591, block434, jt169

block9(v592: i64, v599: i128, v600: i32, v602: i8, v605: i16, v607: i8, v608: i8, v610: i64, v616: i64, v626: f64, v655: f32, v662: b1, v663: f32, v664: b1, v1211: f64, v1214: f64, v1222: b1) cold:
    v593 = udiv v592, v592
    v594 = udiv v593, v593
    v595 = udiv v594, v594
    v596 = udiv v595, v595
    v597 = udiv v596, v596
    v598 = udiv v597, v597
    v601 = rotr v599, v600
    v603 = sshr v602, v600
    v604 = rotl v598, v601
    v606 = imul v605, v605
    nop
    v609 = iadd v607, v608
    v611 = ushr v609, v610
    v612 = rotr v601, v600
    v613 = rotr v612, v600
    v614 = rotr v613, v600
    v615 = rotr v614, v610
    v617 = rotl v606, v616
    v618 = rotr v615, v600
    v619 = iadd v610, v616
    v620 = rotr v618, v600
    v621 = rotr v620, v600
    v622 = rotr v621, v600
    v623 = rotr v622, v600
    v624 = rotr v623, v610
    v625 = rotl v617, v619
    v627 = fcopysign v626, v626
    v628 = fcopysign v627, v627
    v629 = fcopysign v628, v628
    v630 = fcopysign v629, v629
    v631 = fcopysign v630, v630
    v632 = fcopysign v631, v631
    v633 = fcopysign v632, v632
    v634 = fcopysign v633, v633
    v635 = fcopysign v634, v634
    v636 = fcopysign v635, v635
    v637 = fcopysign v636, v636
    v638 = fcopysign v637, v637
    v639 = fcopysign v638, v638
    v640 = fcopysign v639, v639
    v641 = fcopysign v640, v640
    v642 = fcopysign v641, v641
    v643 = fcopysign v642, v642
    v644 = fcopysign v643, v643
    v645 = fcopysign v644, v644
    v646 = fcopysign v645, v645
    v647 = fcopysign v646, v646
    v648 = fcopysign v647, v647
    v649 = fcopysign v648, v648
    v650 = fcopysign v649, v649
    v651 = rotr v624, v600
    v652 = rotr v651, v600
    v653 = rotr v652, v600
    v654 = rotr v653, v600
    v1305 = sqrt v655
    v1306 = fcmp ne v1305, v1305
    v1307 = f32const +NaN
    v656 = select v1306, v1307, v1305  ; v1307 = +NaN
    v657 = rotr v654, v600
    v658 = ishl v619, v619
    v659 = rotr v657, v600
    v660 = rotr v659, v600
    v661 = rotr v660, v600
    jump block16(v662, v610, v661, v661, v610, v663, v664, v658, v661, v600, v619, v661, v664, v664, v608, v1211, v1214, v611, v663, v1222)

block10(v59: i128, v60: i16, v61: f64, v62: f64, v63: f64, v64: f64, v65: i64, v66: i128, v67: f32, v68: f32, v69: f64, v70: f64, v71: f64) cold:
    v1219 = iconst.i8 0
    v1218 -> v1219
    v1186 = bconst.b1 false
    v1172 -> v1186
    v1185 = f64const 0.0
    v1115 -> v1185
    v1184 = bconst.b1 false
    v1092 -> v1184
    v1183 = bconst.b1 false
    v1085 -> v1183
    v1182 = f64const 0.0
    v1071 -> v1182
    v1181 = iconst.i8 0
    v1068 -> v1181
    v1180 = bconst.b1 false
    v672 -> v1180
    v1179 = iconst.i64 0
    v671 -> v1179
    v1178 = iconst.i64 0
    v670 -> v1178
    v1177 = bconst.b1 false
    v669 -> v1177
    v1176 = iconst.i16 0
    v668 -> v1176
    v1175 = iconst.i8 0
    v667 -> v1175
    v1174 = iconst.i32 0
    v666 -> v1174
    v1173 = f32const 0.0
    v665 -> v1173
    br_icmp sge v65, v65, block1(v665, v66, v66, v665, v666, v665, v667, v668, v69, v69, v69, v69, v69, v60, v1068, v69, v1071, v667, v65, v671, v1085, v1092, v670, v1115, v672, v1172, v669)  ; v665 = 0.0, v665 = 0.0, v666 = 0, v665 = 0.0, v667 = 0, v668 = 0, v1068 = 0, v1071 = 0.0, v667 = 0, v671 = 0, v1085 = false, v1092 = false, v670 = 0, v1115 = 0.0, v672 = false, v1172 = false, v669 = false
    jump block16(v669, v670, v66, v66, v671, v665, v669, v671, v66, v666, v671, v66, v672, v672, v1068, v1115, v71, v1218, v665, v669)  ; v669 = false, v670 = 0, v671 = 0, v665 = 0.0, v669 = false, v671 = 0, v666 = 0, v671 = 0, v672 = false, v672 = false, v1068 = 0, v1115 = 0.0, v1218 = 0, v665 = 0.0, v669 = false

block11(v673: i128, v674: i64, v676: i16, v678: i32, v692: i64, v694: i16, v701: f64, v702: f64, v706: i8, v709: i8, v714: i8, v728: i64, v1078: f32, v1080: f64, v1087: b1, v1094: b1, v1099: f32, v1111: f64, v1157: b1, v1167: b1, v1229: b1) cold:
    v675 = rotr v673, v674
    v677 = rotr v675, v676
    v679 = sshr v677, v678
    v680 = sshr v679, v678
    v681 = sshr v680, v678
    v682 = sshr v681, v678
    v683 = sshr v682, v678
    v684 = sshr v683, v678
    v685 = rotr v684, v676
    v686 = sshr v685, v678
    v687 = sshr v686, v678
    v688 = sshr v687, v678
    v689 = sshr v688, v678
    v690 = sshr v689, v678
    v691 = sshr v690, v678
    v693 = ushr v692, v691
    v695 = ushr v693, v694
    v696 = ushr v691, v674
    v697 = sextend.i128 v694
    v698 = ishl v694, v674
    v699 = udiv v678, v678
    v700 = udiv v698, v694
    v703 = fcmp ule v701, v702
    v704 = rotr v697, v697
    v705 = rotr v704, v704
    v707 = sshr v706, v699
    v708 = rotr v705, v699
    v710 = iadd v707, v709
    v711 = sshr v708, v699
    v712 = sshr v711, v699
    v713 = sshr v712, v699
    v715 = ishl v714, v714
    v716 = ishl v715, v715
    v717 = isub v674, v674
    v718 = isub v717, v717
    v719 = isub v718, v718
    v720 = ishl v698, v719
    v721 = ishl v720, v719
    v722 = ishl v721, v719
    v723 = ishl v722, v719
    v724 = rotr v719, v699
    v725 = rotr v713, v700
    v726 = rotr v725, v723
    v727 = rotr v726, v723
    v729 = udiv v728, v728
    v730 = rotr v699, v727
    v731 = sextend.i64 v716
    v732 = icmp_imm uge v723, 0x5f2f
    brnz v732, block130
    jump block129

block130:
    v733 = icmp_imm.i16 uge v723, 0xa8a8
    brnz v733, block132
    jump block131

block132:
    v734 = icmp_imm.i16 uge v723, 0xe9b6
    brnz v734, block134
    jump block133

block134:
    v735 = icmp_imm.i16 uge v723, 0xff2f
    brnz v735, block136
    jump block135

block136:
    v736 = icmp_imm.i16 eq v723, 0xff46
    brnz v736, block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)
    jump block137

block137:
    v737 = icmp_imm.i16 eq v723, 0xff2f
    brnz v737, block11(v727, v731, v723, v730, v724, v700, v701, v702, v710, v709, v715, v729, v1078, v1080, v1087, v1094, v1099, v1111, v1157, v1167, v1229)
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block135:
    v738 = icmp_imm.i16 eq v723, 0xff00
    brnz v738, block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)
    jump block138

block138:
    v739 = icmp_imm.i16 uge v723, 0xe9b6
    brnz v739, block139
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block133:
    v740 = icmp_imm.i16 eq v723, 0xb925
    brnz v740, block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)
    jump block140

block140:
    v741 = icmp_imm.i16 eq v723, 0xb7b7
    brnz v741, block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)
    jump block141

block141:
    v742 = icmp_imm.i16 uge v723, 0xa8a8
    brnz v742, block142
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block131:
    v743 = icmp_imm.i16 uge v723, 0x772f
    brnz v743, block144
    jump block143

block144:
    v744 = icmp_imm.i16 uge v723, 0x7d30
    brnz v744, block145
    jump block146

block146:
    v745 = icmp_imm.i16 uge v723, 0x7777
    brnz v745, block147
    jump block148

block148:
    v746 = icmp_imm.i16 eq v723, 0x772f
    brnz v746, block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block143:
    v747 = icmp_imm.i16 uge v723, 0x60a7
    brnz v747, block149
    jump block150

block150:
    v748 = icmp_imm.i16 uge v723, 0x6000
    brnz v748, block151
    jump block152

block152:
    v749 = icmp_imm.i16 eq v723, 0x5f2f
    brnz v749, block11(v727, v731, v723, v730, v724, v700, v701, v702, v710, v709, v715, v729, v1078, v1080, v1087, v1094, v1099, v1111, v1157, v1167, v1229)
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block129:
    v750 = icmp_imm.i16 uge v723, 0x315c
    brnz v750, block154
    jump block153

block154:
    v751 = icmp_imm.i16 uge v723, 0x497d
    brnz v751, block156
    jump block155

block156:
    v752 = icmp_imm.i16 uge v723, 0x5530
    brnz v752, block157
    jump block158

block158:
    v753 = icmp_imm.i16 uge v723, 0x4d00
    brnz v753, block159
    jump block160

block160:
    v754 = icmp_imm.i16 uge v723, 0x497d
    brnz v754, block161
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block155:
    v755 = icmp_imm.i16 eq v723, 0x40b7
    brnz v755, block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)
    jump block162

block162:
    v756 = icmp_imm.i16 eq v723, 0x322f
    brnz v756, block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)
    jump block163

block163:
    v757 = icmp_imm.i16 uge v723, 0x315c
    brnz v757, block164
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block153:
    v758 = icmp_imm.i16 uge v723, 8230
    brnz v758, block166
    jump block165

block166:
    v759 = icmp_imm.i16 uge v723, 0x3030
    brnz v759, block167
    jump block168

block168:
    v760 = icmp_imm.i16 eq v723, 8358
    brnz v760, block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)
    jump block169

block169:
    v761 = icmp_imm.i16 eq v723, 8230
    brnz v761, block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block165:
    v762 = icmp_imm.i16 eq v723, 326
    brnz v762, block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)
    jump block170

block170:
    v763 = icmp_imm.i16 uge v723, 256
    brnz v763, block171
    jump block172

block172:
    v764 = uextend.i32 v723
    br_table v764, block291, jt281

block171:
    v765 = iadd_imm.i16 v723, -256
    v766 = uextend.i32 v765
    br_table v766, block292, jt90

block167:
    v767 = iadd_imm.i16 v723, 0xffff_ffff_ffff_cfd0
    v768 = uextend.i32 v767
    br_table v768, block293, jt282

block164:
    v769 = iadd_imm.i16 v723, 0xffff_ffff_ffff_cea4
    v770 = uextend.i32 v769
    br_table v770, block295, jt283

block161:
    v771 = iadd_imm.i16 v723, 0xffff_ffff_ffff_b683
    v772 = uextend.i32 v771
    br_table v772, block297, jt284

block159:
    v773 = iadd_imm.i16 v723, 0xffff_ffff_ffff_b300
    v774 = uextend.i32 v773
    br_table v774, block298, jt256

block157:
    v775 = iadd_imm.i16 v723, 0xffff_ffff_ffff_aad0
    v776 = uextend.i32 v775
    br_table v776, block299, jt285

block151:
    v777 = iadd_imm.i16 v723, 0xffff_ffff_ffff_a000
    v778 = uextend.i32 v777
    br_table v778, block301, jt173

block149:
    v779 = iadd_imm.i16 v723, 0xffff_ffff_ffff_9f59
    v780 = uextend.i32 v779
    br_table v780, block302, jt286

block147:
    v781 = iadd_imm.i16 v723, 0xffff_ffff_ffff_8889
    v782 = uextend.i32 v781
    br_table v782, block304, jt175

block145:
    v783 = iadd_imm.i16 v723, 0xffff_ffff_ffff_82d0
    v784 = uextend.i32 v783
    br_table v784, block305, jt287

block142:
    v785 = iadd_imm.i16 v723, 0xffff_ffff_ffff_5758
    v786 = uextend.i32 v785
    br_table v786, block307, jt237

block139:
    v787 = iadd_imm.i16 v723, 0xffff_ffff_ffff_164a
    v788 = uextend.i32 v787
    br_table v788, block309, jt212

block12(v789: i64, v790: i64, v792: i128, v793: i16, v796: i64, v800: i32, v815: i16, v822: f64, v826: i8, v829: i8, v834: i8, v851: f32, v1137: f32, v1138: f64, v1141: b1, v1144: b1, v1145: f64, v1148: f64, v1156: b1, v1166: b1, v1228: b1) cold:
    v791 = udiv v789, v790
    v794 = ishl v792, v793
    v795 = ishl v794, v793
    v797 = udiv v796, v791
    v798 = rotr v795, v795
    v799 = rotr v798, v793
    v801 = sshr v799, v800
    v802 = sshr v801, v800
    v803 = sshr v802, v800
    v804 = sshr v803, v800
    v805 = sshr v804, v800
    v806 = sshr v805, v800
    v807 = rotr v806, v793
    v808 = sshr v807, v800
    v809 = sshr v808, v800
    v810 = sshr v809, v800
    v811 = sshr v810, v800
    v812 = sshr v811, v800
    v813 = sshr v812, v800
    v814 = ushr v797, v813
    v816 = ushr v814, v815
    v817 = ushr v813, v791
    v818 = sextend.i128 v815
    v819 = ishl v815, v791
    v820 = udiv v800, v800
    v821 = udiv v819, v815
    v823 = fcmp ule v822, v822
    v824 = rotr v818, v818
    v825 = rotr v824, v824
    v827 = sshr v826, v820
    v828 = rotr v825, v820
    v830 = iadd v827, v829
    v831 = sshr v828, v820
    v832 = sshr v831, v820
    v833 = sshr v832, v820
    v835 = ishl v834, v834
    v836 = ishl v835, v835
    v837 = isub v791, v791
    v838 = isub v837, v837
    v839 = isub v838, v838
    v840 = ishl v819, v839
    v841 = ishl v840, v839
    v842 = ishl v841, v839
    v843 = ishl v842, v839
    v844 = rotr v839, v820
    v845 = rotr v833, v821
    v846 = rotr v845, v843
    v847 = rotr v846, v843
    v848 = udiv v796, v796
    v849 = rotr v820, v847
    v850 = sextend.i64 v836
    stack_store v847, ss2+27
    v1308 = fdiv v851, v851
    v1309 = fcmp ne v1308, v1308
    v1310 = f32const +NaN
    v852 = select v1309, v1310, v1308  ; v1310 = +NaN
    jump block8(v847, v843, v847, v847, v847, v847, v849, v830, v822, v847, v830, v822, v822, v852, v848, v850, v821, v835, v836, v829, v1137, v1138, v1141, v1144, v1145, v1148, v1156, v1166, v1228)

block13(v72: i128, v73: i32, v74: i64) cold:
    v1311 = fdiv.f32 v853, v853
    v1312 = fcmp ne v1311, v1311
    v1313 = f32const +NaN
    v854 = select v1312, v1313, v1311  ; v1313 = +NaN
    v1314 = fdiv v854, v854
    v1315 = fcmp ne v1314, v1314
    v1316 = f32const +NaN
    v855 = select v1315, v1316, v1314  ; v1316 = +NaN
    v1317 = fdiv v855, v855
    v1318 = fcmp ne v1317, v1317
    v1319 = f32const +NaN
    v856 = select v1318, v1319, v1317  ; v1319 = +NaN
    v1320 = fdiv v856, v856
    v1321 = fcmp ne v1320, v1320
    v1322 = f32const +NaN
    v857 = select v1321, v1322, v1320  ; v1322 = +NaN
    v1323 = fdiv v857, v857
    v1324 = fcmp ne v1323, v1323
    v1325 = f32const +NaN
    v858 = select v1324, v1325, v1323  ; v1325 = +NaN
    v1326 = fdiv v858, v858
    v1327 = fcmp ne v1326, v1326
    v1328 = f32const +NaN
    v859 = select v1327, v1328, v1326  ; v1328 = +NaN
    v1329 = fdiv v858, v858
    v1330 = fcmp ne v1329, v1329
    v1331 = f32const +NaN
    v860 = select v1330, v1331, v1329  ; v1331 = +NaN
    v861 = rotl v73, v74
    v1332 = fdiv v860, v860
    v1333 = fcmp ne v1332, v1332
    v1334 = f32const +NaN
    v862 = select v1333, v1334, v1332  ; v1334 = +NaN
    v1335 = fdiv v862, v862
    v1336 = fcmp ne v1335, v1335
    v1337 = f32const +NaN
    v863 = select v1336, v1337, v1335  ; v1337 = +NaN
    v1338 = fdiv v863, v863
    v1339 = fcmp ne v1338, v1338
    v1340 = f32const +NaN
    v864 = select v1339, v1340, v1338  ; v1340 = +NaN
    v1341 = fdiv v864, v864
    v1342 = fcmp ne v1341, v1341
    v1343 = f32const +NaN
    v865 = select v1342, v1343, v1341  ; v1343 = +NaN
    v867 = rotr v72, v866
    v869 = ishl v867, v868
    v870 = ishl v869, v868
    v871 = udiv v74, v866
    v872 = rotr v870, v870
    v873 = rotr v872, v868
    v874 = sshr v873, v861
    v875 = sshr v874, v861
    v876 = sshr v875, v861
    v877 = sshr v876, v861
    nop
    nop
    v878 = ireduce.i8 v861
    nop
    nop
    v879 = ireduce.i8 v868
    v880 = rotr v74, v878
    v881 = rotr v879, v868
    v883 = rotl.i16 v882, v866
    nop
    nop
    v884 = ishl.i16 v868, v861
    v885 = ushr v881, v871
    nop
    v886 = imul v861, v861
    v887 = sshr v884, v879
    v888 = stack_load.i16 ss2+34
    nop
    v890 = udiv v885, v889
    nop
    nop
    v891 = ishl v887, v886
    v893 = ushr.i8 v892, v866
    v894 = ushr v893, v888
    v895 = iadd.i8 v889, v879
    v896 = rotr v886, v877
    v897 = rotr v877, v891
    v898 = rotr v897, v891
    v899 = rotr v898, v891
    v900 = rotr v899, v891
    v901 = rotr v900, v891
    v902 = icmp_imm uge v896, 0x3b60_5530
    brnz v902, block174
    jump block173

block174:
    v903 = icmp_imm.i32 uge v896, 0xb7b7_b7b7
    brnz v903, block176
    jump block175

block176:
    v904 = icmp_imm.i32 uge v896, 0xc6c6_c6c6
    brnz v904, block178
    jump block177

block178:
    v905 = icmp_imm.i32 uge v896, 0xf553_5353
    brnz v905, block180
    jump block179

block180:
    v906 = icmp_imm.i32 uge v896, 0xff2f_31ad
    brnz v906, block181
    jump block182

block182:
    v907 = icmp_imm.i32 eq v896, 0xf553_5353
    brnz v907, block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block179:
    v908 = icmp_imm.i32 eq v896, 0xd426_e5a5
    brnz v908, block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block183

block183:
    v909 = icmp_imm.i32 uge v896, 0xc6c6_c6c6
    brnz v909, block184
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block177:
    v910 = icmp_imm.i32 eq v896, 0xb7ff_2f31
    brnz v910, block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)
    jump block185

block185:
    v911 = icmp_imm.i32 eq v896, 0xb7b7_b7ff
    brnz v911, block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block186

block186:
    v912 = icmp_imm.i32 uge v896, 0xb7b7_b7b7
    brnz v912, block187
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block175:
    v913 = icmp_imm.i32 uge v896, 0x7777_7777
    brnz v913, block189
    jump block188

block189:
    v914 = icmp_imm.i32 uge v896, 0xa8a8_a8a8
    brnz v914, block190
    jump block191

block191:
    v915 = icmp_imm.i32 uge v896, 0x8b88_8888
    brnz v915, block192
    jump block193

block193:
    v916 = icmp_imm.i32 uge v896, 0x7777_7777
    brnz v916, block194
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block188:
    v917 = icmp_imm.i32 uge v896, 0x772f_2b2f
    brnz v917, block195
    jump block196

block196:
    v918 = icmp_imm.i32 eq v896, 0x5353_5353
    brnz v918, block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block197

block197:
    v919 = icmp_imm.i32 uge v896, 0x3b60_5530
    brnz v919, block198
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block173:
    v920 = icmp_imm.i32 uge v896, 0x3030_3030
    brnz v920, block200
    jump block199

block200:
    v921 = icmp_imm.i32 uge v896, 0x3132_2f77
    brnz v921, block202
    jump block201

block202:
    v922 = icmp_imm.i32 uge v896, 0x3265_2b11
    brnz v922, block203
    jump block204

block204:
    v923 = icmp_imm.i32 uge v896, 0x315c_2c38
    brnz v923, block205
    jump block206

block206:
    v924 = icmp_imm.i32 eq v896, 0x3132_2f77
    brnz v924, block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block201:
    v925 = icmp_imm.i32 uge v896, 0x3034_3030
    brnz v925, block207
    jump block208

block208:
    v926 = icmp_imm.i32 eq v896, 0x3030_f05c
    brnz v926, block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block209

block209:
    v927 = icmp_imm.i32 eq v896, 0x3030_3030
    brnz v927, block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block199:
    v928 = icmp_imm.i32 uge v896, 0x2f2f_2f2f
    brnz v928, block211
    jump block210

block211:
    v929 = icmp_imm.i32 eq v896, 0x2f5f_2fff
    brnz v929, block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block212

block212:
    v930 = icmp_imm.i32 eq v896, 0x2f5f_2f5f
    brnz v930, block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252
    jump block213

block213:
    v931 = icmp_imm.i32 eq v896, 0x2f2f_2f2f
    brnz v931, block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block210:
    v932 = icmp_imm.i32 uge v896, 0x2f2f_2f00
    brnz v932, block214
    jump block215

block215:
    v933 = icmp_imm.i32 eq v896, 0x0001_f926
    brnz v933, block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block216

block216:
    brz.i32 v896, block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block214:
    v934 = iadd_imm.i32 v896, 0xffff_ffff_d0d0_d100
    br_table v934, block462, jt178

block207:
    v935 = iadd_imm.i32 v896, 0xffff_ffff_cfcb_cfd0
    br_table v935, block463, jt288

block205:
    v936 = iadd_imm.i32 v896, 0xffff_ffff_cea3_d3c8
    br_table v936, block464, jt289

block203:
    v937 = iadd_imm.i32 v896, 0xffff_ffff_cd9a_d4ef
    br_table v937, block465, jt290

block198:
    v938 = iadd_imm.i32 v896, 0xffff_ffff_c49f_aad0
    br_table v938, block467, jt291

block195:
    v939 = iadd_imm.i32 v896, 0xffff_ffff_88d0_d4d1
    br_table v939, block469, jt261

block194:
    v940 = iadd_imm.i32 v896, 0xffff_ffff_8888_8889
    br_table v940, block471, jt181

block192:
    v941 = iadd_imm.i32 v896, 0xffff_ffff_7477_7778
    br_table v941, block472, jt292

block190:
    v942 = iadd_imm.i32 v896, 0xffff_ffff_5757_5758
    br_table v942, block474, jt241

block187:
    v943 = iadd_imm.i32 v896, 0xffff_ffff_4848_4849
    br_table v943, block475, jt263

block184:
    v944 = iadd_imm.i32 v896, 0xffff_ffff_3939_393a
    br_table v944, block477, jt293

block181:
    v945 = iadd_imm.i32 v896, 0xffff_ffff_00d0_ce53
    br_table v945, block478, jt294

block14(v75: i16, v76: i32, v77: i32, v78: i64, v79: i128, v80: b1, v81: b1, v82: b1, v83: b1, v84: i8, v85: b1, v86: b1, v87: b1, v88: b1) cold:
    v1235 = bconst.b1 false
    v1234 -> v1235
    v1221 = iconst.i8 0
    v1220 -> v1221
    v1217 = f64const 0.0
    v1216 -> v1217
    v1213 = f64const 0.0
    v1212 -> v1213
    v1195 = bconst.b1 false
    v989 -> v1195
    v1194 = iconst.i64 0
    v979 -> v1194
    v1193 = iconst.i8 0
    v967 -> v1193
    v1192 = f32const 0.0
    v963 -> v1192
    v1191 = iconst.i16 0
    v958 -> v1191
    v1190 = iconst.i64 0
    v956 -> v1190
    v946 = udiv v78, v78
    v947 = udiv v946, v946
    v948 = udiv v947, v947
    v949 = udiv v948, v948
    v950 = udiv v949, v949
    v951 = udiv v950, v950
    v952 = udiv v951, v951
    v953 = udiv v952, v952
    v954 = udiv v953, v953
    v955 = udiv v954, v954
    v957 = udiv v955, v956  ; v956 = 0
    v959 = imul v958, v75  ; v958 = 0
    nop
    v960 = f64const 0x0.000000001a620p-1022
    v961 = f64const -0x1.f460165012620p1009
    v962 = udiv v955, v957
    v1344 = fmin v963, v963  ; v963 = 0.0, v963 = 0.0
    v1345 = fcmp ne v1344, v1344
    v1346 = f32const +NaN
    v964 = select v1345, v1346, v1344  ; v1346 = +NaN
    v965 = ishl v79, v77
    v966 = ireduce.i16 v77
    v968 = ishl v77, v967  ; v967 = 0
    v969 = ireduce.i16 v965
    nop
    nop
    nop
    nop
    nop
    nop
    nop
    v970 = rotl v969, v962
    v971 = isub v968, v968
    v972 = ushr v970, v967  ; v967 = 0
    nop
    nop
    nop
    nop
    nop
    v973 = ishl v965, v971
    nop
    nop
    nop
    v974 = ushr v972, v971
    nop
    v975 = ireduce.i8 v971
    nop
    nop
    v976 = ireduce.i8 v958  ; v958 = 0
    v977 = rotr v962, v975
    v978 = rotr v976, v958  ; v958 = 0
    v980 = rotl v974, v979  ; v979 = 0
    nop
    nop
    v981 = ishl v958, v971  ; v958 = 0
    v982 = ushr v978, v957
    nop
    v983 = imul v971, v971
    v984 = sshr v981, v976
    v985 = stack_load.i16 ss2+34
    v986 = udiv v977, v977
    v987 = udiv v986, v986
    v988 = udiv v987, v987
    jump block16(v88, v988, v973, v973, v988, v963, v88, v988, v973, v983, v988, v973, v88, v989, v982, v1212, v1216, v1220, v963, v1234)  ; v963 = 0.0, v989 = false, v1212 = 0.0, v1216 = 0.0, v1220 = 0, v963 = 0.0, v1234 = false

block15(v89: i64, v90: i128, v91: i32, v92: i64, v93: i128, v94: i128, v95: i8, v96: b1, v97: i64, v98: b1, v99: b1, v100: b1, v101: b1, v102: i8):
    v1232 = bconst.b1 false
    v1231 -> v1232
    v1210 = f64const 0.0
    v1187 -> v1210
    v1209 = bconst.b1 false
    v1170 -> v1209
    v1208 = f64const 0.0
    v1114 -> v1208
    v1207 = bconst.b1 false
    v1104 -> v1207
    v1206 = bconst.b1 false
    v1103 -> v1206
    v1205 = f64const 0.0
    v1102 -> v1205
    v1204 = f64const 0.0
    v1101 -> v1204
    v1203 = f32const 0.0
    v1100 -> v1203
    v1202 = iconst.i16 0
    v1039 -> v1202
    v1201 = f32const 0.0
    v1024 -> v1201
    v1200 = iconst.i8 0
    v1009 -> v1200
    v1199 = iconst.i8 0
    v1007 -> v1199
    v1198 = iconst.i64 0
    v1005 -> v1198
    v1197 = iconst.i16 0
    v1003 -> v1197
    v1196 = iconst.i8 0
    v1000 -> v1196
    v990 = udiv v97, v97
    v991 = udiv v990, v990
    v992 = udiv v991, v991
    v993 = udiv v992, v992
    v994 = udiv v993, v993
    v995 = udiv v994, v994
    v996 = udiv v995, v995
    v997 = rotr v94, v91
    v998 = rotr v997, v91
    v999 = rotr v998, v91
    v1001 = sshr v1000, v91  ; v1000 = 0
    v1002 = rotl v996, v999
    v1004 = imul v1003, v1003  ; v1003 = 0, v1003 = 0
    nop
    v1006 = udiv v1005, v1005  ; v1005 = 0, v1005 = 0
    v1008 = ushr v1007, v1006  ; v1007 = 0
    v1010 = ushr v1009, v1002  ; v1009 = 0
    v1011 = rotr v999, v1006
    v1012 = rotl v1004, v1005  ; v1005 = 0
    v1013 = rotr v1011, v91
    v1014 = iadd v1006, v1005  ; v1005 = 0
    v1015 = rotr v1013, v91
    v1016 = rotr v1015, v91
    v1017 = rotr v1016, v91
    v1018 = rotr v1017, v91
    v1019 = rotr v1018, v1006
    v1020 = rotl v1012, v1014
    v1021 = rotr v1019, v91
    v1022 = rotr v1021, v91
    v1023 = rotr v1022, v91
    v1347 = sqrt v1024  ; v1024 = 0.0
    v1348 = fcmp ne v1347, v1347
    v1349 = f32const +NaN
    v1025 = select v1348, v1349, v1347  ; v1349 = +NaN
    v1026 = rotr v1023, v91
    v1027 = ishl v1014, v1014
    v1028 = rotr v1026, v91
    v1029 = rotr v1028, v91
    v1030 = rotr v1029, v91
    v1031 = udiv v1027, v1027
    v1032 = ishl v1014, v1027
    v1033 = rotl v1010, v1020
    v1034 = rotr v1030, v91
    v1035 = rotr v1033, v1020
    v1036 = rotr v1034, v91
    v1037 = rotr v1036, v91
    v1038 = rotr v1037, v91
    v1040 = rotr v1035, v1039  ; v1039 = 0
    v1041 = sshr v1038, v91
    v1042 = rotr v1041, v1039  ; v1039 = 0
    v1043 = sshr v1042, v91
    v1044 = sshr v1043, v91
    v1045 = sshr v1044, v91
    v1046 = sshr v1045, v91
    v1047 = sshr v1046, v91
    v1048 = sshr v1047, v91
    v1049 = ushr v1014, v1048
    v1050 = ushr v1049, v1020
    v1051 = ushr v1048, v1031
    v1052 = sextend.i128 v1020
    v1053 = ishl v1020, v1031
    v1054 = udiv v91, v91
    v1055 = udiv v1053, v1020
    br_table v1054, block406, jt295

block16(v103: b1, v104: i64, v105: i128, v106: i128, v107: i64, v108: f32, v109: b1, v110: i64, v111: i128, v112: i32, v113: i64, v114: i128, v115: b1, v116: b1, v1061: i8, v1063: f64, v1064: f64, v1065: i8, v1066: f32, v1067: b1):
    v1056 = udiv v112, v112
    v1057 = sshr v114, v1056
    v1058 = sshr v1057, v1056
    v1059 = sshr v1058, v1056
    v1060 = sshr v1059, v1056
    v1062 = ishl v1061, v1061
    return v1062, v1063, v1064, v1065, v1056, v1066, v1067, v113, v1060, v1060, v1060, v1060, v1067, v1065, v1060, v113

block217:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block218:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block219:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block220:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block221:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block222:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block223:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block224:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block225:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block226:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block227:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block228:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block229:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block230:
    jump block2(v19, v223, v216, v200, v198, v206, v1082, v1089, v204, v205, v209, v208, v221, v1105, v1108, v23, v201, v220, v1151, v1161, v1223)

block231:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block232:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block233:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block234:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block235:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block236:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block237:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block238:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block239:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block240:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block241:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block242:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block243:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block244:
    jump block2(v1077, v538, v508, v542, v535, v1079, v1086, v1093, v58, v1097, v543, v507, v544, v517, v1110, v539, v546, v512, v1153, v1163, v1225)

block245:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block246:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block247:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block248:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block249:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block250:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block251:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block252:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block253:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block254:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block255:
    jump block2(v1078, v727, v730, v715, v700, v1080, v1087, v1094, v701, v702, v710, v729, v731, v724, v1111, v723, v709, v1099, v1157, v1167, v1229)

block256:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block257:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block258:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block259:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block260:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block261:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block262:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block263:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block264:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block265:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block266:
    jump block2(v859, v901, v896, v893, v888, v1081, v1088, v1095, v1096, v1098, v895, v880, v866, v871, v1112, v891, v894, v865, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block267:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block268:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block269:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block270:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block271:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block272:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block273:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block274:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block275:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block276:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block277:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block278:
    jump block3(v220, v223, v19, v216, v209, v198, v204, v200, v205, v208, v221, v1082, v1089, v1105, v1108, v201, v22, v1151, v1161, v206, v1223)

block279:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block280:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block281:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block282:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block283:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block284:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block285:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block286:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block287:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block288:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block289:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block290:
    jump block3(v512, v538, v1077, v508, v543, v535, v58, v542, v1097, v507, v544, v1086, v1093, v517, v1110, v546, v547, v1153, v1163, v1079, v1225)

block291:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block292:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block293:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block294:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block295:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block296:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block297:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block298:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block299:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block300:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block301:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block302:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block303:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block304:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block305:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block306:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block307:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block308:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block309:
    jump block3(v1099, v727, v1078, v730, v710, v700, v701, v715, v702, v729, v731, v1087, v1094, v724, v1111, v709, v716, v1157, v1167, v1080, v1229)

block310:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block311:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block312:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block313:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block314:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block315:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block316:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block317:
    jump block3(v865, v901, v859, v896, v895, v888, v1096, v893, v1098, v880, v866, v1088, v1095, v871, v1112, v894, v889, v1158, v1168, v1081, v1230)  ; v1096 = 0x1.03055555cf030p-252

block318:
    jump block3(v1100, v1052, v1025, v1054, v1040, v1055, v1101, v1035, v1102, v1032, v1031, v1103, v1104, v1050, v1114, v1000, v1008, v101, v1170, v1187, v1231)  ; v1100 = 0.0, v1101 = 0.0, v1102 = 0.0, v1103 = false, v1104 = false, v1114 = 0.0, v1000 = 0, v1170 = false, v1187 = 0.0, v1231 = false

block319:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block320:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block321:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block322:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block323:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block324:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block325:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block326:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block327:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block328:
    jump block4(v221, v216, v209, v1105, v223, v198, v22, v201, v19, v205, v1108, v1082, v1089, v1151, v1161, v220, v206, v1223)

block329:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block330:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block331:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block332:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block333:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block334:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block335:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block336:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block337:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block338:
    jump block4(v544, v508, v543, v517, v538, v535, v547, v546, v1077, v1097, v1110, v1086, v1093, v1153, v1163, v512, v1079, v1225)

block339:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block340:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block341:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block342:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block343:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block344:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block345:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block346:
    jump block4(v731, v730, v710, v724, v727, v700, v716, v709, v1078, v702, v1111, v1087, v1094, v1157, v1167, v1099, v1080, v1229)

block347:
    jump block4(v866, v896, v895, v871, v901, v888, v889, v894, v859, v1098, v1112, v1088, v1095, v1158, v1168, v865, v1081, v1230)

block348:
    jump block4(v866, v896, v895, v871, v901, v888, v889, v894, v859, v1098, v1112, v1088, v1095, v1158, v1168, v865, v1081, v1230)

block349:
    jump block4(v866, v896, v895, v871, v901, v888, v889, v894, v859, v1098, v1112, v1088, v1095, v1158, v1168, v865, v1081, v1230)

block350:
    jump block4(v866, v896, v895, v871, v901, v888, v889, v894, v859, v1098, v1112, v1088, v1095, v1158, v1168, v865, v1081, v1230)

block351:
    jump block4(v866, v896, v895, v871, v901, v888, v889, v894, v859, v1098, v1112, v1088, v1095, v1158, v1168, v865, v1081, v1230)

block352:
    jump block4(v866, v896, v895, v871, v901, v888, v889, v894, v859, v1098, v1112, v1088, v1095, v1158, v1168, v865, v1081, v1230)

block353:
    jump block4(v1031, v1054, v1040, v1050, v1052, v1055, v1008, v1000, v1025, v1102, v1114, v1103, v1104, v101, v1170, v1100, v1187, v1232)  ; v1000 = 0, v1102 = 0.0, v1114 = 0.0, v1103 = false, v1104 = false, v1170 = false, v1100 = 0.0, v1187 = 0.0, v1232 = false

block354:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block355:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block356:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block357:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block358:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block359:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block360:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block361:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block362:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block363:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block364:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block365:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block366:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block367:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block368:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block369:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block370:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block371:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block372:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block373:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block374:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block375:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block376:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block377:
    jump block5(v1105, v208, v200, v198, v223, v216, v221, v201, v22, v19, v204, v220, v1089)

block378:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block379:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block380:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block381:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block382:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block383:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block384:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block385:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block386:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block387:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block388:
    jump block5(v517, v507, v542, v535, v538, v508, v544, v546, v547, v1077, v58, v512, v1093)

block389:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block390:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block391:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block392:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block393:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block394:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block395:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block396:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block397:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block398:
    jump block5(v724, v729, v715, v700, v727, v730, v731, v709, v716, v1078, v701, v1099, v1094)

block399:
    jump block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252

block400:
    jump block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252

block401:
    jump block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252

block402:
    jump block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252

block403:
    jump block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252

block404:
    jump block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252

block405:
    jump block5(v871, v880, v893, v888, v901, v896, v866, v894, v889, v859, v1096, v865, v1095)  ; v1096 = 0x1.03055555cf030p-252

block406:
    jump block5(v1050, v1032, v1035, v1055, v1052, v1054, v1031, v1000, v1008, v1025, v1101, v1100, v1104)  ; v1000 = 0, v1101 = 0.0, v1100 = 0.0, v1104 = false

block407:
    jump block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)

block408:
    jump block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)

block409:
    jump block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)

block410:
    jump block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)

block411:
    jump block9(v208, v223, v216, v201, v198, v22, v200, v221, v1105, v205, v19, v1151, v220, v1161, v1108, v206, v1223)

block412:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block413:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block414:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block415:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block416:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block417:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block418:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block419:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block420:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block421:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block422:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block423:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block424:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block425:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block426:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block427:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block428:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block429:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block430:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block431:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block432:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block433:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block434:
    jump block9(v507, v538, v508, v546, v535, v547, v542, v544, v517, v1097, v1077, v1153, v512, v1163, v1110, v1079, v1225)

block435:
    jump block9(v729, v727, v730, v709, v700, v716, v715, v731, v724, v702, v1078, v1157, v1099, v1167, v1111, v1080, v1229)

block436:
    jump block9(v729, v727, v730, v709, v700, v716, v715, v731, v724, v702, v1078, v1157, v1099, v1167, v1111, v1080, v1229)

block437:
    jump block9(v729, v727, v730, v709, v700, v716, v715, v731, v724, v702, v1078, v1157, v1099, v1167, v1111, v1080, v1229)

block438:
    jump block9(v729, v727, v730, v709, v700, v716, v715, v731, v724, v702, v1078, v1157, v1099, v1167, v1111, v1080, v1229)

block439:
    jump block9(v729, v727, v730, v709, v700, v716, v715, v731, v724, v702, v1078, v1157, v1099, v1167, v1111, v1080, v1229)

block440:
    jump block9(v729, v727, v730, v709, v700, v716, v715, v731, v724, v702, v1078, v1157, v1099, v1167, v1111, v1080, v1229)

block441:
    jump block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)

block442:
    jump block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)

block443:
    jump block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)

block444:
    jump block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)

block445:
    jump block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)

block446:
    jump block9(v880, v901, v896, v894, v888, v889, v893, v866, v871, v1098, v859, v1158, v865, v1168, v1112, v1081, v1230)

block447:
    jump block11(v223, v221, v23, v216, v1105, v198, v204, v205, v209, v201, v200, v208, v19, v206, v1082, v1089, v220, v1108, v1151, v1161, v1223)

block448:
    jump block11(v223, v221, v23, v216, v1105, v198, v204, v205, v209, v201, v200, v208, v19, v206, v1082, v1089, v220, v1108, v1151, v1161, v1223)

block449:
    jump block11(v223, v221, v23, v216, v1105, v198, v204, v205, v209, v201, v200, v208, v19, v206, v1082, v1089, v220, v1108, v1151, v1161, v1223)

block450:
    jump block11(v223, v221, v23, v216, v1105, v198, v204, v205, v209, v201, v200, v208, v19, v206, v1082, v1089, v220, v1108, v1151, v1161, v1223)

block451:
    jump block11(v538, v544, v539, v508, v517, v535, v58, v1097, v543, v546, v542, v507, v1077, v1079, v1086, v1093, v512, v1110, v1153, v1163, v1225)

block452:
    jump block11(v538, v544, v539, v508, v517, v535, v58, v1097, v543, v546, v542, v507, v1077, v1079, v1086, v1093, v512, v1110, v1153, v1163, v1225)

block453:
    jump block11(v538, v544, v539, v508, v517, v535, v58, v1097, v543, v546, v542, v507, v1077, v1079, v1086, v1093, v512, v1110, v1153, v1163, v1225)

block454:
    jump block11(v538, v544, v539, v508, v517, v535, v58, v1097, v543, v546, v542, v507, v1077, v1079, v1086, v1093, v512, v1110, v1153, v1163, v1225)

block455:
    jump block11(v538, v544, v539, v508, v517, v535, v58, v1097, v543, v546, v542, v507, v1077, v1079, v1086, v1093, v512, v1110, v1153, v1163, v1225)

block456:
    jump block11(v538, v544, v539, v508, v517, v535, v58, v1097, v543, v546, v542, v507, v1077, v1079, v1086, v1093, v512, v1110, v1153, v1163, v1225)

block457:
    jump block11(v727, v731, v723, v730, v724, v700, v701, v702, v710, v709, v715, v729, v1078, v1080, v1087, v1094, v1099, v1111, v1157, v1167, v1229)

block458:
    jump block11(v727, v731, v723, v730, v724, v700, v701, v702, v710, v709, v715, v729, v1078, v1080, v1087, v1094, v1099, v1111, v1157, v1167, v1229)

block459:
    jump block11(v727, v731, v723, v730, v724, v700, v701, v702, v710, v709, v715, v729, v1078, v1080, v1087, v1094, v1099, v1111, v1157, v1167, v1229)

block460:
    jump block11(v727, v731, v723, v730, v724, v700, v701, v702, v710, v709, v715, v729, v1078, v1080, v1087, v1094, v1099, v1111, v1157, v1167, v1229)

block461:
    jump block11(v727, v731, v723, v730, v724, v700, v701, v702, v710, v709, v715, v729, v1078, v1080, v1087, v1094, v1099, v1111, v1157, v1167, v1229)

block462:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block463:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block464:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block465:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block466:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block467:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block468:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block469:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block470:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block471:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block472:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block473:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block474:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block475:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block476:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block477:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block478:
    jump block11(v901, v866, v891, v896, v871, v888, v1096, v1098, v895, v894, v893, v880, v859, v1081, v1088, v1095, v865, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block479:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block480:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block481:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block482:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block483:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block484:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block485:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block486:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block487:
    jump block12(v221, v1105, v223, v23, v208, v216, v198, v204, v209, v201, v200, v220, v19, v206, v1082, v1089, v205, v1108, v1151, v1161, v1223)

block488:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block489:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block490:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block491:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block492:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block493:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block494:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block495:
    jump block12(v544, v517, v538, v539, v507, v508, v535, v58, v543, v546, v542, v512, v1077, v1079, v1086, v1093, v1097, v1110, v1153, v1163, v1225)

block496:
    jump block12(v731, v724, v727, v723, v729, v730, v700, v701, v710, v709, v715, v1099, v1078, v1080, v1087, v1094, v702, v1111, v1157, v1167, v1229)

block497:
    jump block12(v731, v724, v727, v723, v729, v730, v700, v701, v710, v709, v715, v1099, v1078, v1080, v1087, v1094, v702, v1111, v1157, v1167, v1229)

block498:
    jump block12(v731, v724, v727, v723, v729, v730, v700, v701, v710, v709, v715, v1099, v1078, v1080, v1087, v1094, v702, v1111, v1157, v1167, v1229)

block499:
    jump block12(v731, v724, v727, v723, v729, v730, v700, v701, v710, v709, v715, v1099, v1078, v1080, v1087, v1094, v702, v1111, v1157, v1167, v1229)

block500:
    jump block12(v731, v724, v727, v723, v729, v730, v700, v701, v710, v709, v715, v1099, v1078, v1080, v1087, v1094, v702, v1111, v1157, v1167, v1229)

block501:
    jump block12(v731, v724, v727, v723, v729, v730, v700, v701, v710, v709, v715, v1099, v1078, v1080, v1087, v1094, v702, v1111, v1157, v1167, v1229)

block502:
    jump block12(v731, v724, v727, v723, v729, v730, v700, v701, v710, v709, v715, v1099, v1078, v1080, v1087, v1094, v702, v1111, v1157, v1167, v1229)

block503:
    jump block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block504:
    jump block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block505:
    jump block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block506:
    jump block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block507:
    jump block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block508:
    jump block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block509:
    jump block12(v866, v871, v901, v891, v880, v896, v888, v1096, v895, v894, v893, v865, v859, v1081, v1088, v1095, v1098, v1112, v1158, v1168, v1230)  ; v1096 = 0x1.03055555cf030p-252

block510:
    jump block12(v1031, v1050, v1052, v1053, v1032, v1054, v1055, v1101, v1040, v1000, v1035, v1100, v1025, v1187, v1103, v1104, v1102, v1114, v101, v1170, v1231)  ; v1101 = 0.0, v1000 = 0, v1100 = 0.0, v1187 = 0.0, v1103 = false, v1104 = false, v1102 = 0.0, v1114 = 0.0, v1170 = false, v1231 = false
}

; Note: the results in the below test cases are simply a placeholder and probably will be wrong

; run: u0:1(-11, 1397969747, 0x1.a6a6a6p39, 0x1.a6a6a6p39, 3111837763084964691, true, false, true, false, true, -96079724108141195039112655696696496129, -5208492444341563977, -18505, -73, -0x1.7b7b7b7b7b7b7p-132, -73) == [0, 0.0, 0.0, 0, 0, 0.0, false, 0, 0, 0, 0, 0, false, 0, 0, 0]
; run: u0:1(-73, -1212696649, -0x1.6f6f6ep-16, -0x1.6f6f6ep-16, 4663397938854606775, true, true, true, true, true, 62967941173738128606315527521820981175, 3400834750846283615, 30583, 119, 0x1.7772f77777777p888, 119) == [0, 0.0, 0.0, 0, 0, 0.0, false, 0, 0, 0, 0, 0, false, 0, 0, 0]
; run: u0:1(0, 824967168, 0x1.7058b8p-39, 0x1.585c60p-21, 3473454196754439227, false, false, false, true, false, -1487535781990170746151613707560107, 2162687, 256, -7, -0x1.0000000000126p657, -74) == [0, 0.0, 0.0, 0, 0, 0.0, false, 0, 0, 0, 0, 0, false, 0, 0, 0]
; run: u0:1(32, -461019, -0x1.000000p83, 0x1.4c416cp-124, 2357327641184305152, false, true, true, true, false, -110760368850649593928097676631776166129, 20, 59, 0, 0x0.00000027e0800p-1022, 0) == [0, 0.0, 0.0, 0, 0, 0.0, false, 0, 0, 0, 0, 0, false, 0, 0, 0]
; run: u0:1(0, 24576, 0x1.5e5e00p-33, 0x1.5e5e5ep-33, 3399988123389603631, true, true, true, true, true, 62718710765820030520700417840365121327, 3399988123389603631, 12079, 47, 0x1.f2f2f2f2f2f2fp-1021, 0) == [0, 0.0, 0.0, 0, 0, 0.0, false, 0, 0, 0, 0, 0, false, 0, 0, 0]
; run: u0:1(1, -960095232, -0x1.8d8d8cp14, 0x1.538d8cp-126, -5208492444341520515, true, true, true, true, true, 86024508291915555492280501630613829559, -5208492444341520457, -18505, -73, 0x1.12fffb7b7b7b7p-268, 95) == [0, 0.0, 0.0, 0, 0, 0.0, false, 0, 0, 0, 0, 0, false, 0, 0, 0]

@abrown
Copy link
Collaborator

abrown commented Aug 23, 2022

Ah, fuzzing... good to know we can use jump tables😆

@afonso360

This comment was marked as resolved.

@jameysharp
Copy link
Contributor

OSS-Fuzz thinks this was fixed, and indeed, I can reproduce the SIGFPE on 9cb987c but not on d394edc. However I don't immediately see why #4752 would have actually fixed this.

On top of that, the same input produces a new error now:

thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Undeclared function u0:0 is referenced by u0:1!', fuzz/fuzz_targets/cranelift-fuzzgen.rs:73:53

git bisect points at #4667 as the commit that introduced this new failure mode.

@jameysharp
Copy link
Contributor

Okay, #4752 does not change the CLIF that this fuzz target generates, which is good: we didn't accidentally "fix" the fuzz bug by changing the input format.

It does dramatically change the assembly generated from that CLIF, including making the stack frame slightly smaller and the function slightly larger. But both versions have almost 1,200 instructions and I don't have any hope of getting to a root cause from there.

There's a rotl instruction in the generated CLIF whose result (v216) is the discriminant for what looks like a "switch" construct, so it could be that this divide-by-zero is on a branch that isn't executed if the rotate is performed correctly. There's also at least one udiv that operates on the result of an ishl. There's probably plenty of other ways that shifts or rotates could affect the inputs to the many division instructions in this test case.

So it's plausible enough that fixing shifts/rotates made this test case pass that I'm going to just declare that OSS-Fuzz is right, and this bug is fixed by that PR. Hooray!

The new error is another matter which I'll bring up in #4667.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants