procedure p(a: System.Func; b:System.Func; c: X); begin writeln(a(c)); end; begin p(x->x,x->1.0,4.0); end.