

'''simple docstring'''






from ..utils import DummyObject, requires_backends
class 	SCREAMING_SNAKE_CASE__			(				metaclass=_UpperCAmelCase      ):
    _A			    =							["torch", "transformers", "invisible_watermark"]




    def __init__(					self				,     *lowercase__				,     **lowercase__			):






          """simple docstring"""






          requires_backends(self				,     ["torch", "transformers", "invisible_watermark"]			)




    @classmethod
    def   __lowerCamelCase      (					cls				,     *lowercase__				,     **lowercase__			):






          """simple docstring"""






          requires_backends(cls				,     ["torch", "transformers", "invisible_watermark"]			)







    @classmethod
    def   __lowerCamelCase      (					cls				,     *lowercase__				,     **lowercase__			):






          """simple docstring"""






          requires_backends(cls				,     ["torch", "transformers", "invisible_watermark"]			)






class 	SCREAMING_SNAKE_CASE__			(				metaclass=_UpperCAmelCase      ):
    _A			    =							["torch", "transformers", "invisible_watermark"]




    def __init__(					self				,     *lowercase__				,     **lowercase__			):






          """simple docstring"""






          requires_backends(self				,     ["torch", "transformers", "invisible_watermark"]			)




    @classmethod
    def   __lowerCamelCase      (					cls				,     *lowercase__				,     **lowercase__			):






          """simple docstring"""






          requires_backends(cls				,     ["torch", "transformers", "invisible_watermark"]			)







    @classmethod
    def   __lowerCamelCase      (					cls				,     *lowercase__				,     **lowercase__			):






          """simple docstring"""






          requires_backends(cls				,     ["torch", "transformers", "invisible_watermark"]			)



"""simple docstring"""


from .hash_table import HashTable







class 		lowerCamelCase__					(					__magic_name__				):





			'''simple docstring'''



			def __init__(							self     ,     *__UpperCAmelCase     ,     **__UpperCAmelCase  ) ->     List[str]:
				super().__init__(*__UpperCAmelCase     ,     **__UpperCAmelCase  )



			def 					_lowerCAmelCase		(							self     ,     __UpperCAmelCase     ,     __UpperCAmelCase=None  ) ->     Union[str, Any]:
				_lowerCAmelCase								=1
				_lowerCAmelCase								=self.hash_function(key + i * i  )

				while self.values[new_key] is not None and self.values[new_key] != key:
					i += 1
					_lowerCAmelCase								=(
					    self.hash_function(key + i * i  )
					    if not self.balanced_factor() >= self.lim_charge
					    else None
					)

					if new_key is None:
						break

				return new_key



