more changes and improvements