public function delete($key)
    {
        $storage = $this->storage;
        if (array_key_exists($key, $this->storage)) {
            unset($storage[$key]);
        }

        return new static($this->keyType, $this->valType, $storage);
    }
public function delete($key)
    {
        $storage = $this->storage;
        if (array_key_exists($key, $this->storage)) {
            unset($storage[$key]);
        }

        return new static($this->keyType, $this->valType, $storage);
    }
{@inheritdoc}