





import math



def  UpperCamelCase__     (   _A:    Dict				):




      '''simple docstring'''







      assert isinstance(_lowerCAmelCase							,    _lowerCAmelCase				) and (
          number >= 0
      ), "'number' must been an int and positive"

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

      __lowerCamelCase				   =       range(3							,    int(math.sqrt(_lowerCAmelCase				) + 1				)							,    2				)
      return not any(not number % i for i in odd_numbers				)






def  UpperCamelCase__     (   _A:    Any							,    _A:    Dict=1							,    **_A:    List[str]				):




      '''simple docstring'''







      __lowerCamelCase				   =       factor * value
      __lowerCamelCase				   =       value

      while not is_prime(_lowerCAmelCase				):
            value += 1 if not ("desc" in kwargs and kwargs["desc"] is True) else -1

      if value == first_value_val:
            return next_prime(value + 1							,    **_lowerCAmelCase				)
      return value











'''simple docstring'''





def 		__snake_case(							)						->					Optional[Any]:
      for n in range(1	,  1_000_000						):
            yield n * (n + 1) // 2





def 		__snake_case(							_lowerCAmelCase						)						->					str:
      snake_case__    :       Optional[int]       		= 1
      snake_case__    :       List[Any]       		= 2
      while i * i <= n:
            snake_case__    :       Dict       		= 0
            while n % i == 0:
                  n //= i
                  multiplicity += 1
            divisors_count *= multiplicity + 1
            i += 1
      if n > 1:
            divisors_count *= 2
      return divisors_count





def 		__snake_case(							)						->					List[str]:
      return next(i for i in triangle_number_generator() if count_divisors(_lowerCAmelCase						) > 500						)


if __name__ == "__main__":
       print(solution())
