private synchronized void writeObject(ObjectOutputStream output)
private void writeObject(ObjectOutputStream s)
    private synchronized void writeObject(ObjectOutputStream output)    throws IOException  {        // Synchronized so that hashCode() doesn't get wrong value.        int tmpHashcode = hashcode;        hashcode = -1;        output.defaultWriteObject();        hashcode = tmpHashcode;    }