refactor idea project