

from itertools import compress, repeat
from math import ceil, sqrt


def   __SCREAMING_SNAKE_CASE (SCREAMING_SNAKE_CASE__	):

						if num <= 2:
												return []
						if num == 3:
												return [2]

						# Odd sieve for numbers in range [3, num - 1]
						snake_case_       =     bytearray(b'''\x01'''	) * ((num >> 1) - 1)

						for i in range(3  ,		int(sqrt(SCREAMING_SNAKE_CASE__	)	) + 1  ,		2	):
												if sieve[(i >> 1) - 1]:
																		snake_case_       =     i**2
																		snake_case_       =     repeat(
																		    0  ,		ceil((num - i_squared) / (i << 1)	)	)

						return [2] + list(compress(range(3  ,		SCREAMING_SNAKE_CASE__  ,		2	)  ,		SCREAMING_SNAKE_CASE__	)	)


if __name__ == "__main__":
					import doctest

					doctest.testmod()


def   __SCREAMING_SNAKE_CASE (SCREAMING_SNAKE_CASE__	):
						snake_case_       =     5381
						for x in s:
												snake_case_       =     ((hash_value << 5) + hash_value) + ord(SCREAMING_SNAKE_CASE__	)
						return hash_value & 0xFF_FF_FF_FF