added refactor ideas