




"""simple docstring"""






from typing import TYPE_CHECKING

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


lowercase__     						=						{
    """configuration_poolformer""": [
        """POOLFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP""",
        """PoolFormerConfig""",
        """PoolFormerOnnxConfig""",
    ]
}

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

try:
			if not is_torch_available():
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			pass
else:
			lowercase__     						=						[
			    """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__     						=						_LazyModule(__name__, globals()["""__file__"""], _import_structure)





"""simple docstring"""






import math







def      _snake_case			(				lowercase__		):
				return math.sqrt(lowercase__		) * math.sqrt(lowercase__		) == num







def      _snake_case			(				lowercase__		):
				_lowerCamelCase     :			Optional[int]    =    0
				_lowerCamelCase     :			List[Any]    =    n
				while left <= right:
								_lowerCamelCase     :			str    =    (left + right) // 2
								if mid**2 == n:
												return True
								elif mid**2 > n:
												_lowerCamelCase     :			str    =    mid - 1
								else:
												_lowerCamelCase     :			Optional[int]    =    mid + 1
				return False


if __name__ == "__main__":
			import doctest

			doctest.testmod()