possible to make these more functional by returning?