public function offsetUnset($offset)
    {
        $index = $this->getKeyIndex($offset);

        if ($index >= 0) {
            // change size.
            $this->values->setSize($index - 1);

            unset($this->keys[$offset], $this->values[$index]);
        }
    }