refactor logic to its own object