finish recfun-assignment