'''simple docstring'''






_UpperCAmelCase						:    Tuple     					=					{
    '''0000''': '''0''',
    '''0001''': '''1''',
    '''0010''': '''2''',
    '''0011''': '''3''',
    '''0100''': '''4''',
    '''0101''': '''5''',
    '''0110''': '''6''',
    '''0111''': '''7''',
    '''1000''': '''8''',
    '''1001''': '''9''',
    '''1010''': '''a''',
    '''1011''': '''b''',
    '''1100''': '''c''',
    '''1101''': '''d''',
    '''1110''': '''e''',
    '''1111''': '''f''',
}





def    _SCREAMING_SNAKE_CASE		(			__snake_case       : str							):
     _A								=     str(__snake_case							).strip()

     # Exceptions
     if not binary_str:
          raise ValueError('Empty string was passed to the function'							)
     _A								=     binary_str[0] == '-'
     _A								=     binary_str[1:] if is_negative else binary_str
     if not all(char in '01' for char in binary_str							):
          raise ValueError('Non-binary value was passed to the function'							)

     _A								=     (
         '0' * (4 * (divmod(len(__snake_case							)      ,		4							)[0] + 1) - len(__snake_case							)) + binary_str
     )

     _A								=     []
     for x in range(0      ,		len(__snake_case							)      ,		4							):
          hexadecimal.append(BITS_TO_HEX[binary_str[x : x + 4]]							)
     _A								=     '0x' + ''.join(__snake_case							)

     return "-" + hexadecimal_str if is_negative else hexadecimal_str


if __name__ == "__main__":
   from doctest import testmod

   testmod()




'''simple docstring'''






from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_torch_available,
)


_UpperCAmelCase						:    Optional[Any]     					=					{
    '''configuration_unispeech_sat''': ['''UNISPEECH_SAT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''UniSpeechSatConfig'''],
}

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _UpperCAmelCase						:    Dict     					=					[
       '''UNISPEECH_SAT_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''UniSpeechSatForAudioFrameClassification''',
       '''UniSpeechSatForCTC''',
       '''UniSpeechSatForPreTraining''',
       '''UniSpeechSatForSequenceClassification''',
       '''UniSpeechSatForXVector''',
       '''UniSpeechSatModel''',
       '''UniSpeechSatPreTrainedModel''',
   ]

if TYPE_CHECKING:
   from .configuration_unispeech_sat import UNISPEECH_SAT_PRETRAINED_CONFIG_ARCHIVE_MAP, UniSpeechSatConfig

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_unispeech_sat import (
          UNISPEECH_SAT_PRETRAINED_MODEL_ARCHIVE_LIST,
          UniSpeechSatForAudioFrameClassification,
          UniSpeechSatForCTC,
          UniSpeechSatForPreTraining,
          UniSpeechSatForSequenceClassification,
          UniSpeechSatForXVector,
          UniSpeechSatModel,
          UniSpeechSatPreTrainedModel,
      )

else:
   import sys

   _UpperCAmelCase						:    int     					=					_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)



