
from __future__ import annotations






class UpperCAmelCase   :





   '''simple docstring'''


   def __init__(					self     :							Optional[Any]			,			lowerCAmelCase_     :							int     ):

      """simple docstring"""
      _A:  List[str]					=       data
      _A:  Node | None					=       None
      _A:  Node | None					=       None






def   lowerCamelCase__							(					a      )      ->   None:  # In Order traversal of the tree
   if tree:
      display(tree.left      )
      print(tree.data      )
      display(tree.right      )






def   lowerCamelCase__							(					a      )      ->   int:
   return 1 + max(depth_of_tree(tree.left      )		,		depth_of_tree(tree.right      )      ) if tree else 0






def   lowerCamelCase__							(					a      )      ->   bool:
   if not tree:
      return True
   if tree.left and tree.right:
      return is_full_binary_tree(tree.left      ) and is_full_binary_tree(tree.right      )
   else:
      return not tree.left and not tree.right






def   lowerCamelCase__							(					)      ->   None:  # Main function for testing.
   _A:  Optional[int]					=       Node(1      )
   _A:  int					=       Node(2      )
   _A:  str					=       Node(3      )
   _A:  Union[str, Any]					=       Node(4      )
   _A:  Dict					=       Node(5      )
   _A:  int					=       Node(6      )
   _A:  Optional[Any]					=       Node(7      )
   _A:  List[str]					=       Node(8      )
   _A:  int					=       Node(9      )

   print(is_full_binary_tree(a      )      )
   print(depth_of_tree(a      )      )
   print('''Tree is: '''      )
   display(a      )


if __name__ == "__main__":
   main()





def   lowerCamelCase__							(					a		,		a      )      ->   str:
   if a < 0 or b < 0:
      raise ValueError('''the value of both inputs must be positive'''      )

   _A:  Union[str, Any]					=       str(bin(a      )      )[2:]  # remove the leading "0b"
   _A:  Union[str, Any]					=       str(bin(a      )      )[2:]  # remove the leading "0b"

   _A:  Optional[int]					=       max(len(a      )		,		len(a      )      )

   return "0b" + "".join(
       str(int(char_a != char_b      )      )
       for char_a, char_b in zip(a_binary.zfill(a      )		,		b_binary.zfill(a      )      )      )


if __name__ == "__main__":
   import doctest

   doctest.testmod()



