Final Project for OOP