| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | 
							- (function (w) {
 
-   "use strict";
 
-   function findBest(atobNative) {
 
-     // normal window
 
-     if ('function' === typeof atobNative) { return atobNative; }
 
-     // browserify (web worker)
 
-     if ('function' === typeof Buffer) {
 
-       return function atobBrowserify(a) {
 
-         //!! Deliberately using an API that's deprecated in node.js because
 
-         //!! this file is for browsers and we expect them to cope with it.
 
-         //!! Discussion: github.com/node-browser-compat/atob/pull/9
 
-         return new Buffer(a, 'base64').toString('binary');
 
-       };
 
-     }
 
-     // ios web worker with base64js
 
-     if ('object' === typeof w.base64js) {
 
-       // bufferToBinaryString
 
-       // https://git.coolaj86.com/coolaj86/unibabel.js/blob/master/index.js#L50
 
-       return function atobWebWorker_iOS(a) {
 
-         var buf = w.base64js.b64ToByteArray(a);
 
-         return Array.prototype.map.call(buf, function (ch) {
 
-           return String.fromCharCode(ch);
 
-         }).join('');
 
-       };
 
-     }
 
- 		return function () {
 
- 			// ios web worker without base64js
 
- 			throw new Error("You're probably in an old browser or an iOS webworker." +
 
- 				" It might help to include beatgammit's base64-js.");
 
-     };
 
-   }
 
-   var atobBest = findBest(w.atob);
 
-   w.atob = atobBest;
 
-   if ((typeof module === 'object') && module && module.exports) {
 
-     module.exports = atobBest;
 
-   }
 
- }(window));
 
 
  |