"""simple docstring"""

__lowercase    =				{
    '''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    lowerCAmelCase			(__UpperCamelCase							:    str			):
							"""simple docstring"""


							__UpperCamelCase							=str(__UpperCamelCase			).strip()

							# Exceptions
							if not binary_str:
														raise ValueError('''Empty string was passed to the function'''			)
							__UpperCamelCase							=binary_str[0] == '''-'''
							__UpperCamelCase							=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'''			)

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

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

							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_torch_available, is_vision_available


__lowercase    =				{
    '''configuration_videomae''': ['''VIDEOMAE_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''VideoMAEConfig'''],
}

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				__lowercase    =				[
				    '''VIDEOMAE_PRETRAINED_MODEL_ARCHIVE_LIST''',
				    '''VideoMAEForPreTraining''',
				    '''VideoMAEModel''',
				    '''VideoMAEPreTrainedModel''',
				    '''VideoMAEForVideoClassification''',
				]

try:
				if not is_vision_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				__lowercase    =				['''VideoMAEFeatureExtractor''']
				__lowercase    =				['''VideoMAEImageProcessor''']

if TYPE_CHECKING:
				from .configuration_videomae import VIDEOMAE_PRETRAINED_CONFIG_ARCHIVE_MAP, VideoMAEConfig

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_videomae import (
								    VIDEOMAE_PRETRAINED_MODEL_ARCHIVE_LIST,
								    VideoMAEForPreTraining,
								    VideoMAEForVideoClassification,
								    VideoMAEModel,
								    VideoMAEPreTrainedModel,
								)

				try:
								if not is_vision_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .feature_extraction_videomae import VideoMAEFeatureExtractor
								from .image_processing_videomae import VideoMAEImageProcessor

else:
				import sys

				__lowercase    =				_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)



