refactored animal controllers