



from dataclasses import dataclass
from typing import List, Optional, Union

import numpy as np
import PIL

from ...utils import BaseOutput, OptionalDependencyNotAvailable, is_torch_available, is_transformers_available
from .timesteps import (
    fastaa_timesteps,
    smartaa_timesteps,
    smartaa_timesteps,
    smartaaa_timesteps,
    smartaaa_timesteps,
    superaa_timesteps,
    superaa_timesteps,
    superaaa_timesteps,
)

@dataclass
class        UpperCAmelCase_  (       UpperCamelCase_	):

						'''simple docstring'''




						UpperCamelCase__      :			Union[List[PIL.Image.Image], np.ndarray]
						UpperCamelCase__      :			Optional[List[bool]]
						UpperCamelCase__      :			Optional[List[bool]]


try:
			if not (is_transformers_available() and is_torch_available()):
						raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
			from ...utils.dummy_torch_and_transformers_objects import *  # noqa F403
else:
			from .pipeline_if import IFPipeline
			from .pipeline_if_imgaimg import IFImgaImgPipeline
			from .pipeline_if_imgaimg_superresolution import IFImgaImgSuperResolutionPipeline
			from .pipeline_if_inpainting import IFInpaintingPipeline
			from .pipeline_if_inpainting_superresolution import IFInpaintingSuperResolutionPipeline
			from .pipeline_if_superresolution import IFSuperResolutionPipeline
			from .safety_checker import IFSafetyChecker
			from .watermark import IFWatermarker











from __future__ import annotations

from collections.abc import Generator






def      __lowercase       (			)    ->			Generator[int, None, None]:
							__SCREAMING_SNAKE_CASE									= {}
							__SCREAMING_SNAKE_CASE									= 2
							while True:
														__SCREAMING_SNAKE_CASE									= factor_map.pop(a__							,       a__       )
														if factor:
																					__SCREAMING_SNAKE_CASE									= factor + prime
																					while x in factor_map:
																												x += factor
																					__SCREAMING_SNAKE_CASE									= factor
														else:
																					__SCREAMING_SNAKE_CASE									= prime
																					yield prime
														prime += 1






def      __lowercase       (			a__ = 1E10       )    ->			int:
							__SCREAMING_SNAKE_CASE									= sieve()

							__SCREAMING_SNAKE_CASE									= 1
							while True:
														__SCREAMING_SNAKE_CASE									= next(a__       )
														if (2 * prime * n) > limit:
																					return n
														# Ignore the next prime as the reminder will be 2.
														next(a__       )
														n += 2


if __name__ == "__main__":
			print(solution())






