CP310 homework