CYFunctionParameter *CYOptionalFunctionParameter::Replace(CYContext &context, CYBlock &code) {
CYFunctionParameter *parameter($ CYFunctionParameter(name_, next_));
parameter = parameter->Replace(context, code);
CYFunctionParameter *CYOptionalFunctionParameter::Replace(CYContext &context, CYBlock &code) {
CYFunctionParameter *parameter($ CYFunctionParameter(name_, next_));
parameter = parameter->Replace(context, code);
CYVariable *name($ CYVariable(name_));
code.AddPrev($ CYIf($ CYIdentical($ CYTypeOf(name), $S("undefined")), $$->*
CYVariable *name($ CYVariable(name_));
code.AddPrev($ CYIf($ CYIdentical($ CYTypeOf(name), $S("undefined")), $$->*