class_docstr: A `DecisionNode` encapsulates internal node in the tree
  Unlike a `LeafNode`, it contains very little actual logic beyond tying the tree together
code: def is_prunable(self) -> bool:
      return (
          type(self.left_child) == LeafNode
          and type(self.right_child) == LeafNode
      )
  
imports: from typing import Union, Tuple
  from .data import Data
  from .split import Split, SplitCondition
label_desc: Use image node_id 2 for calling the DecisionNode obj's underlying member method code with example usage: obj.is_prunable() and returns: unknown