public function exposed(): MapInterface
    {
        return $this->dependencies->reduce(
            new Map(Name::class, MapInterface::class),
            static function(Map $exposed, string $name, Dependency $dependency): Map {
                return $exposed->put(
                    $dependency->name(),
                    $dependency->exposed()
                );
            }
        );
    }