public function getArgument($name, $default = null)
    {
        if (!isset($this->arguments[$name])) {
            return $default;
        }

        if (isset($this->caches[$name])) {
            return $this->caches[$name];
        }

        return $this->caches[$name] = $this->container->execute($this->arguments[$name]);
    }