//ww:run-exit 4 // Migrated from 700_e2e row 60. package main; fn try1(n: i64) (i64 | str) = { if (n < 0) { return "fail"; }; return n; }; fn try2(n: i64) (i64 | str) = { let v: i64 = try1(n)?; return v + 100; }; fn main() i32 = { let r: (i64 | str) = try2(-1); match (r) { case let n: i64 => return n: i32; case let s: str => return s.len: i32; }; return 0; };