


'''simple docstring'''





from __future__ import annotations

from functools import lru_cache
from math import ceil

__lowerCamelCase												=						100

__lowerCamelCase												=						set(range(3, NUM_PRIMES, 2))
primes.add(2)
__lowerCamelCase												=						42

for prime in range(3, ceil(NUM_PRIMES**0.5), 2):
    if prime not in primes:
        continue
    primes.difference_update(set(range(prime * prime, NUM_PRIMES, prime)))


@lru_cache(maxsize=100						)
def        a__     (					UpperCamelCase_						:      int						):
   if number_to_partition < 0:
      return set()
   elif number_to_partition == 0:
      return {1}

   UpperCAmelCase__	:set[int]      =      set()
   UpperCAmelCase__	:int
   UpperCAmelCase__	:int

   for prime in primes:
      if prime > number_to_partition:
         continue
      for sub in partition(number_to_partition - prime						):
         ret.add(sub * prime						)

   return ret


def        a__     (					UpperCamelCase_						:      int = 5_000						):
   for number_to_partition in range(1,   UpperCamelCase_						):
      if len(partition(UpperCamelCase_						)						) > number_unique_partitions:
         return number_to_partition
   return None


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







'''simple docstring'''





from ..utils import DummyObject, requires_backends




class 				UpperCAmelCase			(			metaclass=_snake_case						):
 UpperCAmelCase				=					["speech"]


 def __init__(      self							:	List[Any]			,       *__lowerCamelCase							:	List[Any]			,       **__lowerCamelCase							:	List[str] ):
    requires_backends(self			,       ['''speech'''] )




class 				UpperCAmelCase			(			metaclass=_snake_case						):
 UpperCAmelCase				=					["speech"]


 def __init__(      self							:	int			,       *__lowerCamelCase							:	List[Any]			,       **__lowerCamelCase							:	List[str] ):
    requires_backends(self			,       ['''speech'''] )



