code: def guard_multi_verify(analysis):
      
      # Cannot multiverify if there is only one remaining verification
      remaining_verifications = analysis.getNumberOfRemainingVerifications()
      if remaining_verifications <= 1:
          return False
  
      # Cannot verify if the user submitted and self-verification is not allowed
      if was_submitted_by_current_user(analysis):
          if not analysis.isSelfVerificationEnabled():
              return False
  
      # Cannot verify if the user verified and multi verification is not allowed
      if was_verified_by_current_user(analysis):
          if not is_multi_verification_allowed(analysis):
              return False
  
      # Cannot verify if the user was last verifier and consecutive verification
      # by same user is not allowed
      if current_user_was_last_verifier(analysis):
          if not is_consecutive_multi_verification_allowed(analysis):
              return False
  
      # Cannot verify unless all dependencies are verified or can be verified
      for dependency in analysis.getDependencies():
          if not is_verified_or_verifiable(dependency):
              return False
      return True
docs: Return whether the transition "multi_verify" can be performed or not
      The transition multi_verify will only take place if multi-verification of
      results is enabled.