CS107 Asssignment #4