First commit of assignment solution.