made some progess, only getting four cases wrong