frp: rename discrete to userEvent.  Make sure it can be serialized.