protected function getConcrete($abstract)
    {
        // If we don't have a registered resolver or concrete for the type, we'll just
        // assume each type is a concrete name and will attempt to resolve it as is
        // since the container should be able to resolve concretes automatically.
        if (!is_scalar($abstract)) {
            return $abstract;
        }

        if (!isset($this->container[$abstract])) {
            if ($this->missingLeadingSlash($abstract) && isset($this->container['\\' . $abstract])) {
                $abstract = '\\' . $abstract;
            }

            return $abstract;
        }

        return $this->container[$abstract];
    }