





from typing import TYPE_CHECKING

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


lowercase    : List[Any]    	=  {
    """configuration_poolformer""": [
        """POOLFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP""",
        """PoolFormerConfig""",
        """PoolFormerOnnxConfig""",
    ]
}

try:
       if not is_vision_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowercase    : int    	=  ["""PoolFormerFeatureExtractor"""]
       lowercase    : int    	=  ["""PoolFormerImageProcessor"""]

try:
       if not is_torch_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowercase    : Optional[Any]    	=  [
           """POOLFORMER_PRETRAINED_MODEL_ARCHIVE_LIST""",
           """PoolFormerForImageClassification""",
           """PoolFormerModel""",
           """PoolFormerPreTrainedModel""",
       ]


if TYPE_CHECKING:
       from .configuration_poolformer import (
           POOLFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP,
           PoolFormerConfig,
           PoolFormerOnnxConfig,
       )

       try:
              if not is_vision_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .feature_extraction_poolformer import PoolFormerFeatureExtractor
              from .image_processing_poolformer import PoolFormerImageProcessor

       try:
              if not is_torch_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .modeling_poolformer import (
                  POOLFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
                  PoolFormerForImageClassification,
                  PoolFormerModel,
                  PoolFormerPreTrainedModel,
              )


else:
       import sys

       lowercase    : int    	=  _LazyModule(__name__, globals()["""__file__"""], _import_structure)













def     SCREAMING_SNAKE_CASE			(      lowerCAmelCase    ,       lowerCAmelCase    ,       lowerCAmelCase = 0    ,       lowerCAmelCase = 0					):
       _UpperCamelCase              =						right or len(lowerCAmelCase					) - 1
       if left > right:
              return -1
       elif list_data[left] == key:
              return left
       elif list_data[right] == key:
              return right
       else:
              return search(lowerCAmelCase    ,       lowerCAmelCase    ,       left + 1    ,       right - 1					)


if __name__ == "__main__":
       import doctest

       doctest.testmod()






