@Override
 public void serialize(PofWriter pofWriter, Object obj) throws IOException {
   LengthyPofObject o = (LengthyPofObject) obj;
   pofWriter.writeInt(0, o.fields.size());
   for (int i = 1; i <= o.fields.size(); i++) {
     pofWriter.writeObject(i, o.fields.get(i - 1));
   }
   pofWriter.writeRemainder(null);
 }
 @Override
 public void writeExternal(PofWriter writer) throws IOException {
   writer.writeObject(0, condition);
 }