HSS310: Macroeconomic Theory and Dynamic Programming