
"""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

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_torch_available,
    is_vision_available,
)


__lowerCAmelCase							:  List[str] 				=		{
    '''configuration_tvlt''': ['''TVLT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''TvltConfig'''],
    '''feature_extraction_tvlt''': ['''TvltFeatureExtractor'''],
    '''processing_tvlt''': ['''TvltProcessor'''],
}

try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					__lowerCAmelCase							:  int 				=		[
					    '''TVLT_PRETRAINED_MODEL_ARCHIVE_LIST''',
					    '''TvltModel''',
					    '''TvltForPreTraining''',
					    '''TvltForAudioVisualClassification''',
					    '''TvltPreTrainedModel''',
					]

try:
					if not is_vision_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					__lowerCAmelCase							:  int 				=		['''TvltImageProcessor''']


if TYPE_CHECKING:
					from .configuration_tvlt import TVLT_PRETRAINED_CONFIG_ARCHIVE_MAP, TvltConfig
					from .processing_tvlt import TvltProcessor
					from .feature_extraction_tvlt import TvltFeatureExtractor

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_tvlt import (
										    TVLT_PRETRAINED_MODEL_ARCHIVE_LIST,
										    TvltForAudioVisualClassification,
										    TvltForPreTraining,
										    TvltModel,
										    TvltPreTrainedModel,
										)

					try:
										if not is_vision_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .image_processing_tvlt import TvltImageProcessor


else:
					import sys

					__lowerCAmelCase							:  List[Any] 				=		_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)






"""simple docstring"""




def __snake_case (      UpperCamelCase    )       ->    float:


		"""simple docstring"""





		return -num if num < 0 else num

def __snake_case (      UpperCamelCase    )       ->    int:


		"""simple docstring"""





		if len(UpperCamelCase    ) == 0:
				raise ValueError('''abs_min() arg is an empty sequence'''    )
		a__   		=     x[0]
		for i in x:
				if abs_val(UpperCamelCase    ) < abs_val(UpperCamelCase    ):
						a__   		=     i
		return j

def __snake_case (      UpperCamelCase    )       ->    int:


		"""simple docstring"""





		if len(UpperCamelCase    ) == 0:
				raise ValueError('''abs_max() arg is an empty sequence'''    )
		a__   		=     x[0]
		for i in x:
				if abs(UpperCamelCase    ) > abs(UpperCamelCase    ):
						a__   		=     i
		return j

def __snake_case (      UpperCamelCase    )       ->    int:


		"""simple docstring"""





		if len(UpperCamelCase    ) == 0:
				raise ValueError('''abs_max_sort() arg is an empty sequence'''    )
		return sorted(UpperCamelCase						,					key=UpperCamelCase    )[-1]

def __snake_case (      )       ->    Optional[int]:


		"""simple docstring"""





		assert abs_val(0    ) == 0
		assert abs_val(34    ) == 34
		assert abs_val(-100_000_000_000    ) == 100_000_000_000

		a__   		=     [-3, -1, 2, -11]
		assert abs_max(UpperCamelCase    ) == -11
		assert abs_max_sort(UpperCamelCase    ) == -11
		assert abs_min(UpperCamelCase    ) == -1


if __name__ == "__main__":
					import doctest

					doctest.testmod()

					test_abs_val()
					print(abs_val(-34))  # --> 34




