<script id="loader" data-load="{{load}}" data-plain="{{plain}}" data-apps="{{apps}}">
// Load our JavaScript files
!function loader(l,o,a,d,e,r) {
  d = l.getElementsByTagName(o)[0];
  a = [];

  // Append extra files that need to be loaded
  e = l.getElementById('loader');
  a = a.concat(
    e.getAttribute('data-load').split(','),
    e.getAttribute('data-plain').split(',')
  ).filter(Boolean);
  e = r = a.length;
  while (r--) {
    !function (w,t,f) {
      t = l.createElement(o);
      t.async = true;
      d.parentNode.insertBefore(t, d);

      t.onload = t.onerror = t.onreadystatechange = function () {
        if ((t.readyState && !(/^c|loade/.test(t.readyState))) || t.loaded) return;
        t.loaded = e--;

        // All files are loaded
        if (!e) {
          f = l.createEvent('CustomEvent');
          f.initCustomEvent('cortex', false, false, null);
          l.dispatchEvent(f);
          document.documentElement.className += ' cortex-loaded';
        }
      };

      t.src = w;
    }(a[r].replace(/\[type\]/, {{#if development}}'dev'{{else}}'min'{{/if}}));
  }
}(document, 'script');
</script>
