from ..utils import DummyObject, requires_backends

class 						_SCREAMING_SNAKE_CASE				(  metaclass=_lowercase				):






		"""simple docstring"""







		A_    			=   ['''torch''', '''librosa''']



		def __init__(      self     :					Dict	,       *__SCREAMING_SNAKE_CASE     :					Tuple	,       **__SCREAMING_SNAKE_CASE     :					int ):






					"""simple docstring"""
					requires_backends(self	,       ["torch", "librosa"] )



		@classmethod
		def 					_a					(      cls     :					List[Any]	,       *__SCREAMING_SNAKE_CASE     :					Optional[int]	,       **__SCREAMING_SNAKE_CASE     :					List[str] ):






					"""simple docstring"""
					requires_backends(cls	,       ["torch", "librosa"] )







		@classmethod
		def 					_a					(      cls     :					List[str]	,       *__SCREAMING_SNAKE_CASE     :					Any	,       **__SCREAMING_SNAKE_CASE     :					int ):






					"""simple docstring"""
					requires_backends(cls	,       ["torch", "librosa"] )

class 						_SCREAMING_SNAKE_CASE				(  metaclass=_lowercase				):






		"""simple docstring"""







		A_    			=   ['''torch''', '''librosa''']



		def __init__(      self     :					List[str]	,       *__SCREAMING_SNAKE_CASE     :					Dict	,       **__SCREAMING_SNAKE_CASE     :					Optional[Any] ):






					"""simple docstring"""
					requires_backends(self	,       ["torch", "librosa"] )



		@classmethod
		def 					_a					(      cls     :					Optional[Any]	,       *__SCREAMING_SNAKE_CASE     :					int	,       **__SCREAMING_SNAKE_CASE     :					Optional[int] ):






					"""simple docstring"""
					requires_backends(cls	,       ["torch", "librosa"] )







		@classmethod
		def 					_a					(      cls     :					Optional[int]	,       *__SCREAMING_SNAKE_CASE     :					List[Any]	,       **__SCREAMING_SNAKE_CASE     :					Optional[Any] ):






					"""simple docstring"""
					requires_backends(cls	,       ["torch", "librosa"] )


from typing import TYPE_CHECKING

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


_SCREAMING_SNAKE_CASE:    Optional[Any]     						=							{
    '''configuration_sam''': [
        '''SAM_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''SamConfig''',
        '''SamMaskDecoderConfig''',
        '''SamPromptEncoderConfig''',
        '''SamVisionConfig''',
    ],
    '''processing_sam''': ['''SamProcessor'''],
}


try:
			if not is_torch_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_SCREAMING_SNAKE_CASE:    Dict     						=							[
			    '''SAM_PRETRAINED_MODEL_ARCHIVE_LIST''',
			    '''SamModel''',
			    '''SamPreTrainedModel''',
			]
try:
			if not is_tf_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_SCREAMING_SNAKE_CASE:    Optional[Any]     						=							[
			    '''TF_SAM_PRETRAINED_MODEL_ARCHIVE_LIST''',
			    '''TFSamModel''',
			    '''TFSamPreTrainedModel''',
			]
try:
			if not is_vision_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			_SCREAMING_SNAKE_CASE:    List[Any]     						=							['''SamImageProcessor''']


if TYPE_CHECKING:
			from .configuration_sam import (
			    SAM_PRETRAINED_CONFIG_ARCHIVE_MAP,
			    SamConfig,
			    SamMaskDecoderConfig,
			    SamPromptEncoderConfig,
			    SamVisionConfig,
			)
			from .processing_sam import SamProcessor

			try:
						if not is_torch_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .modeling_sam import SAM_PRETRAINED_MODEL_ARCHIVE_LIST, SamModel, SamPreTrainedModel

			try:
						if not is_tf_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .modeling_tf_sam import TF_SAM_PRETRAINED_MODEL_ARCHIVE_LIST, TFSamModel, TFSamPreTrainedModel

			try:
						if not is_vision_available():
									raise OptionalDependencyNotAvailable()
			except OptionalDependencyNotAvailable:
						pass
			else:
						from .image_processing_sam import SamImageProcessor

else:
			import sys

			_SCREAMING_SNAKE_CASE:    Union[str, Any]     						=							_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)

