






from typing import TYPE_CHECKING

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


lowerCamelCase       :       List[str]        =				{
    '''configuration_canine''': ['''CANINE_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''CanineConfig'''],
    '''tokenization_canine''': ['''CanineTokenizer'''],
}

try:
	if not is_torch_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	lowerCamelCase       :       int        =				[
	    '''CANINE_PRETRAINED_MODEL_ARCHIVE_LIST''',
	    '''CanineForMultipleChoice''',
	    '''CanineForQuestionAnswering''',
	    '''CanineForSequenceClassification''',
	    '''CanineForTokenClassification''',
	    '''CanineLayer''',
	    '''CanineModel''',
	    '''CaninePreTrainedModel''',
	    '''load_tf_weights_in_canine''',
	]


if TYPE_CHECKING:
	from .configuration_canine import CANINE_PRETRAINED_CONFIG_ARCHIVE_MAP, CanineConfig
	from .tokenization_canine import CanineTokenizer

	try:
		if not is_torch_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_canine import (
		    CANINE_PRETRAINED_MODEL_ARCHIVE_LIST,
		    CanineForMultipleChoice,
		    CanineForQuestionAnswering,
		    CanineForSequenceClassification,
		    CanineForTokenClassification,
		    CanineLayer,
		    CanineModel,
		    CaninePreTrainedModel,
		    load_tf_weights_in_canine,
		)


else:
	import sys

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







from itertools import permutations
def 					snake_case_						(   lowerCAmelCase_				:  tuple					):
							if num[3] % 2 != 0:
														return False

							if (num[2] + num[3] + num[4]) % 3 != 0:
														return False

							if num[5] % 5 != 0:
														return False

							__lowercase					:							Dict			=   [7, 11, 13, 17]
							for i, test in enumerate(lowerCAmelCase_					):
														if (num[i + 4] * 100 + num[i + 5] * 10 + num[i + 6]) % test != 0:
																					return False
							return True
def 					snake_case_						(   lowerCAmelCase_				:  int = 10					):
							return sum(
							    int("""""".join(map(lowerCAmelCase_				,				lowerCAmelCase_					)					)					)
							    for num in permutations(range(lowerCAmelCase_					)					)
							    if is_substring_divisible(lowerCAmelCase_					)					)


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