new interface and improvements