CS478 Homework