cogs121 assignment 1