public function takeSnapshot()
    {
        if (is_array($this->originalNodeNames)) {
            if ($this->isInitialized()) {
                $this->originalNodeNames = $this->collection->getKeys();
            } else {
                $this->originalNodeNames = null;
            }
        }

        parent::takeSnapshot();
    }