22C:21 Project 1 Solution