ParamFunc refactoring