


import inspect
import unittest





class  _a							(    unittest.TestCase):




	def 							UpperCAmelCase__( self						:		Union[str, Any]		)->	Optional[int]:
			try:
					import diffusers  # noqa: F401
			except ImportError:
					assert False




	def 							UpperCAmelCase__( self						:		Any		)->	Any:
			import diffusers
			from diffusers.dependency_versions_table import deps

			lowerCAmelCase__       :      List[str]   					= inspect.getmembers(_SCREAMING_SNAKE_CASE		, inspect.isclass		)

			for cls_name, cls_module in all_classes:
					if "dummy_" in cls_module.__module__:
							for backend in cls_module._backends:
									if backend == "k_diffusion":
											lowerCAmelCase__       :      Any   					= '''k-diffusion'''
									elif backend == "invisible_watermark":
											lowerCAmelCase__       :      Union[str, Any]   					= '''invisible-watermark'''
									assert backend in deps, F'{backend} is not in the deps table!'








from math import isqrt






def 					lowerCamelCase_   (	_a	):




		"""simple docstring"""






		lowerCAmelCase__       :      Dict   					= [True] * max_number
		for i in range(2     ,       isqrt(max_number - 1	) + 1	):
				if is_prime[i]:
						for j in range(i**2     ,       _a     ,       _a	):
								lowerCAmelCase__       :      int   					= False

		return [i for i in range(2     ,       _a	) if is_prime[i]]






def 					lowerCamelCase_   (	_a = 10**8	):




		"""simple docstring"""






		lowerCAmelCase__       :      Any   					= calculate_prime_numbers(max_number // 2	)

		lowerCAmelCase__       :      Tuple   					= 0
		lowerCAmelCase__       :      List[Any]   					= 0
		lowerCAmelCase__       :      Optional[int]   					= len(_a	) - 1
		while left <= right:
				while prime_numbers[left] * prime_numbers[right] >= max_number:
						right -= 1
				semiprimes_count += right - left + 1
				left += 1

		return semiprimes_count


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




