Assignment 3 for cmput410