For CSCI 3511 Assignment 3 and 4