

'''simple docstring'''
from typing import TYPE_CHECKING

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


_UpperCAmelCase  :		int  =		{
    '''configuration_blip''': [
        '''BLIP_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''BlipConfig''',
        '''BlipTextConfig''',
        '''BlipVisionConfig''',
    ],
    '''processing_blip''': ['''BlipProcessor'''],
}

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


try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     _UpperCAmelCase  :		Optional[Any]  =		[
         '''BLIP_PRETRAINED_MODEL_ARCHIVE_LIST''',
         '''BlipModel''',
         '''BlipPreTrainedModel''',
         '''BlipForConditionalGeneration''',
         '''BlipForQuestionAnswering''',
         '''BlipVisionModel''',
         '''BlipTextModel''',
         '''BlipForImageTextRetrieval''',
     ]

try:
     if not is_tf_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     _UpperCAmelCase  :		Dict  =		[
         '''TF_BLIP_PRETRAINED_MODEL_ARCHIVE_LIST''',
         '''TFBlipModel''',
         '''TFBlipPreTrainedModel''',
         '''TFBlipForConditionalGeneration''',
         '''TFBlipForQuestionAnswering''',
         '''TFBlipVisionModel''',
         '''TFBlipTextModel''',
         '''TFBlipForImageTextRetrieval''',
     ]

if TYPE_CHECKING:
     from .configuration_blip import BLIP_PRETRAINED_CONFIG_ARCHIVE_MAP, BlipConfig, BlipTextConfig, BlipVisionConfig
     from .processing_blip import BlipProcessor

     try:
          if not is_vision_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .image_processing_blip import BlipImageProcessor

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_blip import (
              BLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
              BlipForConditionalGeneration,
              BlipForImageTextRetrieval,
              BlipForQuestionAnswering,
              BlipModel,
              BlipPreTrainedModel,
              BlipTextModel,
              BlipVisionModel,
          )

     try:
          if not is_tf_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_tf_blip import (
              TF_BLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
              TFBlipForConditionalGeneration,
              TFBlipForImageTextRetrieval,
              TFBlipForQuestionAnswering,
              TFBlipModel,
              TFBlipPreTrainedModel,
              TFBlipTextModel,
              TFBlipVisionModel,
          )

else:
     import sys

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





"""simple docstring"""







def  __SCREAMING_SNAKE_CASE		(			lowerCamelCase_:							int     ,		lowerCamelCase_:							int ):
						"""simple docstring"""






						return int((input_a, input_a).count(0 ) != 0 )

def  __SCREAMING_SNAKE_CASE		(			):
						"""simple docstring"""






						assert nand_gate(0     ,		0 ) == 1
						assert nand_gate(0     ,		1 ) == 1
						assert nand_gate(1     ,		0 ) == 1
						assert nand_gate(1     ,		1 ) == 0


if __name__ == "__main__":
			print(nand_gate(0, 0))
			print(nand_gate(0, 1))
			print(nand_gate(1, 0))
			print(nand_gate(1, 1))



