speed improvements etc