






"""simple docstring"""
from math import isqrt

def        snake_case   (     A__		):
			UpperCAmelCase_  :				Optional[Any]      =      [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__		):
												UpperCAmelCase_  :				Union[str, Any]      =      False

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

def        snake_case   (     A__ = 10**8		):
			UpperCAmelCase_  :				int      =      calculate_prime_numbers(max_number // 2		)

			UpperCAmelCase_  :				List[Any]      =      0
			UpperCAmelCase_  :				Any      =      0
			UpperCAmelCase_  :				List[str]      =      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() = }')











"""simple docstring"""
from ..utils import DummyObject, requires_backends







class     UpperCamelCase_ (metaclass=__A  ):
	__magic_name__			   =       ['''onnx''']





	def __init__(   self      :				List[Any]			,			*lowerCAmelCase_      :				Dict			,			**lowerCAmelCase_      :				Dict		)		->    Dict:
				requires_backends(self			,			["onnx"]		)





	@classmethod
	def   _SCREAMING_SNAKE_CASE   (   cls      :				Optional[Any]			,			*lowerCAmelCase_      :				Dict			,			**lowerCAmelCase_      :				Union[str, Any]		)		->    int:
				requires_backends(cls			,			["onnx"]		)





	@classmethod
	def   _SCREAMING_SNAKE_CASE   (   cls      :				str			,			*lowerCAmelCase_      :				Optional[Any]			,			**lowerCAmelCase_      :				str		)		->    Optional[Any]:
				requires_backends(cls			,			["onnx"]		)



