many interface improvements