ECSE 415 Assignment 3