




'''simple docstring'''






from ..utils import DummyObject, requires_backends






class        lowercase_      (						metaclass=_SCREAMING_SNAKE_CASE							):
     A_											=			["torch", "torchsde"]





     def __init__(     self     :					Tuple     ,							*__lowerCamelCase     :					int     ,							**__lowerCamelCase     :					Optional[Any]			):
           requires_backends(self     ,							['torch', 'torchsde']			)





     @classmethod
     def 			_lowerCAmelCase      (     cls     :					Optional[int]     ,							*__lowerCamelCase     :					Union[str, Any]     ,							**__lowerCamelCase     :					int			):
           requires_backends(cls     ,							['torch', 'torchsde']			)





     @classmethod
     def 			_lowerCAmelCase      (     cls     :					List[str]     ,							*__lowerCamelCase     :					List[str]     ,							**__lowerCamelCase     :					Tuple			):
           requires_backends(cls     ,							['torch', 'torchsde']			)




'''simple docstring'''






def 							UpperCamelCase_     (       A__   :  bytes   ):
  '''simple docstring'''





  return "".join([hex(A__   )[2:].zfill(2   ).upper() for byte in list(A__   )]   )







def 							UpperCamelCase_     (       A__   :  str   ):
  '''simple docstring'''





  if (len(A__   ) % 2) != 0:
    raise ValueError(
        """Base16 encoded data is invalid:
Data does not have an even number of hex digits."""   )
  # Check the character set - the standard base16 alphabet
  # is uppercase according to RFC3548 section 6
  if not set(A__   ) <= set("""0123456789ABCDEF"""   ):
    raise ValueError(
        """Base16 encoded data is invalid:
Data is not uppercase hex or it contains invalid characters."""   )
  # For every two hexadecimal digits (= a byte), turn it into an integer.
  # Then, string the result together into bytes, and return it.
  return bytes(int(data[i] + data[i + 1]				,       16   ) for i in range(0				,       len(A__   )				,       2   )   )


if __name__ == "__main__":
  import doctest

  doctest.testmod()



