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))