




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_speech_available,
    is_torch_available,
)


__UpperCamelCase					:       str    					=      {
    "configuration_trocr": ["TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP", "TrOCRConfig"],
    "processing_trocr": ["TrOCRProcessor"],
}


try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__UpperCamelCase					:       Any    					=      [
		    "TROCR_PRETRAINED_MODEL_ARCHIVE_LIST",
		    "TrOCRForCausalLM",
		    "TrOCRPreTrainedModel",
		]


if TYPE_CHECKING:
		from .configuration_trocr import TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP, TrOCRConfig
		from .processing_trocr import TrOCRProcessor

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_trocr import TROCR_PRETRAINED_MODEL_ARCHIVE_LIST, TrOCRForCausalLM, TrOCRPreTrainedModel

else:
		import sys

		__UpperCamelCase					:       List[str]    					=      _LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)







def 		__A		(	__lowerCamelCase    )      ->       int:
	a										=							hex_num.strip()
	if not hex_num:
		raise ValueError("""No value was passed to the function"""    )

	a										=							hex_num[0] == """-"""
	if is_negative:
		a										=							hex_num[1:]

	try:
		a										=							int(__lowerCamelCase							,			16    )
	except ValueError:
		raise ValueError("""Invalid value was passed to the function"""    )

	a										=							""""""
	while int_num > 0:
		a										=							str(int_num % 2    ) + bin_str
		int_num >>= 1

	return int(("""-""" + bin_str) if is_negative else bin_str    )


if __name__ == "__main__":
		import doctest

		doctest.testmod()

