a few updates and improvements