Code for the Coursera course CS184