Many changes and improvements!