attempt at separating out the controllers failed :(