temporary implementation of controllers. needs review