private function initRichModelUtils(): void
    {
        $this->richClassReflection = $this->richClassReflection ?? new \ReflectionClass($this);

        // Checking and saving information about richAccessMap.
        if ($this->richAccessMapExists === null) {
            $this->richAccessMapExists = false;
            if ($this->richClassReflection->hasProperty(RichModelInterface::RICH_MAP_NAME)) {
                if (!$this->richClassReflection->getProperty(RichModelInterface::RICH_MAP_NAME)->isStatic()) {
                    throw new RichModelFieldException(\sprintf('%s must be static!', RichModelInterface::RICH_MAP_NAME));
                }

                $this->richAccessMapExists = true;
                $mapReflection = $this->richClassReflection->getProperty(RichModelInterface::RICH_MAP_NAME);
                $mapReflection->setAccessible(true);
                $this->richAccessMapArray = $mapReflection->getValue();
                $this->richIsReadOnly = \array_key_exists(RichModelInterface::RICH_READONLY, $this->richAccessMapArray);
            }
        }
    }