many a refactor