refactor leftover 2