I'd prefer to throw an error here if we have unexpected keys rather than silently discarding them.