text: /*!
  
  JSZipUtils - A collection of cross-browser utilities to go along with JSZip.
  <http://stuk.github.io/jszip-utils>
  
  (c) 2014 Stuart Knightley, David Duponchel
  Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip-utils/master/LICENSE.markdown.
  
  */
  ! function(e) {
      "object" == typeof exports ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : "undefined" != typeof window ? window.JSZipUtils = e() : "undefined" != typeof global ? global.JSZipUtils = e() : "undefined" != typeof self && (self.JSZipUtils = e())
  }(function() {
      var define, module, exports;
      return (function e(t, n, r) {
              function s(o, u) {
                  if (!n[o]) {
                      if (!t[o]) {
                          var a = typeof require == "function" && require;
                          if (!u && a) return a(o, !0);
                          if (i) return i(o, !0);
                          throw new Error("Cannot find module '" + o + "'")
                      }
                      var f = n[o] = {
                          exports: {}
                      };
                      t[o][0].call(f.exports, function(e) {
                          var n = t[o][1][e];
                          return s(n ? n : e)
                      }, f, f.exports, e, t, n, r)
                  }
                  return n[o].exports
              }
              var i = typeof require == "function" && require;
              for (var o = 0; o < r.length; o++) s(r[o]);
              return s
          })({
              1: [function(require, module, exports) {
                  'use strict';
  
                  var JSZipUtils = {};
                  // just use the responseText with xhr1, response with xhr2.
                  // The transformation doesn't throw away high-order byte (with responseText)
                  // because JSZip handles that case. If not used with JSZip, you may need to
                  // do it, see https://developer.mozilla.org/En/Using_XMLHttpRequest#Handling_binary_data
                  JSZipUtils._getBinaryFromXHR = function(xhr) {
                      // for xhr.responseText, the 0xFF mask is applied by JSZip
                      return xhr.response || xhr.responseText;
                  };
  
                  // taken from jQuery
                  function createStandardXHR() {
                      try {
                          return new window.XMLHttpRequest();
                      } catch (e) {}
                  }
  
                  function createActiveXHR() {
                      try {
                          return new window.ActiveXObject("Microsoft.XMLHTTP");
                      } catch (e) {}
                  }
  
                  // Create the request object
                  var createXHR = window.ActiveXObject ?
                      /* Microsoft failed to properly
                       * implement the XMLHttpRequest in IE7 (can't request local files),
                       * so we use the ActiveXObject when it is available
                       * Additionally XMLHttpRequest can be disabled in IE7/IE8 so
                       * we need a fallback.
                       */
                      function() {
                          return createStandardXHR() || createActiveXHR();
                      } :
                      // For all other browsers, use the standard XMLHttpRequest object
                      createStandardXHR;
  
  
  
                  JSZipUtils.getBinaryContent = function(path, callback) {
                      /*
                       * Here is the tricky part : getting the data.
                       * In firefox/chrome/opera/... setting the mimeType to 'text/plain; charset=x-user-defined'
                       * is enough, the result is in the standard xhr.responseText.
                       * cf https://developer.mozilla.org/En/XMLHttpRequest/Using_XMLHttpRequest#Receiving_binary_data_in_older_browsers
                       * In IE <= 9, we must use (the IE only) attribute responseBody
                       * (for binary data, its content is different from responseText).
                       * In IE 10, the 'charset=x-user-defined' trick doesn't work, only the
                       * responseType will work :
                       * http://msdn.microsoft.com/en-us/library/ie/hh673569%28v=vs.85%29.aspx#Binary_Object_upload_and_download
                       *
                       * I'd like to use jQuery to avoid this XHR madness, but it doesn't support
                       * the responseType attribute : http://bugs.jquery.com/ticket/11461
                       */
                      try {
  
                          var xhr = createXHR();
  
                          xhr.open('GET', path, true);
  
                          // recent browsers
                          if ("responseType" in xhr) {
                              xhr.responseType = "arraybuffer";
                          }
  
                          // older browser
                          if (xhr.overrideMimeType) {
                              xhr.overrideMimeType("text/plain; charset=x-user-defined");
                          }
  
                          xhr.onreadystatechange = function(evt) {
                              var file, err;
                              // use `xhr` and not `this`... thanks IE
                              if (xhr.readyState === 4) {
                                  if (xhr.status === 200 || xhr.status === 0) {
                                      file = null;
                                      err = null;
                                      try {
                                          file = JSZipUtils._getBinaryFromXHR(xhr);
                                      } catch (e) {
                                          err = new Error(e);
                                      }
                                      callback(err, file);
                                  } else {
                                      callback(new Error("Ajax error for " + path + " : " + this.status + " " + this.statusText), null);
                                  }
                              }
                          };
  
                          xhr.send();
  
                      } catch (e) {
                          callback(new Error(e), null);
                      }
                  };
  
                  // export
                  module.exports = JSZipUtils;
  
                  // enforcing Stuk's coding style
                  // vim: set shiftwidth=4 softtabstop=4:
  
              }, {}]
          }, {}, [1])
          (1)
  });;
  