Upgraded midterm project.