Assignment 1 to 3 on CS193P