This function seems to drop all sorts of strange fields in to the doc, such as `"f"`, `"schanges"`, etc. - are those necessary? Can we rename them to something that's understandable without looking up a schema?