updated form_ctx functions to approximate update on call