



"""simple docstring"""




import math
from collections.abc import Iterator
from itertools import takewhile

def 						__snake_case						(				SCREAMING_SNAKE_CASE__     :						int    )  ->       bool:





     '''simple docstring'''

     if 1 < number < 4:
          # 2 and 3 are primes
          return True
     elif number < 2 or number % 2 == 0 or number % 3 == 0:
          # Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
          return False

     # All primes number are in format of 6k +/- 1
     for i in range(5						,  int(math.sqrt(SCREAMING_SNAKE_CASE__    ) + 1    )						,  6    ):
          if number % i == 0 or number % (i + 2) == 0:
               return False
     return True

def 						__snake_case						(				)  ->       Iterator[int]:





     '''simple docstring'''

     _UpperCAmelCase      :     int        =   2
     while True:
          if is_prime(SCREAMING_SNAKE_CASE__    ):
               yield num
          num += 1

def 						__snake_case						(				SCREAMING_SNAKE_CASE__     :						int = 2_000_000    )  ->       int:





     '''simple docstring'''

     return sum(takewhile(lambda SCREAMING_SNAKE_CASE__    : x < n						,  prime_generator()    )    )


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





"""simple docstring"""




from __future__ import annotations

from typing import Any

def 						__snake_case						(				SCREAMING_SNAKE_CASE__     :						list[Any]    )  ->       None:





     '''simple docstring'''

     create_state_space_tree(SCREAMING_SNAKE_CASE__						,  []						,  0    )

def 						__snake_case						(				SCREAMING_SNAKE_CASE__     :						list[Any]						,  SCREAMING_SNAKE_CASE__     :						list[Any]						,  SCREAMING_SNAKE_CASE__     :						int    )  ->       None:





     '''simple docstring'''

     if index == len(SCREAMING_SNAKE_CASE__    ):
          print(SCREAMING_SNAKE_CASE__    )
          return

     create_state_space_tree(SCREAMING_SNAKE_CASE__						,  SCREAMING_SNAKE_CASE__						,  index + 1    )
     current_subsequence.append(sequence[index]    )
     create_state_space_tree(SCREAMING_SNAKE_CASE__						,  SCREAMING_SNAKE_CASE__						,  index + 1    )
     current_subsequence.pop()


if __name__ == "__main__":
 _lowerCAmelCase    : list[Any]							=							[3, 1, 2, 4]
 generate_all_subsequences(seq)

 seq.clear()
 seq.extend(["A", "B", "C"])
 generate_all_subsequences(seq)
