protected function init()
    {
        if ($this->cache->get('options')) {
            $this->options = $this->cache->get('options');
        } else {
            $this->extractCategoriesFromModel($this->optionCategoryModel->newQuery()->get(['key'])->sortBy('key'));
            $this->extractOptionsFromModel(
                $this->optionModel->newQuery()->get(['id', 'category_key', 'key', 'value'])->sortBy('id')
            );
            $this->cache->forever('options', $this->options);
        }
    }