final protected function getLayoutProvider()
    {
        $layout = LayoutProvider::getProvider();
        $layout->generateValueEvent->attachHandler(function ($elementName) {
            if (isset($this->leaves[$elementName])) {
                return $this->leaves[$elementName];
            }

            return null;
        });

        return $layout;
    }