refactor to remove complexity