public function register(Application $app)
    {
        $this->enabled()->each(function (Module $module) use ($app) {
            array_map(function ($class) use ($app) {
                /* @var ServiceProvider $provider */
                $provider = new $class($app);
                if ($provider->isDeferred()) {
                    $app->addDeferredServices(array_fill_keys($provider->provides(), $provider));
                } else {
                    $app->register($provider);
                }
            }, array_filter($module->getProviders(), 'class_exists'));
        });
    }