



"""simple docstring"""






from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tokenizers_available, is_torch_available


_lowercase					:					Optional[Any] 		=		{
    "configuration_markuplm": ["MARKUPLM_PRETRAINED_CONFIG_ARCHIVE_MAP", "MarkupLMConfig"],
    "feature_extraction_markuplm": ["MarkupLMFeatureExtractor"],
    "processing_markuplm": ["MarkupLMProcessor"],
    "tokenization_markuplm": ["MarkupLMTokenizer"],
}

try:
		if not is_tokenizers_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_lowercase					:					int 		=		["MarkupLMTokenizerFast"]

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_lowercase					:					Any 		=		[
		    "MARKUPLM_PRETRAINED_MODEL_ARCHIVE_LIST",
		    "MarkupLMForQuestionAnswering",
		    "MarkupLMForSequenceClassification",
		    "MarkupLMForTokenClassification",
		    "MarkupLMModel",
		    "MarkupLMPreTrainedModel",
		]


if TYPE_CHECKING:
		from .configuration_markuplm import MARKUPLM_PRETRAINED_CONFIG_ARCHIVE_MAP, MarkupLMConfig
		from .feature_extraction_markuplm import MarkupLMFeatureExtractor
		from .processing_markuplm import MarkupLMProcessor
		from .tokenization_markuplm import MarkupLMTokenizer

		try:
				if not is_tokenizers_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_markuplm_fast import MarkupLMTokenizerFast

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_markuplm import (
				    MARKUPLM_PRETRAINED_MODEL_ARCHIVE_LIST,
				    MarkupLMForQuestionAnswering,
				    MarkupLMForSequenceClassification,
				    MarkupLMForTokenClassification,
				    MarkupLMModel,
				    MarkupLMPreTrainedModel,
				)


else:
		import sys

		_lowercase					:					Tuple 		=		_LazyModule(__name__, globals()["__file__"], _import_structure)









"""simple docstring"""
def   A_    (     _lowercase,   _lowercase,   _lowercase,   _lowercase      ):







						'''simple docstring'''


						snake_case_					:Dict		=     int((lower_bound + upper_bound) // 2      )
						if array[r] == value:
												return r
						if lower_bound >= upper_bound:
												return -1
						if array[r] < value:
												return binary_search(_lowercase,   r + 1,   _lowercase,   _lowercase      )
						else:
												return binary_search(_lowercase,   _lowercase,   r - 1,   _lowercase      )
def   A_    (     _lowercase,   _lowercase      ):







						'''simple docstring'''


						snake_case_					:Any		=     0
						if matrix[index][0] == value:
												return [index, 0]
						while index < len(_lowercase      ) and matrix[index][0] < value:
												snake_case_					:List[str]		=     binary_search(matrix[index],   0,   len(matrix[index]      ) - 1,   _lowercase      )
												if r != -1:
																		return [index, r]
												index += 1
						return [-1, -1]


if __name__ == "__main__":
						import doctest

						doctest.testmod()
