code: def has_role(self, identifiers, role_s, log_results=True):
          
          self.assert_realms_configured()
  
          results = collections.defaultdict(bool)  # defaults to False
  
          for role, has_role in self._has_role(identifiers, role_s):
              # checkrole expected format is: (role, Boolean)
              # As long as one realm returns True for a role, a subject is
              # considered a member of that Role.
              # Given that (True or False == True), assign accordingly:
              results[role] = results[role] or has_role
  
          if log_results:
              self.notify_event(identifiers,
                                list(results.items()),
                                'AUTHORIZATION.RESULTS')  # before freezing
          results = set(results.items())
          return results
docs: :param identifiers: a collection of identifiers
          :type identifiers:  subject_abcs.IdentifierCollection
  
          :param role_s: a collection of 1..N Role identifiers
          :type role_s: Set of String(s)
  
          :param log_results:  states whether to log results (True) or allow the
                               calling method to do so instead (False)
          :type log_results:  bool
  
          :returns: a set of tuple(s), containing the role and a Boolean
                    indicating whether the user is a member of the Role