public SimpleTreeNode getChild(int index) {
   LivenessPathElement lpe = (LivenessPathElement) children.get(index);
   IndexableFieldIdentifier ifid = new IndexableFieldIdentifier(index);
   Oop oop = lpe.getObj();
   if (oop != null) {
     return new OopTreeNodeAdapter(oop, ifid, getTreeTableMode());
   } else {
     NamedFieldIdentifier nfi = (NamedFieldIdentifier) lpe.getField();
     return new RootTreeNodeAdapter(nfi.getName(), ifid, getTreeTableMode());
   }
 }
 public int getChildCount() {
   return children != null ? children.size() : 0;
 }