static IF1 mainFunctionToIF1Opt(O f) { if (fname cast S) ret (IF1) a -> { callMC(f, a) }; ret toF1(f); }