code: def __init__(self, node, children=None):
      super().__init__(node, children)
      # Precompute our hash value.  This ensures that we're really
      # immutable.  It also means we only have to calculate it once.
      try:
          self._hash = hash((self._label, tuple(self)))
      except (TypeError, ValueError) as e:
          raise ValueError(
              "%s: node value and children "
              "must be immutable" % type(self).__name__
          ) from e
  
imports: from nltk.probability import ProbabilisticMixIn
  from nltk.tree.parented import MultiParentedTree, ParentedTree
  from nltk.tree.tree import Tree
label_desc: Use image node_id 1 to create a new ImmutableTree object from inherited base classes: Tree with example: obj = ImmutableTree(node, children)