protected function _createIterationFromTracker($tracker)
    {
        if (!($tracker instanceof Iterator)) {
            throw $this->_createInvalidArgumentException($this->__('Can only create an iteration from an Iterator tracker'), null, null, $tracker);
        }

        $key   = $this->_calculateKey($tracker);
        $value = $this->_calculateValue($tracker);

        return $this->_createIteration($key, $value);
    }