refactor cat domain