Dry moderate refactor