before harbor refactor