mild refactor and rename