[result] def even (x_1 : obj) : obj := let x_2 : obj := 0; let x_3 : u8 := Nat.decEq x_1 x_2; case x_3 : u8 of Bool.false → let x_4 : obj := 1; let x_5 : obj := Nat.sub x_1 x_4; dec x_1; let x_6 : obj := odd x_5; ret x_6 Bool.true → dec x_1; let x_7 : obj := 1; ret x_7 def odd (x_1 : obj) : obj := let x_2 : obj := 0; let x_3 : u8 := Nat.decEq x_1 x_2; case x_3 : u8 of Bool.false → let x_4 : obj := 1; let x_5 : obj := Nat.sub x_1 x_4; dec x_1; let x_6 : obj := even x_5; ret x_6 Bool.true → dec x_1; let x_7 : obj := 0; ret x_7