; (function () {
    typeof (require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null; function Brush() {
        function process(match, regexInfo) {
            var constructor = SyntaxHighlighter.Match, code = match[0], tag = new XRegExp('(&lt;|<)[\\s\\/\\?]*(?<name>[:\\w-\\.]+)', 'xg').exec(code), result = []
; if (match.attributes != null) {
                var attributes, regex = new XRegExp('(?<name> [\\w:\\-\\.]+)' +
'\\s*=\\s*' +
'(?<value> ".*?"|\'.*?\'|\\w+)', 'xg'); while ((attributes = regex.exec(code)) != null)
                { result.push(new constructor(attributes.name, match.index + attributes.index, 'color1')); result.push(new constructor(attributes.value, match.index + attributes.index + attributes[0].indexOf(attributes.value), 'string')); } 
            }
            if (tag != null)
                result.push(new constructor(tag.name, match.index + tag[0].indexOf(tag.name), 'keyword')); return result;
        }
        this.regexList = [{ regex: new XRegExp('(\\&lt;|<)\\!\\[[\\w\\s]*?\\[(.|\\s)*?\\]\\](\\&gt;|>)', 'gm'), css: 'color2' }, { regex: SyntaxHighlighter.regexLib.xmlComments, css: 'comments' }, { regex: new XRegExp('(&lt;|<)[\\s\\/\\?]*(\\w+)(?<attributes>.*?)[\\s\\/\\?]*(&gt;|>)', 'sg'), func: process}];
    }; Brush.prototype = new SyntaxHighlighter.Highlighter(); Brush.aliases = ['xml', 'xhtml', 'xslt', 'html']; SyntaxHighlighter.brushes.Xml = Brush; typeof (exports) != 'undefined' ? exports.Brush = Brush : null;
})();
