public function importRawData($data)
    {
        $this->modelData = $data;

        foreach ($data as $propertyName => $item) {
            if ($item instanceof ModelState) {
                $this->attachChangeListenerToModelProperty($propertyName, $item);
            }
        }

        // Make sure we can track changes in existing models.
        $this->takeChangeSnapshot();

        $this->onDataImported();
    }