@Override
 public void writeExternal(ObjectOutput out) throws IOException {
   serialize(out);
 }
 @Override
 protected void writeArray(DataOutput out) throws IOException {
   serialize(out);
 }