@Override
 public void writeExternal(ObjectOutput out) throws IOException {
   out.writeInt(size());
   for (int i = 0; i < size(); i++) {
     out.writeObject(get(i));
   }
 }