public class TreeNode<T> {
  private T smallItem;
  private T middleItem;
  private T largeItem;
  private TreeNode<T> leftChild;
  private TreeNode<T> lMidChild;
  private TreeNode<T> rMidChild;
  private TreeNode<T> rightChild;
  // constructors and methods for accessing the private
  // data fields appear here

} // end TreeNode
