CS50 assignment