public class TreeNode<T> {
  private T item;
  private TreeNode leftChild;
  private TreeNode rightChild;
  private Color leftColor;
  private Color rightColor;
  // constructors and methods for accessing the private
  // data fields appear here

} // end TreeNode
