

def 		UpperCamelCase      (lowercase_:				Dict      )  ->   str:
	return "".join([hex(lowercase_      )[2:].zfill(2      ).upper() for byte in list(lowercase_      )]      )

def 		UpperCamelCase      (lowercase_:				str      )  ->   bytes:

	if (len(lowercase_      ) % 2) != 0:
		raise ValueError(
		    """Base16 encoded data is invalid:\nData 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(lowercase_      ) <= set("""0123456789ABCDEF"""      ):
		raise ValueError(
		    """Base16 encoded data is invalid:\nData 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(lowercase_      )					,   2      )      )


if __name__ == "__main__":
		import doctest

		doctest.testmod()






from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_sentencepiece_available


A_ :				Optional[Any]						 =    {}

try:
	if not is_sentencepiece_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	A_ :				str						 =    ['BartphoTokenizer']

if TYPE_CHECKING:
	try:
		if not is_sentencepiece_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .tokenization_bartpho import BartphoTokenizer

else:
	import sys

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



