
'''simple docstring'''





def        snake_case							(		UpperCAmelCase	)->			bool:







      """simple docstring"""
      if not isinstance(UpperCAmelCase      ,  UpperCAmelCase	):
            __A       	=			f'Input value of [number={number}] must be an integer'
            raise TypeError(UpperCAmelCase	)
      if number < 0 or number % 2 == 1:
            return False
      __A       	=			int(number**0.5	)
      return number == number_sqrt * (number_sqrt + 1)


if __name__ == "__main__":
 import doctest

 doctest.testmod()








'''simple docstring'''





from .hash_table import HashTable
from .number_theory.prime_numbers import is_prime, next_prime


class  UpperCamelCase__  (    SCREAMING_SNAKE_CASE):






 def __init__(			self  :Union[str, Any]	,				*_A  :int	,				**_A  :Optional[Any]			)				->			Union[str, Any]:







       '''simple docstring'''



       super().__init__(*_A	,				**_A			)






 def 	lowercase_						(			self  :Dict	,				_A  :Union[str, Any]	,				_A  :Dict			)				->			Dict:







       '''simple docstring'''



       __A       	=			(
           next_prime(value % self.size_table			)
           if not is_prime(value % self.size_table			)
           else value % self.size_table
       )  # gt = bigger than
       return next_prime_gt - (data % next_prime_gt)






 def 	lowercase_						(			self  :List[Any]	,				_A  :int	,				_A  :Tuple	,				_A  :Union[str, Any]			)				->			List[Any]:







       '''simple docstring'''



       return (increment * self.__hash_function_a(_A	,				_A			)) % self.size_table






 def 	lowercase_						(			self  :List[Any]	,				_A  :List[str]	,				_A  :str=None			)				->			List[Any]:







       '''simple docstring'''



       __A       	=			1
       __A       	=			self.hash_function(_A			)

       while self.values[new_key] is not None and self.values[new_key] != key:
             __A       	=			(
                 self.__hash_double_function(_A	,				_A	,				_A			)
                 if self.balanced_factor() >= self.lim_charge
                 else None
             )
             if new_key is None:
                   break
             else:
                   i += 1

       return new_key






