CS550 Homework 5