re-encode the json to avoid subtle encoder differences (& was being encoded as a unicode codepoint instead of a single byte in one case but not the other)