



"""simple docstring"""


class 			_a :
   """simple docstring"""



   def __init__(		self     :    List[Any]				,   __UpperCamelCase     :    list   )->Tuple:
       _UpperCAmelCase					=    set_counts
       _UpperCAmelCase					=    max(__UpperCamelCase   )
       _UpperCAmelCase					=    len(__UpperCamelCase   )
       _UpperCAmelCase					=    [1] * num_sets
       _UpperCAmelCase					=    list(range(__UpperCamelCase   )   )



   def  lowercase__						(		self     :    Optional[Any]				,   __UpperCamelCase     :    int				,   __UpperCamelCase     :    int   )->str:
       _UpperCAmelCase					=    self.get_parent(__UpperCamelCase   )
       _UpperCAmelCase					=    self.get_parent(__UpperCamelCase   )

       if src_parent == dst_parent:
           return False

       if self.ranks[dst_parent] >= self.ranks[src_parent]:
           self.set_counts[dst_parent] += self.set_counts[src_parent]
           _UpperCAmelCase					=    0
           _UpperCAmelCase					=    dst_parent
           if self.ranks[dst_parent] == self.ranks[src_parent]:
               self.ranks[dst_parent] += 1
           _UpperCAmelCase					=    self.set_counts[dst_parent]
       else:
           self.set_counts[src_parent] += self.set_counts[dst_parent]
           _UpperCAmelCase					=    0
           _UpperCAmelCase					=    src_parent
           _UpperCAmelCase					=    self.set_counts[src_parent]

       _UpperCAmelCase					=    max(self.max_set				,   __UpperCamelCase   )
       return True



   def  lowercase__						(		self     :    str				,   __UpperCamelCase     :    int   )->int:
       if self.parents[disj_set] == disj_set:
           return disj_set
       _UpperCAmelCase					=    self.get_parent(self.parents[disj_set]   )
       return self.parents[disj_set]








"""simple docstring"""


def  lowercase	(      _SCREAMING_SNAKE_CASE   :						int					,     _SCREAMING_SNAKE_CASE   :						int				):






				'''simple docstring'''



				if a < 0 or b < 0:
								raise ValueError('''the value of both inputs must be positive'''				)

				_UpperCAmelCase					=    str(bin(_SCREAMING_SNAKE_CASE				)				)[2:]  # remove the leading "0b"
				_UpperCAmelCase					=    str(bin(_SCREAMING_SNAKE_CASE				)				)[2:]  # remove the leading "0b"

				_UpperCAmelCase					=    max(len(_SCREAMING_SNAKE_CASE				)					,     len(_SCREAMING_SNAKE_CASE				)				)

				return "0b" + "".join(
				    str(int(char_a == '''1''' and char_b == '''1'''				)				)
				    for char_a, char_b in zip(a_binary.zfill(_SCREAMING_SNAKE_CASE				)					,     b_binary.zfill(_SCREAMING_SNAKE_CASE				)				)				)


if __name__ == "__main__":
					import doctest

					doctest.testmod()



