refactoring :cat: