exercise controller refactor