protected function fetchIfNecessary()
    {
        if ($this->fetched === false) {
            $now   = Carbon::now();
            $rules = $this->rulesRepository->enabledUntilDate($now);
            foreach ($rules as $rule) {
                $this->add($rule);
            }

            $this->fetched = true;
        }

        return $this;
    }