refactoring and unique project list function added