Factor of three speed improvement - mostly from fixed rng