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, otherwise return False. If either tree is empty, treat it as a valid subtree.
  assert isSubTree(Node(1), Node(1)) == True
  assert isSubTree(Node(1, Node(2), Node(3)), Node(1, Node(2), Node(3))) == True
  assert isSubTree(Node(1, Node(2), Node(3)), Node(1, Node(2), Node(4))) == False
  assert isSubTree(None, Node(1)) == False
  assert isSubTree(Node(1), None) == True
output: def isSubTree(s, t):
      if not s:
          return True
      if not t:
          return False
      
      def isSameTree(s, t):
          if not s and not t:
              return True
          if not s or not t:
              return False
          return s.val == t.val and isSameTree(s.left, t.left) and isSameTree(s.right, t.right)
      
      return isSameTree(s, t) or isSubTree(s, t.left) or isSubTree(s, t.right)