protected function parseArguments($argumentsString)
    {
        $argumentsObjectTree = array();
        $matches = array();
        if (preg_match_all(self::$SPLIT_PATTERN_TAGARGUMENTS, $argumentsString, $matches, PREG_SET_ORDER) > 0) {
            $escapingEnabledBackup = $this->escapingEnabled;
            $this->escapingEnabled = false;
            foreach ($matches as $singleMatch) {
                $argument = $singleMatch['Argument'];
                $value = $this->unquoteString($singleMatch['ValueQuoted']);
                $argumentsObjectTree[$argument] = $this->buildArgumentObjectTree($value);
            }
            $this->escapingEnabled = $escapingEnabledBackup;
        }
        return $argumentsObjectTree;
    }