protected function multipleLineComment()
    {
        $this->get();
        $comment = '';
        while (true) {
            $get = $this->get();
            if ($get === '*') {
                if ($this->peek() === '/') {
                    $this->get();
                    if (strpos($comment, '!') === 0) {
                        return "\n/*!".substr($comment, 1)."*/\n";
                    }
                    if (preg_match('/^@(?:cc_on|if|elif|else|end)\\b/', $comment)) {
                        return '/*'.$comment.'*/';
                    }
                    return ' ';
                }
            } elseif ($get === null) {
                throw new \Exception('Unterminated comment at byte: '.$this->inputIndex.': /*'.$comment);
            }
            $comment .= $get;
        }
        return;
    }