stream.writeObject(parent); stream.writeObject(children);
  private void writeObject(ObjectOutputStream stream)     throws IOException  {    stream.defaultWriteObject();    Map properties = getMyProperties();    stream.writeInt(properties.size());    for (Iterator i = properties.entrySet().iterator(); i.hasNext(); ) {      PropertyEntry entry = new PropertyEntry((Map.Entry)i.next());      stream.writeObject(entry);    }    stream.writeObject(getSerializableListeners());  }