Fixes and improvements.