public function boot()
    {
        if (!$this->booted) {
            foreach ($this->container->getProviders() as $provider) {
                $provider->boot($this);
            }

            $this->booted = true;
        }
    }