we need to retain state between submissions, so that the form doesn't get emptied out during form submission. we can just return `fields` in an optional record