input: Write a function to check if a given binary tree is a subtree of another binary tree. If it is a subtree return True, else return False. If either tree is empty, return False.
  assert isSubTree(None, None)==False
  assert isSubTree(Node(1), None)==False
  assert isSubTree(None, Node(1))==False
  assert isSubTree(Node(1), Node(1))==True
  
  root1 = Node(26)
  root1.left = Node(10)
  root1.right = Node(3)
  root1.left.left = Node(4)
  root1.left.right = Node(6)
  root1.right.right = Node(3)
  root1.left.left.right = Node(30)
  
  root2 = Node(10)
  root2.left = Node(4)
  root2.right = Node(6)
  root2.left.right = Node(30)
  
  assert isSubTree(root1, root2)==True
output: def isSubTree(root1, root2):
      if not root1 or not root2:
          return False
      
      def isIdentical(node1, node2):
          if not node1 and not node2:
              return True
          if not node1 or not node2:
              return False
          return (node1.val == node2.val and 
                  isIdentical(node1.left, node2.left) and 
                  isIdentical(node1.right, node2.right))
      
      def traverse(node):
          if not node:
              return False
          if node.val == root2.val and isIdentical(node, root2):
              return True
          return traverse(node.left) or traverse(node.right)
      
      return traverse(root1)