code: def verify(self, token, verifying_key_or_keys, num_required=None):
          
          if not isinstance(verifying_key_or_keys, (list, str, unicode)):
              raise ValueError("Invalid verifying key(s): expected list or string")
  
          if isinstance(verifying_key_or_keys, list):
              return self._verify_multi(token, verifying_key_or_keys, num_required=num_required)
  
          else:
              return self._verify_single(token, str(verifying_key_or_keys))
docs: Verify a compact-formated JWT or a JSON-formatted JWT signed by multiple keys.
          Return True if valid
          Return False if not valid
  
          TODO: support multiple types of keys