`encoding` is not a good name for this