/**
  * @param string $identityId
  * @param string $verificationNonce
  * @return UnverifiedSecondFactor|null
  */
 public function findUnverifiedByVerificationNonce($identityId, $verificationNonce)
 {
     $secondFactors = $this->secondFactors->searchUnverified((new UnverifiedSecondFactorSearchQuery())->setIdentityId($identityId)->setVerificationNonce($verificationNonce));
     $elements = $secondFactors->getElements();
     switch (count($elements)) {
         case 0:
             return null;
         case 1:
             return reset($elements);
         default:
             throw new \LogicException('There cannot be more than one unverified second factor with the same nonce');
     }
 }