minor refactoring, statements converted to protected virtual methods in base controllers