Improved func_train