Add updated version of assignment 3