upfuncs working