rng combinators