more speed improvements