refactor, slim controller