A final project for CS50