/// Run our Schnorr VRF on one single input and an extra message 
/// transcript, producing the output and correspodning Schnorr proof.
/// You must extract the `VRFPreOut` from the `VRFInOut` returned.
///
/// There are schemes like Ouroboros Praos in which nodes evaluate
/// VRFs repeatedly until they win some contest.  In these case,
/// you should probably use `vrf_sign_after_check` to gain access to
/// the `VRFInOut` from `vrf_create_hash` first, and then avoid
/// computing the proof whenever you do not win. 
Run our Schnorr VRF on one single input and an extra message
transcript, producing the output and correspodning Schnorr proof.
You must extract the `VRFPreOut` from the `VRFInOut` returned.

There are schemes like Ouroboros Praos in which nodes evaluate
VRFs repeatedly until they win some contest.
Run our Schnorr VRF on one single input and an extra message transcript producing the output and correspodning Schnorr proof . You must extract the ` VRFPreOut ` from the ` VRFInOut ` returned . There are schemes like Ouroboros Praos in which nodes evaluate VRFs repeatedly until they win some contest .
pub fn vrf_sign_first<T,CW,PD>(&self, input: VRFInput, extra: T)
     -> (VRFInOut, VRFProof<VRFPreOut,CW,PD>, PD::Unblinding)
    where
        T: SigningTranscript,
        CW: NewChallengeOrWitness,
        PD: NewPedersenDeltaOrPublicKey,
    {
        let inout = input.to_inout(self);
        let (proof, pd) = self.dleq_proove(extra, &inout, rand_hack());
        (inout, proof, pd)
    }
pub fn vrf_sign_first < T , CW , PD > ( & self , input : VRFInput , extra : T ) -> ( VRFInOut , VRFProof < VRFPreOut , CW , PD > , PD :: Unblinding ) where T : SigningTranscript , CW : NewChallengeOrWitness , PD : NewPedersenDeltaOrPublicKey , { let inout = input . to_inout ( self ) ; let ( proof , pd ) = self . dleq_proove ( extra , & inout , rand_hack ( ) ) ; ( inout , proof , pd ) }
Run our Schnorr VRF on one single input and an extra message
transcript, producing the output and correspodning Schnorr proof.
Run our Schnorr VRF on one single input and an extra message transcript producing the output and correspodning Schnorr proof .
&self
input
VRFInput
extra
T