(module
  (import "wasi_snapshot_preview1" "fd_write" (func $fd_write (param i32 i32 i32 i32) (result i32)))
  (import "wasi_snapshot_preview1" "proc_exit" (func $proc_exit (param i32)))
  (data (i32.const 48) "\04\00\00\00true")
  (data (i32.const 56) "\05\00\00\00false")
  (data (i32.const 64) "\01\00\00\00-")
  (memory (export "memory") 2)
  (global $hp (mut i32) (i32.const 72))
  (func $spiralMain (result i32)
    (local $v0 f32)
    (local $v1 f32)
    (local $v2 f32)
    (local $v3 f32)
    (local $v4 f32)
    (local $v5 f32)
    (local $v6 f32)
    (local $v7 i32)
    (local $v8 i32)
    (local.set $v0 (f32.const -1.5))
    (local.set $v1 (f32.const 2))
    (local.set $v2 (f32.div (local.get $v0) (local.get $v1)))
    (local.set $v3 (f32.const -0.75))
    (local.set $v4 (f32.mul (local.get $v0) (local.get $v1)))
    (local.set $v5 (f32.add (local.get $v4) (f32.const 0.5)))
    (local.set $v6 (f32.const -2.5))
    (local.set $v7 (f32.eq (local.get $v2) (local.get $v3)))
    (if (local.get $v7)
        (then
            (local.set $v8 (f32.eq (local.get $v5) (local.get $v6)))
            (if (local.get $v8)
                (then
                    (return (i32.const 0))
                )
                (else
                    (return (i32.const 2))
                ))
        )
        (else
            (return (i32.const 1))
        ))
    (unreachable)
  )
  (func $_start (export "_start")
    (call $proc_exit (call $spiralMain)))
)
