Refactoring PreController