public synchronized void lazyLoadChilderenIfNeeded(Object obj) {
   internal_lazyLoadChilderenIfNeeded(obj);
   if (obj instanceof UserNode) {
     UserNode un = (UserNode) obj;
     if (un.getChildCount() > 0) {
       DefaultMutableTreeNode child = (DefaultMutableTreeNode) un.children().nextElement();
       if (child instanceof UserNode) addListenerToFoundSet(((UserNode) child).getFoundSet());
     }
   } else if (obj instanceof RelationNode) {
     RelationNode rn = (RelationNode) obj;
     if (rn.getChildCount() > 0)
       addListenerToFoundSet(((UserNode) rn.children().nextElement()).getFoundSet());
   }
 }