Refactoring captain register