procedure Num.21 (#Attr.2, #Attr.3): let Num.258 : I64 = lowlevel NumMul #Attr.2 #Attr.3; ret Num.258; procedure Test.1 (Test.6): let Test.21 : Int1 = false; let Test.22 : Int1 = lowlevel Eq Test.21 Test.6; if Test.22 then let Test.8 : I64 = 3i64; ret Test.8; else let Test.10 : I64 = 5i64; ret Test.10; procedure Test.1 (Test.6): let Test.27 : Int1 = StructAtIndex 1 Test.6; let Test.28 : Int1 = false; let Test.29 : Int1 = lowlevel Eq Test.28 Test.27; if Test.29 then let Test.8 : I64 = StructAtIndex 0 Test.6; ret Test.8; else let Test.10 : I64 = StructAtIndex 0 Test.6; ret Test.10; procedure Test.0 (): let Test.35 : I64 = 7i64; let Test.36 : Int1 = false; let Test.34 : {I64, Int1} = Struct {Test.35, Test.36}; let Test.2 : I64 = CallByName Test.1 Test.34; let Test.33 : Int1 = false; let Test.3 : I64 = CallByName Test.1 Test.33; let Test.30 : I64 = 11i64; let Test.31 : Int1 = true; let Test.24 : {I64, Int1} = Struct {Test.30, Test.31}; let Test.4 : I64 = CallByName Test.1 Test.24; let Test.23 : Int1 = true; let Test.5 : I64 = CallByName Test.1 Test.23; let Test.17 : I64 = CallByName Num.21 Test.2 Test.3; let Test.16 : I64 = CallByName Num.21 Test.17 Test.4; let Test.15 : I64 = CallByName Num.21 Test.16 Test.5; ret Test.15;