only slight, if any, speedup. reduce things in a more clever way