code: public void writeObject(Object oldInstance, Encoder out)
      {
          // Override the default FieldPersistence algorithm for the encoder, so private fields
          // can also be encoded
          out.setPersistenceDelegate(Field.class, new FieldPersistenceDelegate());
          super.writeObject(oldInstance, out);
      }
docs: PersistenceDelegate.writeObject()