public function set(string $name, $value)
    {
        if (! array_key_exists($name, $this->map)) {
            throw new \InvalidArgumentException("Setting $name does not exists");
        }
        $this->map[$name] = $value;
    }