pub fn random<T>(rand: &mut T) -> Fr
    where
        T: RngCore + CryptoRng,
    {
        let mut bytes = [0u8; 64];
        rand.fill_bytes(&mut bytes);

        Fr::from_bytes_wide(&bytes)
    }
/// Generate a valid Scalar choosen uniformly using user-
/// provided rng.
///
/// By `rng` we mean any Rng that implements: `Rng` + `CryptoRng`.
Generate a valid Scalar choosen uniformly using user
provided rng.


Generate a valid Scalar choosen uniformly using user provided rng .
pub fn random<T>(rand: &mut T) -> Fr
    where
        T: RngCore + CryptoRng,
    {
        let mut bytes = [0u8; 64];
        rand.fill_bytes(&mut bytes);
        Fr::from_bytes_wide(&bytes)
    }
pub fn random < T > ( rand : & mut T ) -> Fr where T : RngCore + CryptoRng , { let mut bytes = [ 0u8 ; 64 ] ; rand . fill_bytes ( & mut bytes ) ; Fr :: from_bytes_wide ( & bytes ) }
Generate a valid Scalar choosen uniformly using user
provided rng.
Generate a valid Scalar choosen uniformly using user provided rng .
rand
&mut T