


'''simple docstring'''
# Copyright 2023 The HuggingFace Team. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from typing import TYPE_CHECKING

# rely on isort to merge the imports
from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_torch_available,
)


__magic_name__   :   int  							={
    'configuration_convnextv2': [
        'CONVNEXTV2_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'ConvNextV2Config',
    ]
}

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						__magic_name__   :   Dict  							=[
						    'CONVNEXTV2_PRETRAINED_MODEL_ARCHIVE_LIST',
						    'ConvNextV2ForImageClassification',
						    'ConvNextV2Model',
						    'ConvNextV2PreTrainedModel',
						    'ConvNextV2Backbone',
						]


if TYPE_CHECKING:
						from .configuration_convnextva import (
						    CONVNEXTV2_PRETRAINED_CONFIG_ARCHIVE_MAP,
						    ConvNextVaConfig,
						)

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_convnextva import (
												    CONVNEXTV2_PRETRAINED_MODEL_ARCHIVE_LIST,
												    ConvNextVaBackbone,
												    ConvNextVaForImageClassification,
												    ConvNextVaModel,
												    ConvNextVaPreTrainedModel,
												)

else:
						import sys

						__magic_name__   :   Dict  							=_LazyModule(__name__, globals()['__file__'], _import_structure)







'''simple docstring'''
def      __snake_case       (       lowerCamelCase_ :				int						):
				'''simple docstring'''




				barcode //= 10  # exclude the last digit
				__magic_name__	  = False
				__magic_name__	  = 0

				# extract and check each digit
				while barcode != 0:
								__magic_name__	  = 1 if checker else 3
								s += mult * (barcode % 10)
								barcode //= 10
								__magic_name__	  = not checker

				return (10 - (s % 10)) % 10




def      __snake_case       (       lowerCamelCase_ :				int						):
				'''simple docstring'''




				return len(str(lowerCamelCase_						)						) == 13 and get_check_digit(lowerCamelCase_						) == barcode % 10




def      __snake_case       (       lowerCamelCase_ :				str						):
				'''simple docstring'''




				if str(lowerCamelCase_						).isalpha():
								__magic_name__	  = F'Barcode \'{barcode}\' has alphabetic characters.'
								raise ValueError(lowerCamelCase_						)
				elif int(lowerCamelCase_						) < 0:
								raise ValueError("The entered barcode has a negative value. Try again."						)
				else:
								return int(lowerCamelCase_						)


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						__magic_name__   :   Optional[int]  							=get_barcode(input('Barcode: ').strip())

						if is_valid(barcode):
												print(F'''\'{barcode}\' is a valid barcode.''')
						else:
												print(F'''\'{barcode}\' is NOT a valid barcode.''')



