Protocol refactoring.