lots of modifications added to the project