Refactoring register captain