ace.define("ace/mode/makefile",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/makefile_highlight_rules","ace/mode/folding/coffee"],function(e,t,n){var r=e("../lib/oop");var i=e("./text").Mode;var s=e("../tokenizer").Tokenizer;var o=e("./makefile_highlight_rules").MakefileHighlightRules;var u=e("./folding/coffee").FoldMode;var a=function(){var e=new o;this.foldingRules=new u,this.$tokenizer=new s(e.getRules())};r.inherits(a,i),function(){}.call(a.prototype),t.Mode=
a}),ace.define("ace/mode/makefile_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules","ace/mode/sh_highlight_rules"],function(e$$0,t,n){var r=e$$0("../lib/oop");var i=e$$0("./text_highlight_rules").TextHighlightRules;var s=e$$0("./sh_highlight_rules");var o=function(){var e=this.createKeywordMapper({keyword:s.reservedKeywords,"support.function.builtin":s.languageConstructs,"invalid.deprecated":"debugger"},"string");this.$rules={start:[{token:"string.interpolated.backtick.makefile",
regex:"`",next:"shell-start"},{token:"punctuation.definition.comment.makefile",regex:/#(?=.)/,next:"comment"},{token:["keyword.control.makefile"],regex:"^(?:\\s*\\b)(\\-??include|ifeq|ifneq|ifdef|ifndef|else|endif|vpath|export|unexport|define|endef|override)(?:\\b)"},{token:["entity.name.function.makefile","text"],regex:"^([^\\t ]+(?:\\s[^\\t ]+)*:)(\\s*.*)"}],comment:[{token:"punctuation.definition.comment.makefile",regex:/.+\\/},{token:"punctuation.definition.comment.makefile",regex:".+",next:"start"}],
"shell-start":[{token:e,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"string",regex:"\\w+"},{token:"string.interpolated.backtick.makefile",regex:"`",next:"start"}]}};r.inherits(o,i),t.MakefileHighlightRules=o}),ace.define("ace/mode/sh_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e$$0,t$$0,n$$0){var r$$0=e$$0("../lib/oop");var i$$0=e$$0("./text_highlight_rules").TextHighlightRules;var s=t$$0.reservedKeywords="!|{|}|case|do|done|elif|else|esac|fi|for|if|in|then|until|while|&|;|export|local|read|typeset|unset|elif|select|set";
var o=t$$0.languageConstructs="[|]|alias|bg|bind|break|builtin|cd|command|compgen|complete|continue|dirs|disown|echo|enable|eval|exec|exit|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|return|set|shift|shopt|source|suspend|test|times|trap|type|ulimit|umask|unalias|wait";var u$$0=function(){var e=this.createKeywordMapper({keyword:s,"support.function.builtin":o,"invalid.deprecated":"debugger"},"identifier");var t="(?:(?:[1-9]\\d*)|(?:0))";var n="(?:\\.\\d+)";var r="(?:\\d+)";
var i="(?:(?:"+r+"?"+n+")|(?:"+r+"\\.))";var u="(?:(?:"+i+"|"+r+")"+")";var a="(?:"+u+"|"+i+")";var f="(?:&"+r+")";var l="[a-zA-Z][a-zA-Z0-9_]*";var c="(?:(?:\\$"+l+")|(?:"+l+"=))";var h="(?:\\$(?:SHLVL|\\$|\\!|\\?))";var p="(?:"+l+"\\s*\\(\\))";this.$rules={start:[{token:"comment",regex:"#.*$"},{token:"string",regex:'"(?:[^\\\\]|\\\\.)*?"'},{token:"variable.language",regex:h},{token:"variable",regex:c},{token:"support.function",regex:p},{token:"support.function",regex:f},{token:"string",regex:"'(?:[^\\\\]|\\\\.)*?'"},
{token:"constant.numeric",regex:a},{token:"constant.numeric",regex:t+"\\b"},{token:e,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\*|\\*\\*|\\/|\\/\\/|~|<|>|<=|=>|=|!="},{token:"paren.lparen",regex:"[\\[\\(\\{]"},{token:"paren.rparen",regex:"[\\]\\)\\}]"},{token:"text",regex:"\\s+"}]}};r$$0.inherits(u$$0,i$$0),t$$0.ShHighlightRules=u$$0}),ace.define("ace/mode/folding/coffee",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range"],function(e$$0,
t$$0,n$$0){var r$$0=e$$0("../../lib/oop");var i$$0=e$$0("./fold_mode").FoldMode;var s$$0=e$$0("../../range").Range;var o$$0=t$$0.FoldMode=function(){};r$$0.inherits(o$$0,i$$0),function(){this.getFoldWidgetRange=function(e,t,n){var r=this.indentationBlock(e,n);if(r)return r;var i=/\S/;var o=e.getLine(n);var u=o.search(i);if(u==-1||o[u]!="#")return;var a=o.length;var f=e.getLength();var l=n;for(var c=n;++n<f;){o=e.getLine(n);var h=o.search(i);if(h==-1)continue;if(o[h]!="#")break;c=n}if(c>l){var p=e.getLine(c).length;
return new s$$0(l,a,c,p)}},this.getFoldWidget=function(e,t,n){var r=e.getLine(n);var i=r.search(/\S/);var s=e.getLine(n+1);var o=e.getLine(n-1);var u=o.search(/\S/);var a=s.search(/\S/);if(i==-1)return e.foldWidgets[n-1]=u!=-1&&u<a?"start":"","";if(u==-1){if(i==a&&r[i]=="#"&&s[i]=="#")return e.foldWidgets[n-1]="",e.foldWidgets[n+1]="","start"}else if(u==i&&r[i]=="#"&&o[i]=="#"&&e.getLine(n-2).search(/\S/)==-1)return e.foldWidgets[n-1]="start",e.foldWidgets[n+1]="","";return u!=-1&&u<i?e.foldWidgets[n-
1]="start":e.foldWidgets[n-1]="",i<a?"start":""}}.call(o$$0.prototype)});