text: /*! cornerstone-web-image-loader - 2.1.1 - 2018-12-05 | (c) 2016 Chris Hafey | https://github.com/cornerstonejs/cornerstoneWebImageLoader */
  (function webpackUniversalModuleDefinition(root, factory) {
  	if(typeof exports === 'object' && typeof module === 'object')
  		module.exports = factory();
  	else if(typeof define === 'function' && define.amd)
  		define("cornerstoneWebImageLoader", [], factory);
  	else if(typeof exports === 'object')
  		exports["cornerstoneWebImageLoader"] = factory();
  	else
  		root["cornerstoneWebImageLoader"] = factory();
  })(window, function() {
  return /******/ (function(modules) { // webpackBootstrap
  /******/ 	function hotDisposeChunk(chunkId) {
  /******/ 		delete installedChunks[chunkId];
  /******/ 	}
  /******/ 	var parentHotUpdateCallback = window["webpackHotUpdate_name_"];
  /******/ 	window["webpackHotUpdate_name_"] = // eslint-disable-next-line no-unused-vars
  /******/ 	function webpackHotUpdateCallback(chunkId, moreModules) {
  /******/ 		hotAddUpdateChunk(chunkId, moreModules);
  /******/ 		if (parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules);
  /******/ 	} ;
  /******/
  /******/ 	// eslint-disable-next-line no-unused-vars
  /******/ 	function hotDownloadUpdateChunk(chunkId) {
  /******/ 		var head = document.getElementsByTagName("head")[0];
  /******/ 		var script = document.createElement("script");
  /******/ 		script.charset = "utf-8";
  /******/ 		script.src = __webpack_require__.p + "" + chunkId + "." + hotCurrentHash + ".hot-update.js";
  /******/ 		;
  /******/ 		head.appendChild(script);
  /******/ 	}
  /******/
  /******/ 	// eslint-disable-next-line no-unused-vars
  /******/ 	function hotDownloadManifest(requestTimeout) {
  /******/ 		requestTimeout = requestTimeout || 10000;
  /******/ 		return new Promise(function(resolve, reject) {
  /******/ 			if (typeof XMLHttpRequest === "undefined")
  /******/ 				return reject(new Error("No browser support"));
  /******/ 			try {
  /******/ 				var request = new XMLHttpRequest();
  /******/ 				var requestPath = __webpack_require__.p + "" + hotCurrentHash + ".hot-update.json";
  /******/ 				request.open("GET", requestPath, true);
  /******/ 				request.timeout = requestTimeout;
  /******/ 				request.send(null);
  /******/ 			} catch (err) {
  /******/ 				return reject(err);
  /******/ 			}
  /******/ 			request.onreadystatechange = function() {
  /******/ 				if (request.readyState !== 4) return;
  /******/ 				if (request.status === 0) {
  /******/ 					// timeout
  /******/ 					reject(
  /******/ 						new Error("Manifest request to " + requestPath + " timed out.")
  /******/ 					);
  /******/ 				} else if (request.status === 404) {
  /******/ 					// no update available
  /******/ 					resolve();
  /******/ 				} else if (request.status !== 200 && request.status !== 304) {
  /******/ 					// other failure
  /******/ 					reject(new Error("Manifest request to " + requestPath + " failed."));
  /******/ 				} else {
  /******/ 					// success
  /******/ 					try {
  /******/ 						var update = JSON.parse(request.responseText);
  /******/ 					} catch (e) {
  /******/ 						reject(e);
  /******/ 						return;
  /******/ 					}
  /******/ 					resolve(update);
  /******/ 				}
  /******/ 			};
  /******/ 		});
  /******/ 	}
  /******/
  /******/ 	var hotApplyOnUpdate = true;
  /******/ 	var hotCurrentHash = "65302f76cb834101100f"; // eslint-disable-line no-unused-vars
  /******/ 	var hotRequestTimeout = 10000;
  /******/ 	var hotCurrentModuleData = {};
  /******/ 	var hotCurrentChildModule; // eslint-disable-line no-unused-vars
  /******/ 	var hotCurrentParents = []; // eslint-disable-line no-unused-vars
  /******/ 	var hotCurrentParentsTemp = []; // eslint-disable-line no-unused-vars
  /******/
  /******/ 	// eslint-disable-next-line no-unused-vars
  /******/ 	function hotCreateRequire(moduleId) {
  /******/ 		var me = installedModules[moduleId];
  /******/ 		if (!me) return __webpack_require__;
  /******/ 		var fn = function(request) {
  /******/ 			if (me.hot.active) {
  /******/ 				if (installedModules[request]) {
  /******/ 					if (installedModules[request].parents.indexOf(moduleId) === -1)
  /******/ 						installedModules[request].parents.push(moduleId);
  /******/ 				} else {
  /******/ 					hotCurrentParents = [moduleId];
  /******/ 					hotCurrentChildModule = request;
  /******/ 				}
  /******/ 				if (me.children.indexOf(request) === -1) me.children.push(request);
  /******/ 			} else {
  /******/ 				console.warn(
  /******/ 					"[HMR] unexpected require(" +
  /******/ 						request +
  /******/ 						") from disposed module " +
  /******/ 						moduleId
  /******/ 				);
  /******/ 				hotCurrentParents = [];
  /******/ 			}
  /******/ 			return __webpack_require__(request);
  /******/ 		};
  /******/ 		var ObjectFactory = function ObjectFactory(name) {
  /******/ 			return {
  /******/ 				configurable: true,
  /******/ 				enumerable: true,
  /******/ 				get: function() {
  /******/ 					return __webpack_require__[name];
  /******/ 				},
  /******/ 				set: function(value) {
  /******/ 					__webpack_require__[name] = value;
  /******/ 				}
  /******/ 			};
  /******/ 		};
  /******/ 		for (var name in __webpack_require__) {
  /******/ 			if (
  /******/ 				Object.prototype.hasOwnProperty.call(__webpack_require__, name) &&
  /******/ 				name !== "e"
  /******/ 			) {
  /******/ 				Object.defineProperty(fn, name, ObjectFactory(name));
  /******/ 			}
  /******/ 		}
  /******/ 		fn.e = function(chunkId) {
  /******/ 			if (hotStatus === "ready") hotSetStatus("prepare");
  /******/ 			hotChunksLoading++;
  /******/ 			return __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) {
  /******/ 				finishChunkLoading();
  /******/ 				throw err;
  /******/ 			});
  /******/
  /******/ 			function finishChunkLoading() {
  /******/ 				hotChunksLoading--;
  /******/ 				if (hotStatus === "prepare") {
  /******/ 					if (!hotWaitingFilesMap[chunkId]) {
  /******/ 						hotEnsureUpdateChunk(chunkId);
  /******/ 					}
  /******/ 					if (hotChunksLoading === 0 && hotWaitingFiles === 0) {
  /******/ 						hotUpdateDownloaded();
  /******/ 					}
  /******/ 				}
  /******/ 			}
  /******/ 		};
  /******/ 		return fn;
  /******/ 	}
  /******/
  /******/ 	// eslint-disable-next-line no-unused-vars
  /******/ 	function hotCreateModule(moduleId) {
  /******/ 		var hot = {
  /******/ 			// private stuff
  /******/ 			_acceptedDependencies: {},
  /******/ 			_declinedDependencies: {},
  /******/ 			_selfAccepted: false,
  /******/ 			_selfDeclined: false,
  /******/ 			_disposeHandlers: [],
  /******/ 			_main: hotCurrentChildModule !== moduleId,
  /******/
  /******/ 			// Module API
  /******/ 			active: true,
  /******/ 			accept: function(dep, callback) {
  /******/ 				if (typeof dep === "undefined") hot._selfAccepted = true;
  /******/ 				else if (typeof dep === "function") hot._selfAccepted = dep;
  /******/ 				else if (typeof dep === "object")
  /******/ 					for (var i = 0; i < dep.length; i++)
  /******/ 						hot._acceptedDependencies[dep[i]] = callback || function() {};
  /******/ 				else hot._acceptedDependencies[dep] = callback || function() {};
  /******/ 			},
  /******/ 			decline: function(dep) {
  /******/ 				if (typeof dep === "undefined") hot._selfDeclined = true;
  /******/ 				else if (typeof dep === "object")
  /******/ 					for (var i = 0; i < dep.length; i++)
  /******/ 						hot._declinedDependencies[dep[i]] = true;
  /******/ 				else hot._declinedDependencies[dep] = true;
  /******/ 			},
  /******/ 			dispose: function(callback) {
  /******/ 				hot._disposeHandlers.push(callback);
  /******/ 			},
  /******/ 			addDisposeHandler: function(callback) {
  /******/ 				hot._disposeHandlers.push(callback);
  /******/ 			},
  /******/ 			removeDisposeHandler: function(callback) {
  /******/ 				var idx = hot._disposeHandlers.indexOf(callback);
  /******/ 				if (idx >= 0) hot._disposeHandlers.splice(idx, 1);
  /******/ 			},
  /******/
  /******/ 			// Management API
  /******/ 			check: hotCheck,
  /******/ 			apply: hotApply,
  /******/ 			status: function(l) {
  /******/ 				if (!l) return hotStatus;
  /******/ 				hotStatusHandlers.push(l);
  /******/ 			},
  /******/ 			addStatusHandler: function(l) {
  /******/ 				hotStatusHandlers.push(l);
  /******/ 			},
  /******/ 			removeStatusHandler: function(l) {
  /******/ 				var idx = hotStatusHandlers.indexOf(l);
  /******/ 				if (idx >= 0) hotStatusHandlers.splice(idx, 1);
  /******/ 			},
  /******/
  /******/ 			//inherit from previous dispose call
  /******/ 			data: hotCurrentModuleData[moduleId]
  /******/ 		};
  /******/ 		hotCurrentChildModule = undefined;
  /******/ 		return hot;
  /******/ 	}
  /******/
  /******/ 	var hotStatusHandlers = [];
  /******/ 	var hotStatus = "idle";
  /******/
  /******/ 	function hotSetStatus(newStatus) {
  /******/ 		hotStatus = newStatus;
  /******/ 		for (var i = 0; i < hotStatusHandlers.length; i++)
  /******/ 			hotStatusHandlers[i].call(null, newStatus);
  /******/ 	}
  /******/
  /******/ 	// while downloading
  /******/ 	var hotWaitingFiles = 0;
  /******/ 	var hotChunksLoading = 0;
  /******/ 	var hotWaitingFilesMap = {};
  /******/ 	var hotRequestedFilesMap = {};
  /******/ 	var hotAvailableFilesMap = {};
  /******/ 	var hotDeferred;
  /******/
  /******/ 	// The update info
  /******/ 	var hotUpdate, hotUpdateNewHash;
  /******/
  /******/ 	function toModuleId(id) {
  /******/ 		var isNumber = +id + "" === id;
  /******/ 		return isNumber ? +id : id;
  /******/ 	}
  /******/
  /******/ 	function hotCheck(apply) {
  /******/ 		if (hotStatus !== "idle")
  /******/ 			throw new Error("check() is only allowed in idle status");
  /******/ 		hotApplyOnUpdate = apply;
  /******/ 		hotSetStatus("check");
  /******/ 		return hotDownloadManifest(hotRequestTimeout).then(function(update) {
  /******/ 			if (!update) {
  /******/ 				hotSetStatus("idle");
  /******/ 				return null;
  /******/ 			}
  /******/ 			hotRequestedFilesMap = {};
  /******/ 			hotWaitingFilesMap = {};
  /******/ 			hotAvailableFilesMap = update.c;
  /******/ 			hotUpdateNewHash = update.h;
  /******/
  /******/ 			hotSetStatus("prepare");
  /******/ 			var promise = new Promise(function(resolve, reject) {
  /******/ 				hotDeferred = {
  /******/ 					resolve: resolve,
  /******/ 					reject: reject
  /******/ 				};
  /******/ 			});
  /******/ 			hotUpdate = {};
  /******/ 			var chunkId = "cornerstoneWebImageLoader";
  /******/ 			{
  /******/ 				// eslint-disable-line no-lone-blocks
  /******/ 				/*globals chunkId */
  /******/ 				hotEnsureUpdateChunk(chunkId);
  /******/ 			}
  /******/ 			if (
  /******/ 				hotStatus === "prepare" &&
  /******/ 				hotChunksLoading === 0 &&
  /******/ 				hotWaitingFiles === 0
  /******/ 			) {
  /******/ 				hotUpdateDownloaded();
  /******/ 			}
  /******/ 			return promise;
  /******/ 		});
  /******/ 	}
  /******/
  /******/ 	// eslint-disable-next-line no-unused-vars
  /******/ 	function hotAddUpdateChunk(chunkId, moreModules) {
  /******/ 		if (!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId])
  /******/ 			return;
  /******/ 		hotRequestedFilesMap[chunkId] = false;
  /******/ 		for (var moduleId in moreModules) {
  /******/ 			if (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
  /******/ 				hotUpdate[moduleId] = moreModules[moduleId];
  /******/ 			}
  /******/ 		}
  /******/ 		if (--hotWaitingFiles === 0 && hotChunksLoading === 0) {
  /******/ 			hotUpdateDownloaded();
  /******/ 		}
  /******/ 	}
  /******/
  /******/ 	function hotEnsureUpdateChunk(chunkId) {
  /******/ 		if (!hotAvailableFilesMap[chunkId]) {
  /******/ 			hotWaitingFilesMap[chunkId] = true;
  /******/ 		} else {
  /******/ 			hotRequestedFilesMap[chunkId] = true;
  /******/ 			hotWaitingFiles++;
  /******/ 			hotDownloadUpdateChunk(chunkId);
  /******/ 		}
  /******/ 	}
  /******/
  /******/ 	function hotUpdateDownloaded() {
  /******/ 		hotSetStatus("ready");
  /******/ 		var deferred = hotDeferred;
  /******/ 		hotDeferred = null;
  /******/ 		if (!deferred) return;
  /******/ 		if (hotApplyOnUpdate) {
  /******/ 			// Wrap deferred object in Promise to mark it as a well-handled Promise to
  /******/ 			// avoid triggering uncaught exception warning in Chrome.
  /******/ 			// See https://bugs.chromium.org/p/chromium/issues/detail?id=465666
  /******/ 			Promise.resolve()
  /******/ 				.then(function() {
  /******/ 					return hotApply(hotApplyOnUpdate);
  /******/ 				})
  /******/ 				.then(
  /******/ 					function(result) {
  /******/ 						deferred.resolve(result);
  /******/ 					},
  /******/ 					function(err) {
  /******/ 						deferred.reject(err);
  /******/ 					}
  /******/ 				);
  /******/ 		} else {
  /******/ 			var outdatedModules = [];
  /******/ 			for (var id in hotUpdate) {
  /******/ 				if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {
  /******/ 					outdatedModules.push(toModuleId(id));
  /******/ 				}
  /******/ 			}
  /******/ 			deferred.resolve(outdatedModules);
  /******/ 		}
  /******/ 	}
  /******/
  /******/ 	function hotApply(options) {
  /******/ 		if (hotStatus !== "ready")
  /******/ 			throw new Error("apply() is only allowed in ready status");
  /******/ 		options = options || {};
  /******/
  /******/ 		var cb;
  /******/ 		var i;
  /******/ 		var j;
  /******/ 		var module;
  /******/ 		var moduleId;
  /******/
  /******/ 		function getAffectedStuff(updateModuleId) {
  /******/ 			var outdatedModules = [updateModuleId];
  /******/ 			var outdatedDependencies = {};
  /******/
  /******/ 			var queue = outdatedModules.slice().map(function(id) {
  /******/ 				return {
  /******/ 					chain: [id],
  /******/ 					id: id
  /******/ 				};
  /******/ 			});
  /******/ 			while (queue.length > 0) {
  /******/ 				var queueItem = queue.pop();
  /******/ 				var moduleId = queueItem.id;
  /******/ 				var chain = queueItem.chain;
  /******/ 				module = installedModules[moduleId];
  /******/ 				if (!module || module.hot._selfAccepted) continue;
  /******/ 				if (module.hot._selfDeclined) {
  /******/ 					return {
  /******/ 						type: "self-declined",
  /******/ 						chain: chain,
  /******/ 						moduleId: moduleId
  /******/ 					};
  /******/ 				}
  /******/ 				if (module.hot._main) {
  /******/ 					return {
  /******/ 						type: "unaccepted",
  /******/ 						chain: chain,
  /******/ 						moduleId: moduleId
  /******/ 					};
  /******/ 				}
  /******/ 				for (var i = 0; i < module.parents.length; i++) {
  /******/ 					var parentId = module.parents[i];
  /******/ 					var parent = installedModules[parentId];
  /******/ 					if (!parent) continue;
  /******/ 					if (parent.hot._declinedDependencies[moduleId]) {
  /******/ 						return {
  /******/ 							type: "declined",
  /******/ 							chain: chain.concat([parentId]),
  /******/ 							moduleId: moduleId,
  /******/ 							parentId: parentId
  /******/ 						};
  /******/ 					}
  /******/ 					if (outdatedModules.indexOf(parentId) !== -1) continue;
  /******/ 					if (parent.hot._acceptedDependencies[moduleId]) {
  /******/ 						if (!outdatedDependencies[parentId])
  /******/ 							outdatedDependencies[parentId] = [];
  /******/ 						addAllToSet(outdatedDependencies[parentId], [moduleId]);
  /******/ 						continue;
  /******/ 					}
  /******/ 					delete outdatedDependencies[parentId];
  /******/ 					outdatedModules.push(parentId);
  /******/ 					queue.push({
  /******/ 						chain: chain.concat([parentId]),
  /******/ 						id: parentId
  /******/ 					});
  /******/ 				}
  /******/ 			}
  /******/
  /******/ 			return {
  /******/ 				type: "accepted",
  /******/ 				moduleId: updateModuleId,
  /******/ 				outdatedModules: outdatedModules,
  /******/ 				outdatedDependencies: outdatedDependencies
  /******/ 			};
  /******/ 		}
  /******/
  /******/ 		function addAllToSet(a, b) {
  /******/ 			for (var i = 0; i < b.length; i++) {
  /******/ 				var item = b[i];
  /******/ 				if (a.indexOf(item) === -1) a.push(item);
  /******/ 			}
  /******/ 		}
  /******/
  /******/ 		// at begin all updates modules are outdated
  /******/ 		// the "outdated" status can propagate to parents if they don't accept the children
  /******/ 		var outdatedDependencies = {};
  /******/ 		var outdatedModules = [];
  /******/ 		var appliedUpdate = {};
  /******/
  /******/ 		var warnUnexpectedRequire = function warnUnexpectedRequire() {
  /******/ 			console.warn(
  /******/ 				"[HMR] unexpected require(" + result.moduleId + ") to disposed module"
  /******/ 			);
  /******/ 		};
  /******/
  /******/ 		for (var id in hotUpdate) {
  /******/ 			if (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {
  /******/ 				moduleId = toModuleId(id);
  /******/ 				var result;
  /******/ 				if (hotUpdate[id]) {
  /******/ 					result = getAffectedStuff(moduleId);
  /******/ 				} else {
  /******/ 					result = {
  /******/ 						type: "disposed",
  /******/ 						moduleId: id
  /******/ 					};
  /******/ 				}
  /******/ 				var abortError = false;
  /******/ 				var doApply = false;
  /******/ 				var doDispose = false;
  /******/ 				var chainInfo = "";
  /******/ 				if (result.chain) {
  /******/ 					chainInfo = "\nUpdate propagation: " + result.chain.join(" -> ");
  /******/ 				}
  /******/ 				switch (result.type) {
  /******/ 					case "self-declined":
  /******/ 						if (options.onDeclined) options.onDeclined(result);
  /******/ 						if (!options.ignoreDeclined)
  /******/ 							abortError = new Error(
  /******/ 								"Aborted because of self decline: " +
  /******/ 									result.moduleId +
  /******/ 									chainInfo
  /******/ 							);
  /******/ 						break;
  /******/ 					case "declined":
  /******/ 						if (options.onDeclined) options.onDeclined(result);
  /******/ 						if (!options.ignoreDeclined)
  /******/ 							abortError = new Error(
  /******/ 								"Aborted because of declined dependency: " +
  /******/ 									result.moduleId +
  /******/ 									" in " +
  /******/ 									result.parentId +
  /******/ 									chainInfo
  /******/ 							);
  /******/ 						break;
  /******/ 					case "unaccepted":
  /******/ 						if (options.onUnaccepted) options.onUnaccepted(result);
  /******/ 						if (!options.ignoreUnaccepted)
  /******/ 							abortError = new Error(
  /******/ 								"Aborted because " + moduleId + " is not accepted" + chainInfo
  /******/ 							);
  /******/ 						break;
  /******/ 					case "accepted":
  /******/ 						if (options.onAccepted) options.onAccepted(result);
  /******/ 						doApply = true;
  /******/ 						break;
  /******/ 					case "disposed":
  /******/ 						if (options.onDisposed) options.onDisposed(result);
  /******/ 						doDispose = true;
  /******/ 						break;
  /******/ 					default:
  /******/ 						throw new Error("Unexception type " + result.type);
  /******/ 				}
  /******/ 				if (abortError) {
  /******/ 					hotSetStatus("abort");
  /******/ 					return Promise.reject(abortError);
  /******/ 				}
  /******/ 				if (doApply) {
  /******/ 					appliedUpdate[moduleId] = hotUpdate[moduleId];
  /******/ 					addAllToSet(outdatedModules, result.outdatedModules);
  /******/ 					for (moduleId in result.outdatedDependencies) {
  /******/ 						if (
  /******/ 							Object.prototype.hasOwnProperty.call(
  /******/ 								result.outdatedDependencies,
  /******/ 								moduleId
  /******/ 							)
  /******/ 						) {
  /******/ 							if (!outdatedDependencies[moduleId])
  /******/ 								outdatedDependencies[moduleId] = [];
  /******/ 							addAllToSet(
  /******/ 								outdatedDependencies[moduleId],
  /******/ 								result.outdatedDependencies[moduleId]
  /******/ 							);
  /******/ 						}
  /******/ 					}
  /******/ 				}
  /******/ 				if (doDispose) {
  /******/ 					addAllToSet(outdatedModules, [result.moduleId]);
  /******/ 					appliedUpdate[moduleId] = warnUnexpectedRequire;
  /******/ 				}
  /******/ 			}
  /******/ 		}
  /******/
  /******/ 		// Store self accepted outdated modules to require them later by the module system
  /******/ 		var outdatedSelfAcceptedModules = [];
  /******/ 		for (i = 0; i < outdatedModules.length; i++) {
  /******/ 			moduleId = outdatedModules[i];
  /******/ 			if (
  /******/ 				installedModules[moduleId] &&
  /******/ 				installedModules[moduleId].hot._selfAccepted
  /******/ 			)
  /******/ 				outdatedSelfAcceptedModules.push({
  /******/ 					module: moduleId,
  /******/ 					errorHandler: installedModules[moduleId].hot._selfAccepted
  /******/ 				});
  /******/ 		}
  /******/
  /******/ 		// Now in "dispose" phase
  /******/ 		hotSetStatus("dispose");
  /******/ 		Object.keys(hotAvailableFilesMap).forEach(function(chunkId) {
  /******/ 			if (hotAvailableFilesMap[chunkId] === false) {
  /******/ 				hotDisposeChunk(chunkId);
  /******/ 			}
  /******/ 		});
  /******/
  /******/ 		var idx;
  /******/ 		var queue = outdatedModules.slice();
  /******/ 		while (queue.length > 0) {
  /******/ 			moduleId = queue.pop();
  /******/ 			module = installedModules[moduleId];
  /******/ 			if (!module) continue;
  /******/
  /******/ 			var data = {};
  /******/
  /******/ 			// Call dispose handlers
  /******/ 			var disposeHandlers = module.hot._disposeHandlers;
  /******/ 			for (j = 0; j < disposeHandlers.length; j++) {
  /******/ 				cb = disposeHandlers[j];
  /******/ 				cb(data);
  /******/ 			}
  /******/ 			hotCurrentModuleData[moduleId] = data;
  /******/
  /******/ 			// disable module (this disables requires from this module)
  /******/ 			module.hot.active = false;
  /******/
  /******/ 			// remove module from cache
  /******/ 			delete installedModules[moduleId];
  /******/
  /******/ 			// when disposing there is no need to call dispose handler
  /******/ 			delete outdatedDependencies[moduleId];
  /******/
  /******/ 			// remove "parents" references from all children
  /******/ 			for (j = 0; j < module.children.length; j++) {
  /******/ 				var child = installedModules[module.children[j]];
  /******/ 				if (!child) continue;
  /******/ 				idx = child.parents.indexOf(moduleId);
  /******/ 				if (idx >= 0) {
  /******/ 					child.parents.splice(idx, 1);
  /******/ 				}
  /******/ 			}
  /******/ 		}
  /******/
  /******/ 		// remove outdated dependency from module children
  /******/ 		var dependency;
  /******/ 		var moduleOutdatedDependencies;
  /******/ 		for (moduleId in outdatedDependencies) {
  /******/ 			if (
  /******/ 				Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)
  /******/ 			) {
  /******/ 				module = installedModules[moduleId];
  /******/ 				if (module) {
  /******/ 					moduleOutdatedDependencies = outdatedDependencies[moduleId];
  /******/ 					for (j = 0; j < moduleOutdatedDependencies.length; j++) {
  /******/ 						dependency = moduleOutdatedDependencies[j];
  /******/ 						idx = module.children.indexOf(dependency);
  /******/ 						if (idx >= 0) module.children.splice(idx, 1);
  /******/ 					}
  /******/ 				}
  /******/ 			}
  /******/ 		}
  /******/
  /******/ 		// Not in "apply" phase
  /******/ 		hotSetStatus("apply");
  /******/
  /******/ 		hotCurrentHash = hotUpdateNewHash;
  /******/
  /******/ 		// insert new code
  /******/ 		for (moduleId in appliedUpdate) {
  /******/ 			if (Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) {
  /******/ 				modules[moduleId] = appliedUpdate[moduleId];
  /******/ 			}
  /******/ 		}
  /******/
  /******/ 		// call accept handlers
  /******/ 		var error = null;
  /******/ 		for (moduleId in outdatedDependencies) {
  /******/ 			if (
  /******/ 				Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)
  /******/ 			) {
  /******/ 				module = installedModules[moduleId];
  /******/ 				if (module) {
  /******/ 					moduleOutdatedDependencies = outdatedDependencies[moduleId];
  /******/ 					var callbacks = [];
  /******/ 					for (i = 0; i < moduleOutdatedDependencies.length; i++) {
  /******/ 						dependency = moduleOutdatedDependencies[i];
  /******/ 						cb = module.hot._acceptedDependencies[dependency];
  /******/ 						if (cb) {
  /******/ 							if (callbacks.indexOf(cb) !== -1) continue;
  /******/ 							callbacks.push(cb);
  /******/ 						}
  /******/ 					}
  /******/ 					for (i = 0; i < callbacks.length; i++) {
  /******/ 						cb = callbacks[i];
  /******/ 						try {
  /******/ 							cb(moduleOutdatedDependencies);
  /******/ 						} catch (err) {
  /******/ 							if (options.onErrored) {
  /******/ 								options.onErrored({
  /******/ 									type: "accept-errored",
  /******/ 									moduleId: moduleId,
  /******/ 									dependencyId: moduleOutdatedDependencies[i],
  /******/ 									error: err
  /******/ 								});
  /******/ 							}
  /******/ 							if (!options.ignoreErrored) {
  /******/ 								if (!error) error = err;
  /******/ 							}
  /******/ 						}
  /******/ 					}
  /******/ 				}
  /******/ 			}
  /******/ 		}
  /******/
  /******/ 		// Load self accepted modules
  /******/ 		for (i = 0; i < outdatedSelfAcceptedModules.length; i++) {
  /******/ 			var item = outdatedSelfAcceptedModules[i];
  /******/ 			moduleId = item.module;
  /******/ 			hotCurrentParents = [moduleId];
  /******/ 			try {
  /******/ 				__webpack_require__(moduleId);
  /******/ 			} catch (err) {
  /******/ 				if (typeof item.errorHandler === "function") {
  /******/ 					try {
  /******/ 						item.errorHandler(err);
  /******/ 					} catch (err2) {
  /******/ 						if (options.onErrored) {
  /******/ 							options.onErrored({
  /******/ 								type: "self-accept-error-handler-errored",
  /******/ 								moduleId: moduleId,
  /******/ 								error: err2,
  /******/ 								originalError: err
  /******/ 							});
  /******/ 						}
  /******/ 						if (!options.ignoreErrored) {
  /******/ 							if (!error) error = err2;
  /******/ 						}
  /******/ 						if (!error) error = err;
  /******/ 					}
  /******/ 				} else {
  /******/ 					if (options.onErrored) {
  /******/ 						options.onErrored({
  /******/ 							type: "self-accept-errored",
  /******/ 							moduleId: moduleId,
  /******/ 							error: err
  /******/ 						});
  /******/ 					}
  /******/ 					if (!options.ignoreErrored) {
  /******/ 						if (!error) error = err;
  /******/ 					}
  /******/ 				}
  /******/ 			}
  /******/ 		}
  /******/
  /******/ 		// handle errors in accept handlers and self accepted module load
  /******/ 		if (error) {
  /******/ 			hotSetStatus("fail");
  /******/ 			return Promise.reject(error);
  /******/ 		}
  /******/
  /******/ 		hotSetStatus("idle");
  /******/ 		return new Promise(function(resolve) {
  /******/ 			resolve(outdatedModules);
  /******/ 		});
  /******/ 	}
  /******/
  /******/ 	// The module cache
  /******/ 	var installedModules = {};
  /******/
  /******/ 	// The require function
  /******/ 	function __webpack_require__(moduleId) {
  /******/
  /******/ 		// Check if module is in cache
  /******/ 		if(installedModules[moduleId]) {
  /******/ 			return installedModules[moduleId].exports;
  /******/ 		}
  /******/ 		// Create a new module (and put it into the cache)
  /******/ 		var module = installedModules[moduleId] = {
  /******/ 			i: moduleId,
  /******/ 			l: false,
  /******/ 			exports: {},
  /******/ 			hot: hotCreateModule(moduleId),
  /******/ 			parents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp),
  /******/ 			children: []
  /******/ 		};
  /******/
  /******/ 		// Execute the module function
  /******/ 		modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
  /******/
  /******/ 		// Flag the module as loaded
  /******/ 		module.l = true;
  /******/
  /******/ 		// Return the exports of the module
  /******/ 		return module.exports;
  /******/ 	}
  /******/
  /******/
  /******/ 	// expose the modules object (__webpack_modules__)
  /******/ 	__webpack_require__.m = modules;
  /******/
  /******/ 	// expose the module cache
  /******/ 	__webpack_require__.c = installedModules;
  /******/
  /******/ 	// define getter function for harmony exports
  /******/ 	__webpack_require__.d = function(exports, name, getter) {
  /******/ 		if(!__webpack_require__.o(exports, name)) {
  /******/ 			Object.defineProperty(exports, name, {
  /******/ 				configurable: false,
  /******/ 				enumerable: true,
  /******/ 				get: getter
  /******/ 			});
  /******/ 		}
  /******/ 	};
  /******/
  /******/ 	// define __esModule on exports
  /******/ 	__webpack_require__.r = function(exports) {
  /******/ 		Object.defineProperty(exports, '__esModule', { value: true });
  /******/ 	};
  /******/
  /******/ 	// getDefaultExport function for compatibility with non-harmony modules
  /******/ 	__webpack_require__.n = function(module) {
  /******/ 		var getter = module && module.__esModule ?
  /******/ 			function getDefault() { return module['default']; } :
  /******/ 			function getModuleExports() { return module; };
  /******/ 		__webpack_require__.d(getter, 'a', getter);
  /******/ 		return getter;
  /******/ 	};
  /******/
  /******/ 	// Object.prototype.hasOwnProperty.call
  /******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
  /******/
  /******/ 	// __webpack_public_path__
  /******/ 	__webpack_require__.p = "";
  /******/
  /******/ 	// __webpack_hash__
  /******/ 	__webpack_require__.h = function() { return hotCurrentHash; };
  /******/
  /******/
  /******/ 	// Load entry module and return exports
  /******/ 	return hotCreateRequire("./index.js")(__webpack_require__.s = "./index.js");
  /******/ })
  /************************************************************************/
  /******/ ({
  
  /***/ "./arrayBufferToImage.js":
  /*!*******************************!*\
    !*** ./arrayBufferToImage.js ***!
    \*******************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  
  exports.default = function (arrayBuffer) {
    return new Promise(function (resolve, reject) {
      var image = new Image();
      var arrayBufferView = new Uint8Array(arrayBuffer);
      var blob = new Blob([arrayBufferView]);
      var urlCreator = window.URL || window.webkitURL;
      var imageUrl = urlCreator.createObjectURL(blob);
  
      image.src = imageUrl;
      image.onload = function () {
        resolve(image);
        urlCreator.revokeObjectURL(imageUrl);
      };
  
      image.onerror = function (error) {
        urlCreator.revokeObjectURL(imageUrl);
        reject(error);
      };
    });
  };
  
  /***/ }),
  
  /***/ "./createImage.js":
  /*!************************!*\
    !*** ./createImage.js ***!
    \************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  
  exports.default = function (image, imageId) {
    // extract the attributes we need
    var rows = image.naturalHeight;
    var columns = image.naturalWidth;
  
    function getPixelData() {
      var imageData = getImageData();
  
      return imageData.data;
    }
  
    function getImageData() {
      var context = void 0;
  
      if (lastImageIdDrawn === imageId) {
        context = canvas.getContext('2d');
      } else {
        canvas.height = image.naturalHeight;
        canvas.width = image.naturalWidth;
        context = canvas.getContext('2d');
        context.drawImage(image, 0, 0);
        lastImageIdDrawn = imageId;
      }
  
      return context.getImageData(0, 0, image.naturalWidth, image.naturalHeight);
    }
  
    function getCanvas() {
      if (lastImageIdDrawn === imageId) {
        return canvas;
      }
  
      canvas.height = image.naturalHeight;
      canvas.width = image.naturalWidth;
      var context = canvas.getContext('2d');
  
      context.drawImage(image, 0, 0);
      lastImageIdDrawn = imageId;
  
      return canvas;
    }
  
    // Extract the various attributes we need
    return {
      imageId: imageId,
      minPixelValue: 0,
      maxPixelValue: 255,
      slope: 1,
      intercept: 0,
      windowCenter: 128,
      windowWidth: 255,
      render: _externalModules.external.cornerstone.renderWebImage,
      getPixelData: getPixelData,
      getCanvas: getCanvas,
      getImage: function getImage() {
        return image;
      },
      rows: rows,
      columns: columns,
      height: rows,
      width: columns,
      color: true,
      rgba: false,
      columnPixelSpacing: undefined,
      rowPixelSpacing: undefined,
      invert: false,
      sizeInBytes: rows * columns * 4
    };
  };
  
  var _externalModules = __webpack_require__(/*! ./externalModules.js */ "./externalModules.js");
  
  var canvas = document.createElement('canvas');
  var lastImageIdDrawn = void 0;
  
  /**
   * creates a cornerstone Image object for the specified Image and imageId
   *
   * @param image - An Image
   * @param imageId - the imageId for this image
   * @returns Cornerstone Image Object
   */
  
  /***/ }),
  
  /***/ "./externalModules.js":
  /*!****************************!*\
    !*** ./externalModules.js ***!
    \****************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  exports.external = undefined;
  
  var _registerLoaders = __webpack_require__(/*! ./registerLoaders.js */ "./registerLoaders.js");
  
  var _registerLoaders2 = _interopRequireDefault(_registerLoaders);
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  
  var cornerstone = void 0;
  
  var external = {
    set cornerstone(cs) {
      cornerstone = cs;
  
      (0, _registerLoaders2.default)(cornerstone);
    },
    get cornerstone() {
      return cornerstone;
    }
  };
  
  exports.external = external;
  
  /***/ }),
  
  /***/ "./index.js":
  /*!******************!*\
    !*** ./index.js ***!
    \******************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  exports.external = exports.configure = exports.loadImage = exports.createImage = exports.arrayBufferToImage = undefined;
  
  var _arrayBufferToImage = __webpack_require__(/*! ./arrayBufferToImage.js */ "./arrayBufferToImage.js");
  
  var _arrayBufferToImage2 = _interopRequireDefault(_arrayBufferToImage);
  
  var _createImage = __webpack_require__(/*! ./createImage.js */ "./createImage.js");
  
  var _createImage2 = _interopRequireDefault(_createImage);
  
  var _loadImage = __webpack_require__(/*! ./loadImage.js */ "./loadImage.js");
  
  var _externalModules = __webpack_require__(/*! ./externalModules.js */ "./externalModules.js");
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  
  var cornerstoneWebImageLoader = {
    arrayBufferToImage: _arrayBufferToImage2.default,
    createImage: _createImage2.default,
    loadImage: _loadImage.loadImage,
    configure: _loadImage.configure,
    external: _externalModules.external
  };
  
  exports.arrayBufferToImage = _arrayBufferToImage2.default;
  exports.createImage = _createImage2.default;
  exports.loadImage = _loadImage.loadImage;
  exports.configure = _loadImage.configure;
  exports.external = _externalModules.external;
  exports.default = cornerstoneWebImageLoader;
  
  /***/ }),
  
  /***/ "./loadImage.js":
  /*!**********************!*\
    !*** ./loadImage.js ***!
    \**********************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  exports.loadImage = loadImage;
  exports.configure = configure;
  
  var _externalModules = __webpack_require__(/*! ./externalModules.js */ "./externalModules.js");
  
  var _arrayBufferToImage = __webpack_require__(/*! ./arrayBufferToImage.js */ "./arrayBufferToImage.js");
  
  var _arrayBufferToImage2 = _interopRequireDefault(_arrayBufferToImage);
  
  var _createImage = __webpack_require__(/*! ./createImage.js */ "./createImage.js");
  
  var _createImage2 = _interopRequireDefault(_createImage);
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  
  //
  // This is a cornerstone image loader for web images such as PNG and JPEG
  //
  var options = {
    // callback allowing customization of the xhr (e.g. adding custom auth headers, cors, etc)
    beforeSend: function beforeSend() /* xhr */{}
  };
  
  // Loads an image given a url to an image
  function loadImage(imageId) {
    var cornerstone = _externalModules.external.cornerstone;
  
    var xhr = new XMLHttpRequest();
  
    xhr.open('GET', imageId, true);
    xhr.responseType = 'arraybuffer';
    options.beforeSend(xhr);
  
    xhr.onprogress = function (oProgress) {
      if (oProgress.lengthComputable) {
        // evt.loaded the bytes browser receive
        // evt.total the total bytes set by the header
        var loaded = oProgress.loaded;
        var total = oProgress.total;
        var percentComplete = Math.round(loaded / total * 100);
  
        var eventData = {
          imageId: imageId,
          loaded: loaded,
          total: total,
          percentComplete: percentComplete
        };
  
        cornerstone.triggerEvent(cornerstone.events, 'cornerstoneimageloadprogress', eventData);
      }
    };
  
    var promise = new Promise(function (resolve, reject) {
      xhr.onload = function () {
        var imagePromise = (0, _arrayBufferToImage2.default)(this.response);
  
        imagePromise.then(function (image) {
          var imageObject = (0, _createImage2.default)(image, imageId);
  
          resolve(imageObject);
        }, reject);
      };
  
      xhr.send();
    });
  
    var cancelFn = function cancelFn() {
      xhr.abort();
    };
  
    return {
      promise: promise,
      cancelFn: cancelFn
    };
  }
  
  function configure(opts) {
    options = opts;
  }
  
  /***/ }),
  
  /***/ "./registerLoaders.js":
  /*!****************************!*\
    !*** ./registerLoaders.js ***!
    \****************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  
  exports.default = function (cornerstone) {
    // Register the http and https prefixes so we can use standard web urls directly
    cornerstone.registerImageLoader('http', _loadImage.loadImage);
    cornerstone.registerImageLoader('https', _loadImage.loadImage);
  };
  
  var _loadImage = __webpack_require__(/*! ./loadImage.js */ "./loadImage.js");
  
  /***/ })
  
  /******/ });
  });
  //# sourceMappingURL=cornerstoneWebImageLoader.js.map