input: def is_subtree(T: Node, S: Node) -> bool:
      """ Check if a given binary tree (S) is a subtree of another binary tree (T)
      >>> is_subtree(Node(1), Node(1))
      True
      >>> is_subtree(Node(1, Node(2), Node(3)), Node(1, Node(2), Node(3)))
      True
      >>> is_subtree(Node(4, Node(5), Node(6)), Node(4, Node(6), Node(5)))
      False
      """
output:     if T is None:
          return S is None
      
      def is_identical(t, s):
          if t is None and s is None:
              return True
          if t is None or s is None:
              return False
          return t.value == s.value and is_identical(t.left, s.left) and is_identical(t.right, s.right)
      
      if is_identical(T, S):
          return True
      
      return is_subtree(T.left, S) or is_subtree(T.right, S)