code: def render_reply(self):
          
  
          data = copy.copy(self._recv_xso)
          data.type_ = forms_xso.DataType.SUBMIT
          data.fields = list(self._recv_xso.fields)
  
          for i, field_xso in enumerate(data.fields):
              if field_xso.var is None:
                  continue
              if field_xso.var == "FORM_TYPE":
                  continue
              key = fields.descriptor_ns, field_xso.var
              try:
                  descriptor = self.DESCRIPTOR_MAP[key]
              except KeyError:
                  continue
  
              bound_field = descriptor.__get__(self, type(self))
              data.fields[i] = bound_field.render(
                  use_local_metadata=False
              )
  
          return data
docs: Create a :class:`~.Data` object equal to the object from which the from
          was created through :meth:`from_xso`, except that the values of the
          fields are exchanged with the values set on the form.
  
          Fields which have no corresponding form descriptor are left untouched.
          Fields which are accessible through form descriptors, but are not in
          the original :class:`~.Data` are not included in the output.
  
          This method only works on forms created through :meth:`from_xso`.
  
          The resulting :class:`~.Data` instance has the :attr:`~.Data.type_` set
          to :attr:`~.DataType.SUBMIT`.