Implementation 2: Final project