void f(bool b1, bool b2) {
print('b1=$b1, b2=$b2');
}

g1(int x, int y, int o, Object p) {
f(x < y, o > (p as int));
}

g2(int x, int y, int o, int p) {



f(x<y, o>(p));
}

main() {
g1(0, 1, 2, 3);
g2(0, 1, 2, 3);
}


void[KeywordToken] f[StringToken]([BeginToken]bool[StringToken] b1[StringToken],[SimpleToken] bool[StringToken] b2[StringToken])[SimpleToken] {[BeginToken]
print[StringToken]([BeginToken]'b1=[StringToken]$[SimpleToken]b1[StringToken], b2=[StringToken]$[SimpleToken]b2[StringToken]'[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]

g1[StringToken]([BeginToken]int[StringToken] x[StringToken],[SimpleToken] int[StringToken] y[StringToken],[SimpleToken] int[StringToken] o[StringToken],[SimpleToken] Object[StringToken] p[StringToken])[SimpleToken] {[BeginToken]
f[StringToken]([BeginToken]x[StringToken] <[BeginToken] y[StringToken],[SimpleToken] o[StringToken] >[SimpleToken] ([BeginToken]p[StringToken] as[KeywordToken] int[StringToken])[SimpleToken])[SimpleToken];[SimpleToken]
}[SimpleToken]

g2[StringToken]([BeginToken]int[StringToken] x[StringToken],[SimpleToken] int[StringToken] y[StringToken],[SimpleToken] int[StringToken] o[StringToken],[SimpleToken] int[StringToken] p[StringToken])[SimpleToken] {[BeginToken]



f[StringToken]([BeginToken]x[StringToken]<[BeginToken]y[StringToken],[SimpleToken] o[StringToken]>[SimpleToken]([BeginToken]p[StringToken])[SimpleToken])[SimpleToken];[SimpleToken]
}[SimpleToken]

main[StringToken]([BeginToken])[SimpleToken] {[BeginToken]
g1[StringToken]([BeginToken]0[StringToken],[SimpleToken] 1[StringToken],[SimpleToken] 2[StringToken],[SimpleToken] 3[StringToken])[SimpleToken];[SimpleToken]
g2[StringToken]([BeginToken]0[StringToken],[SimpleToken] 1[StringToken],[SimpleToken] 2[StringToken],[SimpleToken] 3[StringToken])[SimpleToken];[SimpleToken]
}[SimpleToken]
[SimpleToken]
