finalized project for the most part