

'''simple docstring'''


from typing import TYPE_CHECKING

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


lowerCAmelCase__      				=			{
    "configuration_swin2sr": ["SWIN2SR_PRETRAINED_CONFIG_ARCHIVE_MAP", "Swin2SRConfig"],
}


try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCAmelCase__      				=			[
						    "SWIN2SR_PRETRAINED_MODEL_ARCHIVE_LIST",
						    "Swin2SRForImageSuperResolution",
						    "Swin2SRModel",
						    "Swin2SRPreTrainedModel",
						]


try:
						if not is_vision_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCAmelCase__      				=			["Swin2SRImageProcessor"]


if TYPE_CHECKING:
						from .configuration_swinasr import SWIN2SR_PRETRAINED_CONFIG_ARCHIVE_MAP, SwinaSRConfig

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_swinasr import (
												    SWIN2SR_PRETRAINED_MODEL_ARCHIVE_LIST,
												    SwinaSRForImageSuperResolution,
												    SwinaSRModel,
												    SwinaSRPreTrainedModel,
												)

						try:
												if not is_vision_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .image_processing_swinasr import SwinaSRImageProcessor


else:
						import sys

						lowerCAmelCase__      				=			_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)











import math
from decimal import Decimal, getcontext

def       A_   (						__a  :					int = 4_000_000		):

				"""simple docstring"""

				try:
								a__					   =		int(__a		)
				except (TypeError, ValueError):
								raise TypeError("""Parameter n must be int or castable to int."""		)
				if n <= 0:
								raise ValueError("""Parameter n must be greater than or equal to one."""		)
				a__					   =		100
				a__					   =		(Decimal(5		) ** Decimal(0.5		) + 1) / Decimal(2		)

				a__					   =		(math.floor(math.log(n * (phi + 2)			,		__a		) - 1		) // 3) * 3 + 2
				a__					   =		Decimal(round(phi ** Decimal(index + 1		)		)		) / (phi + 2)
				a__					   =		num // 2
				return int(__a		)


if __name__ == "__main__":
	print(f"""{solution() = }""")

