paramfunc optimization