public function mergeRange($start, $end = null)
    {
        if ($end === null) {
            $end = $this->getNumParts() - 1;
        }

        if ($end <= $start) {
            return $this;
        }

        $mergedParts = implode(
            array_slice($this->identifierParts, $start, $end)
        );
        array_splice($this->identifierParts, $start, $end, $mergedParts);

        return $this;
    }