

from typing import TYPE_CHECKING

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


lowerCAmelCase__	   = {
    """configuration_vision_text_dual_encoder""": ["""VisionTextDualEncoderConfig"""],
    """processing_vision_text_dual_encoder""": ["""VisionTextDualEncoderProcessor"""],
}


try:
	if not is_torch_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	lowerCAmelCase__	   = ["""VisionTextDualEncoderModel"""]


try:
	if not is_flax_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	lowerCAmelCase__	   = ["""FlaxVisionTextDualEncoderModel"""]

try:
	if not is_tf_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	lowerCAmelCase__	   = ["""TFVisionTextDualEncoderModel"""]


if TYPE_CHECKING:
	from .configuration_vision_text_dual_encoder import VisionTextDualEncoderConfig
	from .processing_vision_text_dual_encoder import VisionTextDualEncoderProcessor

	try:
		if not is_torch_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_vision_text_dual_encoder import VisionTextDualEncoderModel

	try:
		if not is_flax_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_flax_vision_text_dual_encoder import FlaxVisionTextDualEncoderModel

	try:
		if not is_tf_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_tf_vision_text_dual_encoder import TFVisionTextDualEncoderModel


else:
	import sys

	lowerCAmelCase__	   = _LazyModule(__name__, globals()["""__file__"""], _import_structure)




def 					lowerCAmelCase__							(	SCREAMING_SNAKE_CASE_:							int      )			->      int:




				'''simple docstring'''





				if divisor % 5 == 0 or divisor % 2 == 0:
								return 0
				A__        =			1
				A__        =			1
				while repunit:
								A__        =			(1_0 * repunit + 1) % divisor
								repunit_index += 1
				return repunit_index



def 					lowerCAmelCase__							(	SCREAMING_SNAKE_CASE_:							int = 1_0_0_0_0_0_0      )			->      int:




				'''simple docstring'''





				A__        =			limit - 1
				if divisor % 2 == 0:
								divisor += 1
				while least_divisible_repunit(SCREAMING_SNAKE_CASE_      ) <= limit:
								divisor += 2
				return divisor


if __name__ == "__main__":
	print(f"""{solution() = }""")

