let f1(b) { if (b==0) then 0 else f1(b-1) } f2(a,b) { if (a>b) then f1(a) else f1(b); let g(c) { a*b*c } in g(a*b) } in f1(10); f2(10, let max(a,b) { if (a>b) then a else b } in max(20,30) )