cs6601-assignment4