updated for function+function formals