'use strict';(function(b){"object"==typeof exports&&"object"==typeof module?b(require("../../lib/codemirror"),"cjs"):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],function(f){b(f,"amd")}):b(CodeMirror,"plain")})(function(b,f){function l(a,b){var c=b;return function(){0==--c&&a()}}function h(a,c){var e=b.modes[a].dependencies;if(!e)return c();a=[];for(var d=0;d<e.length;++d)b.modes.hasOwnProperty(e[d])||a.push(e[d]);if(!a.length)return c();c=l(c,a.length);for(d=0;d<a.length;++d)b.requireMode(a[d],
c)}b.modeURL||(b.modeURL="../mode/%N/%N.js");var g={};b.requireMode=function(a,c){"string"!=typeof a&&(a=a.name);if(b.modes.hasOwnProperty(a))return h(a,c);if(g.hasOwnProperty(a))return g[a].push(c);var e=b.modeURL.replace(/%N/g,a);if("plain"==f){var d=document.createElement("script");d.src=e;e=document.getElementsByTagName("script")[0];var k=g[a]=[c];b.on(d,"load",function(){h(a,function(){for(var a=0;a<k.length;++a)k[a]()})});e.parentNode.insertBefore(d,e)}else"cjs"==f?(require(e),c()):"amd"==f&&
requirejs([e],c)};b.autoLoadMode=function(a,c){b.modes.hasOwnProperty(c)||b.requireMode(c,function(){a.setOption("mode",a.getOption("mode"))})}});
