CS201: Theory of Computation (July -- Nov 2017)