





'''simple docstring'''




from __future__ import annotations


class 			SCREAMING_SNAKE_CASE   :


     def __init__(						self						,     _UpperCAmelCase):

          '''simple docstring'''






          __A						:			Optional[Any]								=	data
          __A						:			Node | None								=	None
          __A						:			Node | None								=	None






def 	_lowerCAmelCase      (  __snake_case  :			Node | None      )					->					None:  # In Order traversal of the tree
     if tree:
          display(tree.left      )
          print(tree.data      )
          display(tree.right      )






def 	_lowerCAmelCase      (  __snake_case  :			Node | None      )					->					int:
     return 1 + max(depth_of_tree(tree.left      )			,							depth_of_tree(tree.right      )      ) if tree else 0






def 	_lowerCAmelCase      (  __snake_case  :			Node      )					->					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						:			List[str]								=	Node(1      )
     __A						:			Optional[Any]								=	Node(2      )
     __A						:			Dict								=	Node(3      )
     __A						:			List[str]								=	Node(4      )
     __A						:			Optional[Any]								=	Node(5      )
     __A						:			List[str]								=	Node(6      )
     __A						:			Dict								=	Node(7      )
     __A						:			Optional[Any]								=	Node(8      )
     __A						:			List[str]								=	Node(9      )

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


if __name__ == "__main__":
  main()






'''simple docstring'''




import math






def 	_lowerCAmelCase      (  __snake_case  :			int      )					->					bool:

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

     # All primes number are in format of 6k +/- 1
     for i in range(5			,							int(math.sqrt(__snake_case      ) + 1      )			,							6      ):
          if number % i == 0 or number % (i + 2) == 0:
               return False
     return True






def 	_lowerCAmelCase      (  __snake_case  :			float = 0.1      )					->					int:
     __A						:			Dict								=	3
     __A						:			int								=	3

     while primes / (2 * j - 1) >= ratio:
          for i in range(j * j + j + 1			,							(j + 2) * (j + 2)			,							j + 1      ):
               primes += is_prime(__snake_case      )
          j += 2
     return j


if __name__ == "__main__":
  import doctest

  doctest.testmod()