CS193p assignment 1