CS550 Homework 3