From 768e2ce95df594867cf0e51fec13b6fc120be1a9 Mon Sep 17 00:00:00 2001 From: Jeffrey Warren Date: Fri, 4 May 2018 14:27:48 -0400 Subject: [PATCH] Ui refactor and drag to crop (#245) * Drag to crop rebase step (#244) * 1.1.0 * 1.2.0 * added plugin Signed-off-by: tech4GT * drag to crop enabled Signed-off-by: tech4GT * fix Signed-off-by: tech4GT * improvement Signed-off-by: tech4GT * done dragToCrop Signed-off-by: tech4GT * done with updated ui Signed-off-by: tech4GT * solved bug for multiple consecutive crops Signed-off-by: tech4GT * fixed and updated Signed-off-by: tech4GT * externalized image area select code * major refactoring of crop drag and demo ui modules * work on crop module and ui refactor * completed Step drag ui refactor * revert unbuilt to rebase * built and version bump * various fixes --- Gruntfile.js | 1 + dist/image-sequencer.js | 281 +++++++++++++++++-------- dist/image-sequencer.min.js | 2 +- examples/demo.js | 204 ++---------------- examples/index.html | 127 ++++++----- examples/lib/defaultHtmlSequencerUi.js | 60 ++++++ examples/lib/defaultHtmlStepUi.js | 184 ++++++++++++++++ package.json | 5 +- src/AddStep.js | 22 +- src/modules/Crop/Module.js | 82 +++++--- src/modules/Crop/Ui.js | 97 +++++++++ src/ui/UserInterface.js | 28 +-- 12 files changed, 696 insertions(+), 397 deletions(-) create mode 100644 examples/lib/defaultHtmlSequencerUi.js create mode 100644 examples/lib/defaultHtmlStepUi.js create mode 100644 src/modules/Crop/Ui.js diff --git a/Gruntfile.js b/Gruntfile.js index 7c8a0499..b76f0194 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -17,6 +17,7 @@ module.exports = function(grunt) { files: [ 'src/*.js', 'src/*/*.js', + 'src/*/*/*.js', 'Gruntfile.js' ], tasks: [ 'build:js' ] diff --git a/dist/image-sequencer.js b/dist/image-sequencer.js index 7397b880..5c601f49 100755 --- a/dist/image-sequencer.js +++ b/dist/image-sequencer.js @@ -46073,32 +46073,32 @@ function hasOwnProperty(obj, prop) { }).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) },{"./support/isBuffer":130,"_process":104,"inherits":129}],132:[function(require,module,exports){ // add steps to the sequencer -function AddStep(ref, image, name, o) { +function AddStep(_sequencer, image, name, o) { function addStep(image, name, o_) { - var moduleInfo = ref.modules[name][1]; + var moduleInfo = _sequencer.modules[name][1]; - var o = ref.copy(o_); - o.number = ref.options.sequencerCounter++; // gives a unique ID to each step + var o = _sequencer.copy(o_); + o.number = _sequencer.options.sequencerCounter++; // gives a unique ID to each step o.name = o_.name || name || moduleInfo.name; o.description = o_.description || moduleInfo.description; o.selector = o_.selector || 'ismod-' + name; - o.container = o_.container || ref.options.selector; + o.container = o_.container || _sequencer.options.selector; o.image = image; - o.inBrowser = ref.options.inBrowser; + o.inBrowser = _sequencer.options.inBrowser; o.step = { name: o.name, description: o.description, ID: o.number, imageName: o.image, - inBrowser: ref.options.inBrowser, - ui: ref.options.ui, + inBrowser: _sequencer.options.inBrowser, + ui: _sequencer.options.ui, options: o }; - var UI = ref.events; - var module = ref.modules[name][0](o,UI); - ref.images[image].steps.push(module); + var UI = _sequencer.events; + var module = _sequencer.modules[name][0](o,UI); + _sequencer.images[image].steps.push(module); return true; } @@ -46564,7 +46564,7 @@ ImageSequencer = function ImageSequencer(options) { } module.exports = ImageSequencer; -},{"./AddStep":132,"./ExportBin":133,"./FormatInput":134,"./InsertStep":136,"./Modules":137,"./ReplaceImage":138,"./Run":139,"./ui/LoadImage":169,"./ui/UserInterface":170,"fs":7}],136:[function(require,module,exports){ +},{"./AddStep":132,"./ExportBin":133,"./FormatInput":134,"./InsertStep":136,"./Modules":137,"./ReplaceImage":138,"./Run":139,"./ui/LoadImage":170,"./ui/UserInterface":171,"fs":7}],136:[function(require,module,exports){ // insert one or more steps at a given index in the sequencer function InsertStep(ref, image, index, name, o) { @@ -46642,7 +46642,7 @@ module.exports = { ] } -},{"./modules/Blur/Module":141,"./modules/Blur/info":142,"./modules/Brightness/Module":143,"./modules/Brightness/info":144,"./modules/Channel/Module":145,"./modules/Channel/info":146,"./modules/Colormap/Module":148,"./modules/Colormap/info":149,"./modules/Crop/Module":151,"./modules/Crop/info":152,"./modules/DecodeQr/Module":153,"./modules/DecodeQr/info":154,"./modules/Dynamic/Module":155,"./modules/Dynamic/info":156,"./modules/EdgeDetect/Module":158,"./modules/EdgeDetect/info":159,"./modules/FisheyeGl/Module":160,"./modules/FisheyeGl/info":161,"./modules/Invert/Module":162,"./modules/Invert/info":163,"./modules/Ndvi/Module":164,"./modules/Ndvi/info":165,"./modules/Saturation/Module":166,"./modules/Saturation/info":167}],138:[function(require,module,exports){ +},{"./modules/Blur/Module":141,"./modules/Blur/info":142,"./modules/Brightness/Module":143,"./modules/Brightness/info":144,"./modules/Channel/Module":145,"./modules/Channel/info":146,"./modules/Colormap/Module":148,"./modules/Colormap/info":149,"./modules/Crop/Module":151,"./modules/Crop/info":153,"./modules/DecodeQr/Module":154,"./modules/DecodeQr/info":155,"./modules/Dynamic/Module":156,"./modules/Dynamic/info":157,"./modules/EdgeDetect/Module":159,"./modules/EdgeDetect/info":160,"./modules/FisheyeGl/Module":161,"./modules/FisheyeGl/info":162,"./modules/Invert/Module":163,"./modules/Invert/info":164,"./modules/Ndvi/Module":165,"./modules/Ndvi/info":166,"./modules/Saturation/Module":167,"./modules/Saturation/info":168}],138:[function(require,module,exports){ // Uses a given image as input and replaces it with the output. // Works only in the browser. function ReplaceImage(ref,selector,steps,options) { @@ -46898,7 +46898,7 @@ module.exports = function Blur(options,UI){ } } -},{"../_nomodule/PixelManipulation.js":168,"./Blur":140}],142:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169,"./Blur":140}],142:[function(require,module,exports){ module.exports={ "name": "Blur", "description": "Gaussian blur an image by a given value, typically 0-5", @@ -46978,7 +46978,7 @@ module.exports = function Brightness(options,UI){ } } -},{"../_nomodule/PixelManipulation.js":168}],144:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169}],144:[function(require,module,exports){ module.exports={ "name": "Brightness", "description": "Change the brightness of the image by given percent value", @@ -47051,7 +47051,7 @@ module.exports = function Channel(options,UI) { } } -},{"../_nomodule/PixelManipulation.js":168}],146:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169}],146:[function(require,module,exports){ module.exports={ "name": "Channel", "description": "Displays only one color channel of an image -- default is green", @@ -47210,7 +47210,7 @@ module.exports = function Colormap(options,UI) { } } -},{"../_nomodule/PixelManipulation.js":168,"./Colormap":147}],149:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169,"./Colormap":147}],149:[function(require,module,exports){ module.exports={ "name": "Colormap", "description": "Maps brightness values (average of red, green & blue) to a given color lookup table, made up of a set of one more color gradients.\n\nFor example, 'cooler' colors like blue could represent low values, while 'hot' colors like red could represent high values.", @@ -47286,52 +47286,169 @@ module.exports = function Crop(input,options,callback) { * y = options.y * y = options.y + options.h */ - module.exports = function CropModule(options,UI) { +module.exports = function CropModule(options, UI) { - // TODO: we could also set this to {} if nil in AddModule.js to avoid this line: - options = options || {}; + // TODO: we could also set this to {} if nil in AddModule.js to avoid this line: + options = options || {}; - // Tell the UI that a step has been added - UI.onSetup(options.step); - var output; + // Tell the UI that a step has been added + UI.onSetup(options.step); // we should get UI to return the image thumbnail so we can attach our own UI extensions - // This function is caled everytime the step has to be redrawn - function draw(input,callback) { + // add our custom in-module html ui: + if (options.step.inBrowser) var ui = require('./Ui.js')(options.step, UI); + var output, + setupComplete = false; - // Tell the UI that the step has been triggered - UI.onDraw(options.step); - var step = this; + // This function is caled everytime the step has to be redrawn + function draw(input,callback) { - require('./Crop')(input,options,function(out,format){ + // Tell the UI that the step has been triggered + UI.onDraw(options.step); + var step = this; - // This output is accessible to Image Sequencer - step.output = { - src: out, - format: format - } + // save the input image; + // TODO: this should be moved to module API to persist the input image + options.step.input = input.src; - // This output is accessible to the UI - options.step.output = out; + require('./Crop')(input, options, function(out, format){ - // Tell the UI that the step has been drawn - UI.onComplete(options.step); + // This output is accessible to Image Sequencer + step.output = { + src: out, + format: format + } - // Tell Image Sequencer that step has been drawn - callback(); + // This output is accessible to the UI + options.step.output = out; - }); + // Tell the UI that the step has been drawn + UI.onComplete(options.step); - } + // we should do this via event/listener: + if (ui && ui.hide) ui.hide(); - return { - options: options, - draw: draw, - output: output, - UI: UI - } - } + // start custom UI setup (draggable UI) + // only once we have an input image + if (setupComplete === false && options.step.inBrowser) { + setupComplete = true; + ui.setup(); + } -},{"./Crop":150}],152:[function(require,module,exports){ + // Tell Image Sequencer that step has been drawn + callback(); + + }); + + } + + return { + options: options, + draw: draw, + output: output, + UI: UI + } +} + +},{"./Crop":150,"./Ui.js":152}],152:[function(require,module,exports){ +// hide on save +module.exports = function CropModuleUi(step, ui) { + + let inputWidth = 0, + inputHeight = 0; + + // We don't have input image dimensions at the + // time of setting up the UI; that comes when draw() is triggered. + // So we trigger setup only on first run of draw() + // TODO: link this to an event rather than an explicit call in Module.js + function setup() { + let x = 0, + y = 0; + + // display original uncropped input image on initial setup + showOriginal() + + inputWidth = Math.floor(imgEl().naturalWidth); + inputHeight = Math.floor(imgEl().naturalHeight); + + // display with 50%/50% default crop: + setOptions(x, y, inputWidth, inputHeight); + + $(imgEl()).imgAreaSelect({ + handles: true, + x1: x, + y1: y, + x2: x + inputWidth / 2, + y2: y + inputHeight / 2, + // when selection is complete + onSelectEnd: function onSelectEnd(img, selection) { + // assign crop values to module UI form inputs: + let converted = convertToNatural( + selection.x1, + selection.y1, + selection.width, + selection.height + ); + setOptions( + converted[0], + converted[1], + converted[2], + converted[3] + ); + } + }); + } + + function convertToNatural(_x, _y, _width, _height) { + let displayWidth = $(imgEl()).width(), + displayHeight = $(imgEl()).height(); + // return in same order [ x, y, width, height ]: + return [ + Math.floor(( _x / displayWidth ) * inputWidth), + Math.floor(( _y / displayHeight ) * inputHeight), + Math.floor(( _width / displayWidth ) * inputWidth), + Math.floor(( _height / displayHeight ) * inputHeight) + ] + } + + function remove() { + $(imgEl()).imgAreaSelect({ + remove: true + }); + } + + function hide() { + // then hide the draggable UI + $(imgEl()).imgAreaSelect({ + hide: true + }); + } + + // step.imgSelector is not defined, imgElement is: + function imgEl() { + return step.imgElement; + } + + function setOptions(x1, y1, width, height) { + let options = $($(imgEl()).parents()[2]).find("input"); + options[0].value = x1; + options[1].value = y1; + options[2].value = width; + options[3].value = height; + } + + // replaces currently displayed output thumbnail with the input image, for ui dragging purposes + function showOriginal() { + step.imgElement.src = step.input; + } + + return { + setup: setup, + remove: remove, + hide: hide + } +} + +},{}],153:[function(require,module,exports){ module.exports={ "name": "Crop", "description": "Crop image to given x, y, w, h in pixels, measured from top left", @@ -47360,7 +47477,7 @@ module.exports={ } } -},{}],153:[function(require,module,exports){ +},{}],154:[function(require,module,exports){ /* * Decodes QR from a given image. */ @@ -47415,7 +47532,7 @@ module.exports = function DoNothing(options,UI) { } } -},{"get-pixels":38,"jsqr":56}],154:[function(require,module,exports){ +},{"get-pixels":38,"jsqr":56}],155:[function(require,module,exports){ module.exports={ "name": "Decode QR", "description": "Search for and decode a QR code in the image", @@ -47428,7 +47545,7 @@ module.exports={ } } -},{}],155:[function(require,module,exports){ +},{}],156:[function(require,module,exports){ module.exports = function Dynamic(options,UI) { options = options || {}; @@ -47525,7 +47642,7 @@ module.exports = function Dynamic(options,UI) { } } -},{"../_nomodule/PixelManipulation.js":168}],156:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169}],157:[function(require,module,exports){ module.exports={ "name": "Dynamic", "description": "A module which accepts JavaScript math expressions to produce each color channel based on the original image's color. See Infragrammar.", @@ -47553,7 +47670,7 @@ module.exports={ } } -},{}],157:[function(require,module,exports){ +},{}],158:[function(require,module,exports){ const _ = require('lodash') //define kernels for the sobel filter @@ -47734,7 +47851,7 @@ function hysteresis(pixels){ -},{"lodash":57}],158:[function(require,module,exports){ +},{"lodash":57}],159:[function(require,module,exports){ /* * Detect Edges in an Image */ @@ -47803,7 +47920,7 @@ module.exports = function edgeDetect(options,UI) { } } -},{"../_nomodule/PixelManipulation.js":168,"./EdgeUtils":157,"ndarray-gaussian-filter":62}],159:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169,"./EdgeUtils":158,"ndarray-gaussian-filter":62}],160:[function(require,module,exports){ module.exports={ "name": "Detect Edges", "description": "this module detects edges using the Canny method, which first Gaussian blurs the image to reduce noise (amount of blur configurable in settings as `options.blur`), then applies a number of steps to highlight edges, resulting in a greyscale image where the brighter the pixel, the stronger the detected edge. Read more at: https://en.wikipedia.org/wiki/Canny_edge_detector", @@ -47826,7 +47943,7 @@ module.exports={ } } -},{}],160:[function(require,module,exports){ +},{}],161:[function(require,module,exports){ /* * Resolves Fisheye Effect */ @@ -47908,7 +48025,7 @@ module.exports = function DoNothing(options,UI) { } } -},{"fisheyegl":30}],161:[function(require,module,exports){ +},{"fisheyegl":30}],162:[function(require,module,exports){ module.exports={ "name": "Fisheye GL", "description": "Correct fisheye, or barrel distortion, in images (with WebGL -- adapted from fisheye-correction-webgl by @bluemir).", @@ -47976,7 +48093,7 @@ module.exports={ } } -},{}],162:[function(require,module,exports){ +},{}],163:[function(require,module,exports){ /* * Invert the image */ @@ -48033,7 +48150,7 @@ module.exports = function Invert(options,UI) { } } -},{"../_nomodule/PixelManipulation.js":168}],163:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169}],164:[function(require,module,exports){ module.exports={ "name": "Invert", "description": "Inverts the image.", @@ -48041,7 +48158,7 @@ module.exports={ } } -},{}],164:[function(require,module,exports){ +},{}],165:[function(require,module,exports){ /* * NDVI with red filter (blue channel is infrared) */ @@ -48102,7 +48219,7 @@ module.exports = function Ndvi(options,UI) { } } -},{"../_nomodule/PixelManipulation.js":168}],165:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169}],166:[function(require,module,exports){ module.exports={ "name": "NDVI", "description": "Normalized Difference Vegetation Index, or NDVI, is an image analysis technique used with aerial photography. It's a way to visualize the amounts of infrared and other wavelengths of light reflected from vegetation by comparing ratios of blue and red light absorbed versus green and IR light reflected. NDVI is used to evaluate the health of vegetation in satellite imagery, where it correlates with how much photosynthesis is happening. This is helpful in assessing vegetative health or stress. Read more.

This is designed for use with red-filtered single camera DIY Infragram cameras; change to 'blue' for blue filters", @@ -48116,7 +48233,7 @@ module.exports={ } } -},{}],166:[function(require,module,exports){ +},{}],167:[function(require,module,exports){ /* * Saturate an image with a value from 0 to 1 */ @@ -48185,7 +48302,7 @@ module.exports = function Saturation(options,UI) { } } -},{"../_nomodule/PixelManipulation.js":168}],167:[function(require,module,exports){ +},{"../_nomodule/PixelManipulation.js":169}],168:[function(require,module,exports){ module.exports={ "name": "Saturation", "description": "Change the saturation of the image by given value, from 0-1, with 1 being 100% saturated.", @@ -48198,7 +48315,7 @@ module.exports={ } } -},{}],168:[function(require,module,exports){ +},{}],169:[function(require,module,exports){ (function (Buffer){ /* * General purpose per-pixel manipulation @@ -48287,7 +48404,7 @@ module.exports = function PixelManipulation(image, options) { }; }).call(this,require("buffer").Buffer) -},{"buffer":8,"get-pixels":38,"pace":69,"save-pixels":120}],169:[function(require,module,exports){ +},{"buffer":8,"get-pixels":38,"pace":69,"save-pixels":120}],170:[function(require,module,exports){ // special module to load an image into the start of the sequence; used in the HTML UI function LoadImage(ref, name, src, main_callback) { function makeImage(datauri) { @@ -48394,7 +48511,7 @@ function LoadImage(ref, name, src, main_callback) { module.exports = LoadImage; -},{"urify":127}],170:[function(require,module,exports){ +},{"urify":127}],171:[function(require,module,exports){ /* * User Interface Handling Module */ @@ -48402,14 +48519,12 @@ module.exports = LoadImage; module.exports = function UserInterface(events = {}) { events.onSetup = events.onSetup || function(step) { - if(step.ui == false) { + if (step.ui == false) { // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Create and append an HTML Element console.log("Added Step \""+step.name+"\" to \""+step.imageName+"\"."); - } - else { + } else { // Create a NodeJS Object console.log('\x1b[36m%s\x1b[0m',"Added Step \""+step.name+"\" to \""+step.imageName+"\"."); } @@ -48418,12 +48533,10 @@ module.exports = function UserInterface(events = {}) { events.onDraw = events.onDraw || function(step) { if (step.ui == false) { // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Overlay a loading spinner console.log("Drawing Step \""+step.name+"\" on \""+step.imageName+"\"."); - } - else { + } else { // Don't do anything console.log('\x1b[33m%s\x1b[0m',"Drawing Step \""+step.name+"\" on \""+step.imageName+"\"."); } @@ -48432,27 +48545,23 @@ module.exports = function UserInterface(events = {}) { events.onComplete = events.onComplete || function(step) { if (step.ui == false) { // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Update the DIV Element // Hide the laoding spinner console.log("Drawn Step \""+step.name+"\" on \""+step.imageName+"\"."); - } - else { + } else { // Update the NodeJS Object console.log('\x1b[32m%s\x1b[0m',"Drawn Step \""+step.name+"\" on \""+step.imageName+"\"."); } } events.onRemove = events.onRemove || function(step) { - if(step.ui == false){ + if (step.ui == false){ // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Remove the DIV Element console.log("Removing Step \""+step.name+"\" of \""+step.imageName+"\"."); - } - else { + } else { // Delete the NodeJS Object console.log('\x1b[31m%s\x1b[0m',"Removing Step \""+step.name+"\" of \""+step.imageName+"\"."); } diff --git a/dist/image-sequencer.min.js b/dist/image-sequencer.min.js index f6b849bb..b42c08c1 100644 --- a/dist/image-sequencer.min.js +++ b/dist/image-sequencer.min.js @@ -1 +1 @@ -!function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var u="function"==typeof require&&require;if(!s&&u)return u(o,!0);if(a)return a(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return i(n||e)},f,f.exports,e,t,n,r)}return n[o].exports}for(var a="function"==typeof require&&require,o=0;o=0;s--)if(u[s]!=l[s])return!1;for(s=u.length-1;s>=0;s--)if(o=u[s],!c(e[o],t[o]))return!1;return!0}(e,t):e==t}function h(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function p(e,t){return!(!e||!t)&&("[object RegExp]"==Object.prototype.toString.call(t)?t.test(e):e instanceof t||!0===t.call({},e))}function d(e,t,n,i){var a;r.isString(n)&&(i=n,n=null);try{t()}catch(e){a=e}if(i=(n&&n.name?" ("+n.name+").":".")+(i?" "+i:"."),e&&!a&&l(a,n,"Missing expected exception"+i),!e&&p(a,n)&&l(a,n,"Got unwanted exception"+i),e&&a&&n&&!p(a,n)||!e&&a)throw a}o.AssertionError=function(e){var t;this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=(t=this,u(JSON.stringify(t.actual,s),128)+" "+t.operator+" "+u(JSON.stringify(t.expected,s),128)),this.generatedMessage=!0);var n=e.stackStartFunction||l;if(Error.captureStackTrace)Error.captureStackTrace(this,n);else{var r=new Error;if(r.stack){var i=r.stack,a=n.name,o=i.indexOf("\n"+a);if(o>=0){var f=i.indexOf("\n",o+1);i=i.substring(f+1)}this.stack=i}}},r.inherits(o.AssertionError,Error),o.fail=l,o.ok=f,o.equal=function(e,t,n){e!=t&&l(e,t,n,"==",o.equal)},o.notEqual=function(e,t,n){e==t&&l(e,t,n,"!=",o.notEqual)},o.deepEqual=function(e,t,n){c(e,t)||l(e,t,n,"deepEqual",o.deepEqual)},o.notDeepEqual=function(e,t,n){c(e,t)&&l(e,t,n,"notDeepEqual",o.notDeepEqual)},o.strictEqual=function(e,t,n){e!==t&&l(e,t,n,"===",o.strictEqual)},o.notStrictEqual=function(e,t,n){e===t&&l(e,t,n,"!==",o.notStrictEqual)},o.throws=function(e,t,n){d.apply(this,[!0].concat(i.call(arguments)))},o.doesNotThrow=function(e,t){d.apply(this,[!1].concat(i.call(arguments)))},o.ifError=function(e){if(e)throw e};var g=Object.keys||function(e){var t=[];for(var n in e)a.call(e,n)&&t.push(n);return t}},{"util/":131}],2:[function(e,t,n){"use strict";n.byteLength=function(e){return 3*e.length/4-l(e)},n.toByteArray=function(e){var t,n,r,o,s,u,f=e.length;s=l(e),u=new a(3*f/4-s),r=s>0?f-4:f;var c=0;for(t=0,n=0;t>16&255,u[c++]=o>>8&255,u[c++]=255&o;2===s?(o=i[e.charCodeAt(t)]<<2|i[e.charCodeAt(t+1)]>>4,u[c++]=255&o):1===s&&(o=i[e.charCodeAt(t)]<<10|i[e.charCodeAt(t+1)]<<4|i[e.charCodeAt(t+2)]>>2,u[c++]=o>>8&255,u[c++]=255&o);return u},n.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a="",o=[],s=0,u=n-i;su?u:s+16383));1===i?(t=e[n-1],a+=r[t>>2],a+=r[t<<4&63],a+="=="):2===i&&(t=(e[n-2]<<8)+e[n-1],a+=r[t>>10],a+=r[t>>4&63],a+=r[t<<2&63],a+="=");return o.push(a),o.join("")};for(var r=[],i=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=o.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===e[t-2]?2:"="===e[t-1]?1:0}function f(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},{}],3:[function(e,t,n){"use strict";"use restrict";function r(e){var t=32;return(e&=-e)&&t--,65535&e&&(t-=16),16711935&e&&(t-=8),252645135&e&&(t-=4),858993459&e&&(t-=2),1431655765&e&&(t-=1),t}n.INT_BITS=32,n.INT_MAX=2147483647,n.INT_MIN=-1<<31,n.sign=function(e){return(e>0)-(e<0)},n.abs=function(e){var t=e>>31;return(e^t)-t},n.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=n=((e>>>=t)>255)<<3,t|=n=((e>>>=n)>15)<<2,(t|=n=((e>>>=n)>3)<<1)|(e>>>=n)>>1},n.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},n.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},n.countTrailingZeros=r,n.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)+1},n.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},n.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var i=new Array(256);!function(e){for(var t=0;t<256;++t){var n=t,r=t,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;e[t]=r<>>8&255]<<16|i[e>>>16&255]<<8|i[e>>>24&255]},n.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},n.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},n.interleave3=function(e,t,n){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},n.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},n.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},{}],4:[function(e,t,n){},{}],5:[function(e,t,n){(function(t,r){var i=e("pako/lib/zlib/messages"),a=e("pako/lib/zlib/zstream"),o=e("pako/lib/zlib/deflate.js"),s=e("pako/lib/zlib/inflate.js"),u=e("pako/lib/zlib/constants");for(var l in u)n[l]=u[l];function f(e){if(en.UNZIP)throw new TypeError("Bad argument");this.mode=e,this.init_done=!1,this.write_in_progress=!1,this.pending_close=!1,this.windowBits=0,this.level=0,this.memLevel=0,this.strategy=0,this.dictionary=null}function c(e,t){for(var n=0;nn.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBitsn.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.leveln.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLeveln.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=n.Z_FILTERED&&e.strategy!=n.Z_HUFFMAN_ONLY&&e.strategy!=n.Z_RLE&&e.strategy!=n.Z_FIXED&&e.strategy!=n.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!r.isBuffer(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._binding=new a.Zlib(t);var o=this;this._hadError=!1,this._binding.onerror=function(e,t){o._binding=null,o._hadError=!0;var r=new Error(e);r.errno=t,r.code=n.codes[t],o.emit("error",r)};var s=n.Z_DEFAULT_COMPRESSION;"number"==typeof e.level&&(s=e.level);var u=n.Z_DEFAULT_STRATEGY;"number"==typeof e.strategy&&(u=e.strategy),this._binding.init(e.windowBits||n.Z_DEFAULT_WINDOWBITS,s,e.memLevel||n.Z_DEFAULT_MEMLEVEL,u,e.dictionary),this._buffer=new r(this._chunkSize),this._offset=0,this._closed=!1,this._level=s,this._strategy=u,this.once("end",this.close)}a.Z_MIN_WINDOWBITS=8,a.Z_MAX_WINDOWBITS=15,a.Z_DEFAULT_WINDOWBITS=15,a.Z_MIN_CHUNK=64,a.Z_MAX_CHUNK=1/0,a.Z_DEFAULT_CHUNK=16384,a.Z_MIN_MEMLEVEL=1,a.Z_MAX_MEMLEVEL=9,a.Z_DEFAULT_MEMLEVEL=8,a.Z_MIN_LEVEL=-1,a.Z_MAX_LEVEL=9,a.Z_DEFAULT_LEVEL=a.Z_DEFAULT_COMPRESSION,Object.keys(a).forEach(function(e){e.match(/^Z/)&&(n[e]=a[e])}),n.codes={Z_OK:a.Z_OK,Z_STREAM_END:a.Z_STREAM_END,Z_NEED_DICT:a.Z_NEED_DICT,Z_ERRNO:a.Z_ERRNO,Z_STREAM_ERROR:a.Z_STREAM_ERROR,Z_DATA_ERROR:a.Z_DATA_ERROR,Z_MEM_ERROR:a.Z_MEM_ERROR,Z_BUF_ERROR:a.Z_BUF_ERROR,Z_VERSION_ERROR:a.Z_VERSION_ERROR},Object.keys(n.codes).forEach(function(e){n.codes[n.codes[e]]=e}),n.Deflate=f,n.Inflate=c,n.Gzip=h,n.Gunzip=p,n.DeflateRaw=d,n.InflateRaw=g,n.Unzip=v,n.createDeflate=function(e){return new f(e)},n.createInflate=function(e){return new c(e)},n.createDeflateRaw=function(e){return new d(e)},n.createInflateRaw=function(e){return new g(e)},n.createGzip=function(e){return new h(e)},n.createGunzip=function(e){return new p(e)},n.createUnzip=function(e){return new v(e)},n.deflate=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new f(t),e,n)},n.deflateSync=function(e,t){return l(new f(t),e)},n.gzip=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new h(t),e,n)},n.gzipSync=function(e,t){return l(new h(t),e)},n.deflateRaw=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new d(t),e,n)},n.deflateRawSync=function(e,t){return l(new d(t),e)},n.unzip=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new v(t),e,n)},n.unzipSync=function(e,t){return l(new v(t),e)},n.inflate=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new c(t),e,n)},n.inflateSync=function(e,t){return l(new c(t),e)},n.gunzip=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new p(t),e,n)},n.gunzipSync=function(e,t){return l(new p(t),e)},n.inflateRaw=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new g(t),e,n)},n.inflateRawSync=function(e,t){return l(new g(t),e)},o.inherits(m,i),m.prototype.params=function(e,r,i){if(en.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+e);if(r!=n.Z_FILTERED&&r!=n.Z_HUFFMAN_ONLY&&r!=n.Z_RLE&&r!=n.Z_FIXED&&r!=n.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+r);if(this._level!==e||this._strategy!==r){var o=this;this.flush(a.Z_SYNC_FLUSH,function(){o._binding.params(e,r),o._hadError||(o._level=e,o._strategy=r,i&&i())})}else t.nextTick(i)},m.prototype.reset=function(){return this._binding.reset()},m.prototype._flush=function(e){this._transform(new r(0),"",e)},m.prototype.flush=function(e,n){var i=this._writableState;if(("function"==typeof e||void 0===e&&!n)&&(n=e,e=a.Z_FULL_FLUSH),i.ended)n&&t.nextTick(n);else if(i.ending)n&&this.once("end",n);else if(i.needDrain){var o=this;this.once("drain",function(){o.flush(n)})}else this._flushFlag=e,this.write(new r(0),"",n)},m.prototype.close=function(e){if(e&&t.nextTick(e),!this._closed){this._closed=!0,this._binding.close();var n=this;t.nextTick(function(){n.emit("close")})}},m.prototype._transform=function(e,t,n){var i,o=this._writableState,s=(o.ending||o.ended)&&(!e||o.length===e.length);if(null===!e&&!r.isBuffer(e))return n(new Error("invalid input"));s?i=a.Z_FINISH:(i=this._flushFlag,e.length>=o.length&&(this._flushFlag=this._opts.flush||a.Z_NO_FLUSH));this._processChunk(e,i,n)},m.prototype._processChunk=function(e,t,n){var i=e&&e.length,a=this._chunkSize-this._offset,o=0,u=this,l="function"==typeof n;if(!l){var f,c=[],h=0;this.on("error",function(e){f=e});do{var p=this._binding.writeSync(t,e,o,i,this._buffer,this._offset,a)}while(!this._hadError&&v(p[0],p[1]));if(this._hadError)throw f;var d=r.concat(c,h);return this.close(),d}var g=this._binding.write(t,e,o,i,this._buffer,this._offset,a);function v(f,p){if(!u._hadError){var d=a-p;if(s(d>=0,"have should not go down"),d>0){var g=u._buffer.slice(u._offset,u._offset+d);u._offset+=d,l?u.push(g):(c.push(g),h+=g.length)}if((0===p||u._offset>=u._chunkSize)&&(a=u._chunkSize,u._offset=0,u._buffer=new r(u._chunkSize)),0===p){if(o+=i-f,i=f,!l)return!0;var m=u._binding.write(t,e,o,i,u._buffer,u._offset,u._chunkSize);return m.callback=v,void(m.buffer=e)}if(!l)return!1;n()}}g.buffer=e,g.callback=v},o.inherits(f,m),o.inherits(c,m),o.inherits(h,m),o.inherits(p,m),o.inherits(d,m),o.inherits(g,m),o.inherits(v,m)}).call(this,e("_process"),e("buffer").Buffer)},{"./binding":5,_process:104,_stream_transform:115,assert:1,buffer:8,util:131}],7:[function(e,t,n){arguments[4][4][0].apply(n,arguments)},{dup:4}],8:[function(e,t,n){(function(t){"use strict";var r=e("base64-js"),i=e("ieee754"),a=e("isarray");function o(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function d(e,t){if(u.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return U(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return F(e).length;default:if(r)return U(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:m(e,t,n,r,i);if("number"==typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):m(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function m(e,t,n,r,i){var a,o=1,s=e.length,u=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;o=2,s/=2,u/=2,n/=2}function l(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var f=-1;for(a=n;as&&(n=s-u),a=n;a>=0;a--){for(var c=!0,h=0;hi&&(r=i):r=i;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var o=0;o>8,i=n%256,a.push(i),a.push(r);return a}(t,e.length-n),e,n,r)}function E(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function A(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:l>223?3:l>191?2:1;if(i+c<=n)switch(c){case 1:l<128&&(f=l);break;case 2:128==(192&(a=e[i+1]))&&(u=(31&l)<<6|63&a)>127&&(f=u);break;case 3:a=e[i+1],o=e[i+2],128==(192&a)&&128==(192&o)&&(u=(15&l)<<12|(63&a)<<6|63&o)>2047&&(u<55296||u>57343)&&(f=u);break;case 4:a=e[i+1],o=e[i+2],s=e[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(u=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&u<1114112&&(f=u)}null===f?(f=65533,c=1):f>65535&&(f-=65536,r.push(f>>>10&1023|55296),f=56320|1023&f),r.push(f),i+=c}return function(e){var t=e.length;if(t<=S)return String.fromCharCode.apply(String,e);var n="",r=0;for(;rthis.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return R(this,t,n);case"utf8":case"utf-8":return A(this,t,n);case"ascii":return T(this,t,n);case"latin1":case"binary":return M(this,t,n);case"base64":return E(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}.apply(this,arguments)},u.prototype.equals=function(e){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===u.compare(this,e)},u.prototype.inspect=function(){var e="",t=n.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(e+=" ... ")),""},u.prototype.compare=function(e,t,n,r,i){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;for(var a=i-r,o=n-t,s=Math.min(a,o),l=this.slice(r,i),f=e.slice(t,n),c=0;ci)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return _(this,e,t,n);case"utf8":case"utf-8":return w(this,e,t,n);case"ascii":return b(this,e,t,n);case"latin1":case"binary":return y(this,e,t,n);case"base64":return x(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var S=4096;function T(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",a=t;an)throw new RangeError("Trying to access beyond buffer length")}function C(e,t,n,r,i,a){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function L(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function B(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function D(e,t,n,r,i,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function z(e,t,n,r,a){return a||D(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function P(e,t,n,r,a){return a||D(e,0,n,8),i.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if(e=~~e,t=void 0===t?r:~~t,e<0?(e+=r)<0&&(e=0):e>r&&(e=r),t<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(i*=256);)r+=this[e+--t]*i;return r},u.prototype.readUInt8=function(e,t){return t||j(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||j(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||j(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||j(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||j(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||j(e,t,this.length);for(var r=this[e],i=1,a=0;++a=(i*=128)&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||j(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},u.prototype.readInt8=function(e,t){return t||j(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||j(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||j(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||j(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||j(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||j(e,4,this.length),i.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||j(e,4,this.length),i.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||j(e,8,this.length),i.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||j(e,8,this.length),i.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||C(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+i]=e/a&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):L(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):L(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):B(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);C(this,e,t,n,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);C(this,e,t,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):L(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):L(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):B(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return z(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return z(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return P(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return P(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(a<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function F(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(O,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function q(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"base64-js":2,ieee754:51,isarray:9}],9:[function(e,t,n){var r={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},{}],10:[function(e,t,n){(function(t){"use strict";var r=e("buffer"),i=r.Buffer,a=r.SlowBuffer,o=r.kMaxLength||2147483647;n.alloc=function(e,t,n){if("function"==typeof i.alloc)return i.alloc(e,t,n);if("number"==typeof n)throw new TypeError("encoding must not be number");if("number"!=typeof e)throw new TypeError("size must be a number");if(e>o)throw new RangeError("size is too large");var r=n,a=t;void 0===a&&(r=void 0,a=0);var s=new i(e);if("string"==typeof a)for(var u=new i(a,r),l=u.length,f=-1;++fo)throw new RangeError("size is too large");return new i(e)},n.from=function(e,n,r){if("function"==typeof i.from&&(!t.Uint8Array||Uint8Array.from!==i.from))return i.from(e,n,r);if("number"==typeof e)throw new TypeError('"value" argument must not be a number');if("string"==typeof e)return new i(e,n);if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer){var a=n;if(1===arguments.length)return new i(e);void 0===a&&(a=0);var o=r;if(void 0===o&&(o=e.byteLength-a),a>=e.byteLength)throw new RangeError("'offset' is out of bounds");if(o>e.byteLength-a)throw new RangeError("'length' is out of bounds");return new i(e.slice(a,a+o))}if(i.isBuffer(e)){var s=new i(e.length);return e.copy(s,0,0,e.length),s}if(e){if(Array.isArray(e)||"undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return new i(e);if("Buffer"===e.type&&Array.isArray(e.data))return new i(e.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")},n.allocUnsafeSlow=function(e){if("function"==typeof i.allocUnsafeSlow)return i.allocUnsafeSlow(e);if("number"!=typeof e)throw new TypeError("size must be a number");if(e>=o)throw new RangeError("size is too large");return new a(e)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{buffer:8}],11:[function(e,t,n){(function(n){var r=e("tty"),i=e("./lib/encode"),a=e("stream").Stream,o=t.exports=function(){var e=null;function t(t){if(e)throw new Error("multiple inputs specified");e=t}var i=null;function a(e){if(i)throw new Error("multiple outputs specified");i=e}for(var o=0;o0&&this.down(t),e>0?this.right(e):e<0&&this.left(-e),this},s.prototype.up=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"A")),this},s.prototype.down=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"B")),this},s.prototype.right=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"C")),this},s.prototype.left=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"D")),this},s.prototype.column=function(e){return this.write(i("["+Math.floor(e)+"G")),this},s.prototype.push=function(e){return this.write(i(e?"7":"[s")),this},s.prototype.pop=function(e){return this.write(i(e?"8":"[u")),this},s.prototype.erase=function(e){return"end"===e||"$"===e?this.write(i("[K")):"start"===e||"^"===e?this.write(i("[1K")):"line"===e?this.write(i("[2K")):"down"===e?this.write(i("[J")):"up"===e?this.write(i("[1J")):"screen"===e?this.write(i("[1J")):this.emit("error",new Error("Unknown erase type: "+e)),this},s.prototype.display=function(e){var t={reset:0,bright:1,dim:2,underscore:4,blink:5,reverse:7,hidden:8}[e];return void 0===t&&this.emit("error",new Error("Unknown attribute: "+e)),this.write(i("["+t+"m")),this},s.prototype.foreground=function(e){if("number"==typeof e)(e<0||e>=256)&&this.emit("error",new Error("Color out of range: "+e)),this.write(i("[38;5;"+e+"m"));else{var t={black:30,red:31,green:32,yellow:33,blue:34,magenta:35,cyan:36,white:37}[e.toLowerCase()];t||this.emit("error",new Error("Unknown color: "+e)),this.write(i("["+t+"m"))}return this},s.prototype.background=function(e){if("number"==typeof e)(e<0||e>=256)&&this.emit("error",new Error("Color out of range: "+e)),this.write(i("[48;5;"+e+"m"));else{var t={black:40,red:41,green:42,yellow:43,blue:44,magenta:45,cyan:46,white:47}[e.toLowerCase()];t||this.emit("error",new Error("Unknown color: "+e)),this.write(i("["+t+"m"))}return this},s.prototype.cursor=function(e){return this.write(i(e?"[?25h":"[?25l")),this};var u=o.extractCodes=function(e){for(var t=[],n=-1,r=0;r=0&&t.push(e.slice(n,r)),n=r):n>=0&&r===e.length-1&&t.push(e.slice(n));return t}}).call(this,e("_process"))},{"./lib/encode":12,_process:104,stream:121,tty:124}],12:[function(e,t,n){(function(e){var n=(t.exports=function(t){return new e([27].concat(function e(t){return"string"==typeof t?t.split("").map(n):Array.isArray(t)?t.reduce(function(t,n){return t.concat(e(n))},[]):void 0}(t)))}).ord=function(e){return e.charCodeAt(0)}}).call(this,e("buffer").Buffer)},{buffer:8}],13:[function(e,t,n){(function(n){"use strict";var r=e("readable-stream").Readable,i=e("util");function a(e,t){if(!(this instanceof a))return new a(e,t);r.call(this,t),null!==e&&void 0!==e||(e=String(e)),this._obj=e}t.exports=a,i.inherits(a,r),a.prototype._read=function(e){var t=this._obj;"string"==typeof t?this.push(new n(t)):n.isBuffer(t)?this.push(t):this.push(new n(JSON.stringify(t))),this.push(null)}}).call(this,e("buffer").Buffer)},{buffer:8,"readable-stream":20,util:131}],14:[function(e,t,n){t.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},{}],15:[function(e,t,n){(function(n){t.exports=s;var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t},i=e("core-util-is");i.inherits=e("inherits");var a=e("./_stream_readable"),o=e("./_stream_writable");function s(e){if(!(this instanceof s))return new s(e);a.call(this,e),o.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",u)}function u(){this.allowHalfOpen||this._writableState.ended||n.nextTick(this.end.bind(this))}i.inherits(s,a),function(e,t){for(var n=0,r=e.length;n0?d(e):b(e)}(e,t);else if(t.objectMode||r&&r.length>0)if(t.ended&&!o){var u=new Error("stream.push() after EOF");e.emit("error",u)}else if(t.endEmitted&&o){u=new Error("stream.unshift() after end event");e.emit("error",u)}else!t.decoder||o||a||(r=t.decoder.write(r)),t.length+=t.objectMode?1:r.length,o?t.buffer.unshift(r):(t.reading=!1,t.buffer.push(r)),t.needReadable&&d(e),function(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(function(){!function(e,t){var n=t.length;for(;!t.reading&&!t.flowing&&!t.ended&&t.lengtht.highWaterMark&&(t.highWaterMark=function(e){if(e>=h)e=h;else{e--;for(var t=1;t<32;t<<=1)e|=e>>t;e++}return e}(e)),e>t.length?t.ended?t.length:(t.needReadable=!0,0):e)}function d(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,t.sync?n.nextTick(function(){g(e)}):g(e))}function g(e){e.emit("readable")}function v(e){var t,n=e._readableState;function r(e,r,i){!1===e.write(t)&&n.awaitDrain++}for(n.awaitDrain=0;n.pipesCount&&null!==(t=e.read());)if(1===n.pipesCount?r(n.pipes):y(n.pipes,r),e.emit("data",t),n.awaitDrain>0)return;if(0===n.pipesCount)return n.flowing=!1,void(a.listenerCount(e,"data")>0&&_(e));n.ranOut=!0}function m(){this._readableState.ranOut&&(this._readableState.ranOut=!1,v(this))}function _(e,t){if(e._readableState.flowing)throw new Error("Cannot switch to old mode now.");var r=t||!1,i=!1;e.readable=!0,e.pipe=s.prototype.pipe,e.on=e.addListener=s.prototype.on,e.on("readable",function(){var t;for(i=!0;!r&&null!==(t=e.read());)e.emit("data",t);null===t&&(i=!1,e._readableState.needReadable=!0)}),e.pause=function(){r=!0,this.emit("pause")},e.resume=function(){r=!1,i?n.nextTick(function(){e.emit("readable")}):this.read(0),this.emit("resume")},e.emit("readable")}function w(e,t){var n,r=t.buffer,a=t.length,o=!!t.decoder,s=!!t.objectMode;if(0===r.length)return null;if(0===a)n=null;else if(s)n=r.shift();else if(!e||e>=a)n=o?r.join(""):i.concat(r,a),r.length=0;else{if(e0)throw new Error("endReadable called on non-empty stream");!t.endEmitted&&t.calledRead&&(t.ended=!0,n.nextTick(function(){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}))}function y(e,t){for(var n=0,r=e.length;n0)&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return d(this),null;if(0===(e=p(e,t))&&t.ended)return n=null,t.length>0&&t.decoder&&(n=w(e,t),t.length-=n.length),0===t.length&&b(this),n;var i=t.needReadable;return t.length-e<=t.highWaterMark&&(i=!0),(t.ended||t.reading)&&(i=!1),i&&(t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1),i&&!t.reading&&(e=p(r,t)),null===(n=e>0?w(e,t):null)&&(t.needReadable=!0,e=0),t.length-=e,0!==t.length||t.ended||(t.needReadable=!0),t.ended&&!t.endEmitted&&0===t.length&&b(this),n},f.prototype._read=function(e){this.emit("error",new Error("not implemented"))},f.prototype.pipe=function(e,t){var i=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1;var s=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?l:c;function u(e){e===i&&c()}function l(){e.end()}o.endEmitted?n.nextTick(s):i.once("end",s),e.on("unpipe",u);var f=function(e){return function(){var t=e._readableState;t.awaitDrain--,0===t.awaitDrain&&v(e)}}(i);function c(){e.removeListener("close",p),e.removeListener("finish",d),e.removeListener("drain",f),e.removeListener("error",h),e.removeListener("unpipe",u),i.removeListener("end",l),i.removeListener("end",c),e._writableState&&!e._writableState.needDrain||f()}function h(t){g(),e.removeListener("error",h),0===a.listenerCount(e,"error")&&e.emit("error",t)}function p(){e.removeListener("finish",d),g()}function d(){e.removeListener("close",p),g()}function g(){i.unpipe(e)}return e.on("drain",f),e._events&&e._events.error?r(e._events.error)?e._events.error.unshift(h):e._events.error=[h,e._events.error]:e.on("error",h),e.once("close",p),e.once("finish",d),e.emit("pipe",i),o.flowing||(this.on("readable",m),o.flowing=!0,n.nextTick(function(){v(i)})),e},f.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,this.removeListener("readable",m),t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,this.removeListener("readable",m),t.flowing=!1;for(var i=0;i=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived=55296&&i<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var r=e.length;this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,r),r-=this.charReceived);var i;r=(t+=e.toString(this.encoding,0,r)).length-1;if((i=t.charCodeAt(r))>=55296&&i<=56319){var a=this.surrogateSize;return this.charLength+=a,this.charReceived+=a,this.charBuffer.copy(this.charBuffer,a,0,a),e.copy(this.charBuffer,0,0,a),t.substring(0,r)}return t},a.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var n=e[e.length-t];if(1==t&&n>>5==6){this.charLength=2;break}if(t<=2&&n>>4==14){this.charLength=3;break}if(t<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=t},a.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.charReceived,r=this.charBuffer,i=this.encoding;t+=r.slice(0,n).toString(i)}return t}},{buffer:8}],22:[function(e,t,n){(function(e){function t(e){return Object.prototype.toString.call(e)}n.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===t(e)},n.isBoolean=function(e){return"boolean"==typeof e},n.isNull=function(e){return null===e},n.isNullOrUndefined=function(e){return null==e},n.isNumber=function(e){return"number"==typeof e},n.isString=function(e){return"string"==typeof e},n.isSymbol=function(e){return"symbol"==typeof e},n.isUndefined=function(e){return void 0===e},n.isRegExp=function(e){return"[object RegExp]"===t(e)},n.isObject=function(e){return"object"==typeof e&&null!==e},n.isDate=function(e){return"[object Date]"===t(e)},n.isError=function(e){return"[object Error]"===t(e)||e instanceof Error},n.isFunction=function(e){return"function"==typeof e},n.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},n.isBuffer=e.isBuffer}).call(this,{isBuffer:e("../../is-buffer/index.js")})},{"../../is-buffer/index.js":54}],23:[function(e,t,n){"use strict";var r=e("./lib/thunk.js");t.exports=function(e){var t=new function(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1};t.pre=e.pre,t.body=e.body,t.post=e.post;var n=e.args.slice(0);t.argTypes=n;for(var i=0;i0)throw new Error("cwise: pre() block may not reference array args");if(i0)throw new Error("cwise: post() block may not reference array args")}else if("scalar"===a)t.scalarArgs.push(i),t.shimArgs.push("scalar"+i);else if("index"===a){if(t.indexArgs.push(i),i0)throw new Error("cwise: pre() block may not reference array index");if(i0)throw new Error("cwise: post() block may not reference array index")}else if("shape"===a){if(t.shapeArgs.push(i),in.length)throw new Error("cwise: Too many arguments in pre() block");if(t.body.args.length>n.length)throw new Error("cwise: Too many arguments in body() block");if(t.post.args.length>n.length)throw new Error("cwise: Too many arguments in post() block");return t.debug=!!e.printCode||!!e.debug,t.funcName=e.funcName||"cwise",t.blockSize=e.blockSize||64,r(t)}},{"./lib/thunk.js":25}],24:[function(e,t,n){"use strict";var r=e("uniq");function i(e,t,n){var r,i,a=e.length,o=t.arrayArgs.length,s=t.indexArgs.length>0,u=[],l=[],f=0,c=0;for(r=0;r=0;--r)f=e[r],u.push(["for(i",r,"=0;i",r,"0&&u.push(["index[",c,"]-=s",c].join("")),u.push(["++index[",f,"]"].join(""))),u.push("}")}return u.join("\n")}function a(e,t,n){for(var r=e.body,i=[],a=[],o=0;o0&&_.push("shape=SS.slice(0)"),e.indexArgs.length>0){var w=new Array(n);for(u=0;u3&&m.push(a(e.pre,e,s));var k=a(e.body,e,s),E=function(e){for(var t=0,n=e[0].length;t0,l=[],f=0;f0;){"].join("")),l.push(["if(j",f,"<",s,"){"].join("")),l.push(["s",t[f],"=j",f].join("")),l.push(["j",f,"=0"].join("")),l.push(["}else{s",t[f],"=",s].join("")),l.push(["j",f,"-=",s,"}"].join("")),u&&l.push(["index[",t[f],"]=j",f].join(""));for(f=0;f3&&m.push(a(e.post,e,s)),e.debug&&console.log("-----Generated cwise routine for ",t,":\n"+m.join("\n")+"\n----------");var A=[e.funcName||"unnamed","_cwise_loop_",o[0].join("s"),"m",E,function(e){for(var t=new Array(e.length),n=!0,r=0;r0&&(n=n&&t[r]===t[r-1])}return n?t[0]:t.join("")}(s)].join("");return new Function(["function ",A,"(",v.join(","),"){",m.join("\n"),"} return ",A].join(""))()}},{uniq:126}],25:[function(e,t,n){"use strict";var r=e("./compile.js");t.exports=function(e){var t=["'use strict'","var CACHED={}"],n=[],i=e.funcName+"_cwise_thunk";t.push(["return function ",i,"(",e.shimArgs.join(","),"){"].join(""));for(var a=[],o=[],s=[["array",e.arrayArgs[0],".shape.slice(",Math.max(0,e.arrayBlockIndices[0]),e.arrayBlockIndices[0]<0?","+e.arrayBlockIndices[0]+")":")"].join("")],u=[],l=[],f=0;f0&&(u.push("array"+e.arrayArgs[0]+".shape.length===array"+c+".shape.length+"+(Math.abs(e.arrayBlockIndices[0])-Math.abs(e.arrayBlockIndices[f]))),l.push("array"+e.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,e.arrayBlockIndices[0])+"]===array"+c+".shape[shapeIndex+"+Math.max(0,e.arrayBlockIndices[f])+"]"))}for(e.arrayArgs.length>1&&(t.push("if (!("+u.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),t.push("for(var shapeIndex=array"+e.arrayArgs[0]+".shape.length-"+Math.abs(e.arrayBlockIndices[0])+"; shapeIndex--\x3e0;) {"),t.push("if (!("+l.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),t.push("}")),f=0;f0)return function(e,t){var n,r;for(n=new Array(e),r=0;r0&&this._events[e].length>n&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){if(!i(t))throw TypeError("listener must be a function");var n=!1;function r(){this.removeListener(e,r),n||(n=!0,t.apply(this,arguments))}return r.listener=t,this.on(e,r),this},r.prototype.removeListener=function(e,t){var n,r,o,s;if(!i(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(o=(n=this._events[e]).length,r=-1,n===t||i(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(a(n)){for(s=o;s-- >0;)if(n[s]===t||n[s].listener&&n[s].listener===t){r=s;break}if(r<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(r,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(i(n=this._events[e]))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?i(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(i(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},{}],30:[function(e,t,n){var r=function(t){(t=t||{}).width=t.width||800,t.height=t.height||600;var n=t.model||{vertex:[-1,-1,0,1,-1,0,1,1,0,-1,1,0],indices:[0,1,2,0,2,3,2,1,0,3,2,0],textureCoords:[0,0,1,0,1,1,0,1]},r=t.lens||{a:1,b:1,Fx:0,Fy:0,scale:1.5},i=t.fov||{x:1,y:1},a=t.image||"images/barrel-distortion.png",o=function(e){var t=document.querySelector(e);if(null==t)throw new Error("there is no canvas on this page");for(var n=["webgl","experimental-webgl","webkit-3d","moz-webgl"],r=0;r 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],33:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec4 uLens;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 TextureCoord2GLCoord(vec2 textureCoord) {\n\treturn (textureCoord - vec2(0.5, 0.5)) * 2.0;\n}\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord / 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tfloat correctionRadius = 0.5;\n\tfloat distance = sqrt(vPosition.x * vPosition.x + vPosition.y * vPosition.y) / correctionRadius;\n\tfloat theta = 1.0;\n\tif(distance != 0.0){\n\t\ttheta = atan(distance);\n\t}\n\tvec2 vMapping = theta * vPosition.xy;\n\tvMapping = GLCoord2TextureCoord(vMapping);\n\t\t\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],34:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec3 uLensS;\nuniform vec2 uLensF;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord * vec2(1.0, -1.0)/ 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tfloat scale = uLensS.z;\n\tvec3 vPos = vPosition;\n\tfloat Fx = uLensF.x;\n\tfloat Fy = uLensF.y;\n\tvec2 vMapping = vPos.xy;\n\tvMapping.x = vMapping.x + ((pow(vPos.y, 2.0)/scale)*vPos.x/scale)*-Fx;\n\tvMapping.y = vMapping.y + ((pow(vPos.x, 2.0)/scale)*vPos.y/scale)*-Fy;\n\tvMapping = vMapping * uLensS.xy;\n\tvMapping = GLCoord2TextureCoord(vMapping/scale);\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t}\n\tgl_FragColor = texture;\n}\n"},{}],35:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec4 uLens;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 TextureCoord2GLCoord(vec2 textureCoord) {\n\treturn (textureCoord - vec2(0.5, 0.5)) * 2.0;\n}\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord / 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tvec2 vMapping = vec2(vTextureCoord.x, 1.0 - vTextureCoord.y);\n\tvMapping = TextureCoord2GLCoord(vMapping);\n\t//TODO insert Code\n\tfloat F = uLens.x/ uLens.w;\n\tfloat seta = length(vMapping) / F;\n\tvMapping = sin(seta) * F / length(vMapping) * vMapping;\n\tvMapping *= uLens.w * 1.414;\n\tvMapping = GLCoord2TextureCoord(vMapping);\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],36:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec4 uLens;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 TextureCoord2GLCoord(vec2 textureCoord) {\n\treturn (textureCoord - vec2(0.5, 0.5)) * 2.0;\n}\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord / 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tvec2 vMapping = vec2(vTextureCoord.x, 1.0 - vTextureCoord.y);\n\tvMapping = TextureCoord2GLCoord(vMapping);\n\t//TOD insert Code\n\tfloat F = uLens.x/ uLens.w;\n\tfloat seta = length(vMapping) / F;\n\tvMapping = sin(seta) * F / length(vMapping) * vMapping;\n\tvMapping *= uLens.w * 1.414;\n\tvMapping = GLCoord2TextureCoord(vMapping);\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],37:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nattribute vec3 aVertexPosition;\nattribute vec2 aTextureCoord;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvoid main(void){\n\tvPosition = aVertexPosition;\n\tvTextureCoord = aTextureCoord;\n\tgl_Position = vec4(vPosition,1.0);\n}\n"},{}],38:[function(e,t,n){(function(n,r){"use strict";var i=e("path"),a=e("ndarray"),o=e("omggif").GifReader,s=(e("ndarray-pack"),e("through"),e("data-uri-to-buffer"));function u(e,t){var n;try{n=new o(e)}catch(e){return void t(e)}if(n.numFrames()>0){var r=[n.numFrames(),n.height,n.width,4],i=new Uint8Array(r[0]*r[1]*r[2]*r[3]),s=a(i,r);try{for(var u=0;u=0&&(this.dispose=e)},u.prototype.setRepeat=function(e){this.repeat=e},u.prototype.setTransparent=function(e){this.transparent=e},u.prototype.analyzeImage=function(e){this.setImagePixels(this.removeAlphaChannel(e)),this.analyzePixels()},u.prototype.writeImageInfo=function(){this.firstFrame&&(this.writeLSD(),this.writePalette(),this.repeat>=0&&this.writeNetscapeExt()),this.writeGraphicCtrlExt(),this.writeImageDesc(),this.firstFrame||this.writePalette(),this.firstFrame=!1},u.prototype.outputImage=function(){this.writePixels()},u.prototype.addFrame=function(e){this.emit("frame#start"),this.analyzeImage(e),this.writeImageInfo(),this.outputImage(),this.emit("frame#stop")},u.prototype.finish=function(){this.emit("finish#start"),this.writeByte(59),this.emit("finish#stop")},u.prototype.setQuality=function(e){e<1&&(e=1),this.sample=e},u.prototype.writeHeader=function(){this.emit("writeHeader#start"),this.writeUTFBytes("GIF89a"),this.emit("writeHeader#stop")},u.prototype.analyzePixels=function(){var e=this.pixels.length/3;this.indexedPixels=new Uint8Array(e);var t=new a(this.pixels,this.sample);t.buildColormap(),this.colorTab=t.getColormap();for(var n=0,r=0;r>16,n=(65280&e)>>8,r=255&e,i=0,a=16777216,o=this.colorTab.length,s=0;s=0&&(t=7&dispose),t<<=2,this.writeByte(0|t|e),this.writeShort(this.delay),this.writeByte(this.transIndex),this.writeByte(0)},u.prototype.writeImageDesc=function(){this.writeByte(44),this.writeShort(0),this.writeShort(0),this.writeShort(this.width),this.writeShort(this.height),this.firstFrame?this.writeByte(0):this.writeByte(128|this.palSize)},u.prototype.writeLSD=function(){this.writeShort(this.width),this.writeShort(this.height),this.writeByte(240|this.palSize),this.writeByte(0),this.writeByte(0)},u.prototype.writeNetscapeExt=function(){this.writeByte(33),this.writeByte(255),this.writeByte(11),this.writeUTFBytes("NETSCAPE2.0"),this.writeByte(3),this.writeByte(1),this.writeShort(this.repeat),this.writeByte(0)},u.prototype.writePalette=function(){this.writeBytes(this.colorTab);for(var e=768-this.colorTab.length,t=0;t>8&255)},u.prototype.writePixels=function(){new o(this.width,this.height,this.indexedPixels,this.colorDepth).encode(this)},u.prototype.stream=function(){return this},u.ByteCapacitor=s,t.exports=u}).call(this,e("buffer").Buffer)},{"./LZWEncoder.js":41,"./TypedNeuQuant.js":42,assert:1,buffer:8,events:29,"readable-stream":49,util:131}],41:[function(e,t,n){var r=-1,i=12,a=5003,o=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535];t.exports=function(e,t,n,s){var u,l,f,c,h,p,d,g,v,m=Math.max(2,s),_=new Uint8Array(256),w=new Int32Array(a),b=new Int32Array(a),y=0,x=0,k=!1;function E(e,t){_[l++]=e,l>=254&&T(t)}function A(e){S(a),x=g+2,k=!0,I(g,e)}function S(e){for(var t=0;t0&&(e.writeByte(l),e.writeBytes(_,0,l),l=0)}function M(e){return(1<0?u|=e<=8;)E(255&u,t),u>>=8,y-=8;if((x>f||k)&&(k?(f=M(p=d),k=!1):f=++p==i?1<0;)E(255&u,t),u>>=8,y-=8;T(t)}}this.encode=function(n){n.writeByte(m),c=e*t,h=0,function(e,t){var n,o,s,u,c,h,m;for(k=!1,f=M(p=d=e),v=1+(g=1<=0){c=h-s,0===s&&(c=1);do{if((s-=c)<0&&(s+=h),w[s]===n){u=b[s];continue e}}while(w[s]>=0)}I(u,t),u=o,x<1<>f,h=u<>3)*(1<l;)u=T[p++],cl&&((s=n[h--])[0]-=u*(s[0]-r)/_,s[1]-=u*(s[1]-a)/_,s[2]-=u*(s[2]-o)/_)}function I(e,t,r){var a,u,p,d,g,v=~(1<<31),m=v,_=-1,w=_;for(a=0;a>s-o))>f,S[a]-=g,A[a]+=g<>3),e=0;e>p;for(S<=1&&(S=0),n=0;n=f&&(j-=f),n++,0===_&&(_=1),n%_==0)for(E-=E/c,(S=(A-=A/g)>>p)<=1&&(S=0),l=0;l>=o,n[e][1]>>=o,n[e][2]>>=o,n[e][3]=e}(),function(){var e,t,r,o,s,u,l=0,f=0;for(e=0;e>1,t=l+1;t>1,t=l+1;t<256;t++)E[t]=a}()},this.getColormap=function(){for(var e=[],t=[],r=0;r=0;)f=u?f=i:(f++,s<0&&(s=-s),(a=o[0]-e)<0&&(a=-a),(s+=a)=0&&((s=t-(o=n[c])[1])>=u?c=-1:(c--,s<0&&(s=-s),(a=o[0]-e)<0&&(a=-a),(s+=a)0)if(t.ended&&!a){var s=new Error("stream.push() after EOF");e.emit("error",s)}else if(t.endEmitted&&a){s=new Error("stream.unshift() after end event");e.emit("error",s)}else!t.decoder||a||i||(r=t.decoder.write(r)),a||(t.reading=!1),t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,a?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&g(e)),function(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(function(){!function(e,t){var n=t.length;for(;!t.reading&&!t.flowing&&!t.ended&&t.lengtht.highWaterMark&&(t.highWaterMark=function(e){if(e>=p)e=p;else{e--;for(var t=1;t<32;t<<=1)e|=e>>t;e++}return e}(e)),e>t.length?t.ended?t.length:(t.needReadable=!0,0):e)}function g(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(function(){v(e)}):v(e))}function v(e){l("emit readable"),e.emit("readable"),m(e)}function m(e){var t=e._readableState;if(l("flow",t.flowing),t.flowing)do{var n=e.read()}while(null!==n&&t.flowing)}function _(e,t){var n,r=t.buffer,a=t.length,o=!!t.decoder,s=!!t.objectMode;if(0===r.length)return null;if(0===a)n=null;else if(s)n=r.shift();else if(!e||e>=a)n=o?r.join(""):i.concat(r,a),r.length=0;else{if(e0)throw new Error("endReadable called on non-empty stream");t.endEmitted||(t.ended=!0,n.nextTick(function(){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}))}c.prototype.read=function(e){l("read",e);var t=this._readableState,n=e;if((!u.isNumber(e)||e>0)&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?w(this):g(this),null;if(0===(e=d(e,t))&&t.ended)return 0===t.length&&w(this),null;var r,i=t.needReadable;return l("need readable",i),(0===t.length||t.length-e0?_(e,t):null,u.isNull(r)&&(t.needReadable=!0,e=0),t.length-=e,0!==t.length||t.ended||(t.needReadable=!0),n!==e&&t.ended&&0===t.length&&w(this),u.isNull(r)||this.emit("data",r),r},c.prototype._read=function(e){this.emit("error",new Error("not implemented"))},c.prototype.pipe=function(e,t){var i=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,l("pipe count=%d opts=%j",o.pipesCount,t);var s=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?f:h;function u(e){l("onunpipe"),e===i&&h()}function f(){l("onend"),e.end()}o.endEmitted?n.nextTick(s):i.once("end",s),e.on("unpipe",u);var c=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a.listenerCount(e,"data")&&(t.flowing=!0,m(e))}}(i);function h(){l("cleanup"),e.removeListener("close",g),e.removeListener("finish",v),e.removeListener("drain",c),e.removeListener("error",d),e.removeListener("unpipe",u),i.removeListener("end",f),i.removeListener("end",h),i.removeListener("data",p),!o.awaitDrain||e._writableState&&!e._writableState.needDrain||c()}function p(t){l("ondata"),!1===e.write(t)&&(l("false write response, pause",i._readableState.awaitDrain),i._readableState.awaitDrain++,i.pause())}function d(t){l("onerror",t),_(),e.removeListener("error",d),0===a.listenerCount(e,"error")&&e.emit("error",t)}function g(){e.removeListener("finish",v),_()}function v(){l("onfinish"),e.removeListener("close",g),_()}function _(){l("unpipe"),i.unpipe(e)}return e.on("drain",c),i.on("data",p),e._events&&e._events.error?r(e._events.error)?e._events.error.unshift(d):e._events.error=[d,e._events.error]:e.on("error",d),e.once("close",g),e.once("finish",v),e.emit("pipe",i),o.flowing||(l("pipe resume"),i.resume()),e},c.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i1){for(var n=[],r=0;r>1,f=-7,c=n?i-1:0,h=n?-1:1,p=e[t+c];for(c+=h,a=p&(1<<-f)-1,p>>=-f,f+=s;f>0;a=256*a+e[t+c],c+=h,f-=8);for(o=a&(1<<-f)-1,a>>=-f,f+=r;f>0;o=256*o+e[t+c],c+=h,f-=8);if(0===a)a=1-l;else{if(a===u)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,r),a-=l}return(p?-1:1)*o*Math.pow(2,a-r)},n.write=function(e,t,n,r,i,a){var o,s,u,l=8*a-i-1,f=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:a-1,d=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=f):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),(t+=o+c>=1?h/u:h*Math.pow(2,1-c))*u>=2&&(o++,u/=2),o+c>=f?(s=0,o=f):o+c>=1?(s=(t*u-1)*Math.pow(2,i),o+=c):(s=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[n+p]=255&s,p+=d,s/=256,i-=8);for(o=o<0;e[n+p]=255&o,p+=d,o/=256,l-=8);e[n+p-d]|=128*g}},{}],52:[function(e,t,n){"function"==typeof Object.create?t.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},{}],53:[function(e,t,n){"use strict";t.exports=function(e){for(var t=new Array(e),n=0;n>i;0!=(t&o)&&p++;var d=n>>i;return 0!=(n&o)&&d++,function(e,t,n,o,s,u){function l(e,t,n){return en?n:e}var f=r.BitMatrix.createEmpty(o,s);function c(e,t,n,r,i){for(var o=n*i+t,s=0;sd&&(p=d);for(var g=0;gm&&(v=m);for(var _=l(g,2,t-3),w=l(h,2,n-3),b=0,y=-2;y<=2;y++){var x=u[w+y];b+=x[_-2],b+=x[_-1],b+=x[_],b+=x[_+1],b+=x[_+2]}c(e,v,p,b/25,o)}}return f}(u,p,d,t,n,function(e,t,n,r,o){for(var u=new Array(n),l=0;lh&&(c=h);for(var p=0;pg&&(d=g);for(var v=0,m=255,_=0,w=0,b=c*r+d;w_&&(_=x)}if(_-m>s)for(w++,b+=r;w>2*i;if(_-m<=s&&(k=m>>1,f>0&&p>0)){var E=u[f-1][p]+2*u[f][p-1]+u[f-1][p-1]>>2;m=n&&(e++,r+=t.estimatedModuleSize)}),e<3)return!1;for(var a=r/i,o=0,s=0;s=0&&f(n,l);)o[2]++,l--;if(l<0)return null;for(;l>=0&&!f(n,l)&&o[1]<=r;)o[1]++,l--;if(l<0||o[1]>r)return null;for(;l>=0&&f(n,l)&&o[0]<=r;)o[0]++,l--;if(o[0]>r)return null;for(l=t+1;l=r)return null;for(;l=r)return null;var c=o[0]+o[1]+o[2]+o[3]+o[4];return 5*Math.abs(c-i)>=2*i?null:s(o)?u(o,l):null}(r,Math.floor(c),n[2],l);if(null!=h&&null!=(c=function(t,n,r,i){for(var a=e.width,o=[0,0,0,0,0],l=t;l>=0&&f(l,n);)o[2]++,l--;if(l<0)return null;for(;l>=0&&!f(l,n)&&o[1]<=r;)o[1]++,l--;if(l<0||o[1]>r)return null;for(;l>=0&&f(l,n)&&o[0]<=r;)o[0]++,l--;if(o[0]>r)return null;for(l=t+1;l=r)return null;for(;l=r)return null;var c=o[0]+o[1]+o[2]+o[3]+o[4];return 5*Math.abs(c-i)>=i?null:s(o)?u(o,l):null}(Math.floor(c),Math.floor(h),n[2],l))&&(!a||function(t,n,r,i){for(var a=e.height,o=e.width,u=[0,0,0,0,0],l=0;t-l>=0&&f(n-l,t-l);)u[2]++,l++;if(t-l<0||n-l<0)return!1;for(;t-l>=0&&n-l>=0&&!f(n-l,t-l)&&u[1]<=r;)u[1]++,l++;if(t-l<0||n-l<0||u[1]>r)return!1;for(;t-l>=0&&n-l>=0&&f(n-l,t-l)&&u[0]<=r;)u[0]++,l++;if(u[0]>r)return!1;for(l=1;t+l=a||n+l>=o)return!1;for(;t+l=a||n+l>=o||u[3]>=r)return!1;for(;t+l=r)return!1;var c=u[0]+u[1]+u[2]+u[3]+u[4];return Math.abs(c-i)<2*i&&s(u)}(Math.floor(h),Math.floor(c),n[2],l))){for(var p=l/7,d=!1,g=0;g=n){if(null!=e)return a=!0,Math.floor(Math.abs(e.x-t.x)-Math.abs(e.y-t.y))/2;e=t}}),0}var d=e.height,g=e.width,v=Math.floor(3*d/(4*i));v_[2]&&(w+=x-_[2]-v,y=g-1)}_=[0,0,0,0,0],b=0}else _=[_[2],_[3],_[4],1,0],b=3;else _[++b]++;else _[b]++;s(_)&&h(_,w,g,!1)&&(v=_[0],a&&(m=c()))}var k=function(){var e=t.length;if(e<3)return null;if(e>3){var n=0,r=0;t.forEach(function(e){var t=e.estimatedModuleSize;n+=t,r+=t*t});var i=n/e,a=Math.sqrt(r/e-i*i);t.sort(function(e,t){var n=Math.abs(t.estimatedModuleSize-i),r=Math.abs(e.estimatedModuleSize-i);return n3;s++){var u=t[s];Math.abs(u.estimatedModuleSize-i)>o&&(t.splice(s,1),s--)}}return t.length>3&&(n=0,t.forEach(function(e){n+=e.estimatedModuleSize}),i=n/t.length,t.sort(function(e,t){if(t.count===e.count){var n=Math.abs(t.estimatedModuleSize-i),r=Math.abs(e.estimatedModuleSize-i);return n=i&&a>=o?(n=e[0],t=e[1],r=e[2]):o>=a&&o>=i?(n=e[1],t=e[0],r=e[2]):(n=e[2],t=e[0],r=e[1]),function(e,t,n){var r=t.x,i=t.y;return(n.x-r)*(e.y-i)-(n.y-i)*(e.x-r)}(t,n,r)<0){var s=t;t=r,r=s}return{bottomLeft:{x:t.x,y:t.y},topLeft:{x:n.x,y:n.y},topRight:{x:r.x,y:r.y}}}(k):null}},function(e,t,n){"use strict";var r=n(5),i=n(7),a=n(8),o=n(2),s=n(6);function u(e,t,n){for(var r=!0,i=0;ie||o<-1||o>t)throw new Error;r=!1,-1==a?(n[i]=0,r=!0):a==e&&(n[i]=e-1,r=!0),-1==o?(n[i+1]=0,r=!0):o==t&&(n[i+1]=t-1,r=!0)}r=!0;for(i=n.length-2;i>=0&&r;i-=2){a=Math.floor(n[i]),o=Math.floor(n[i+1]);if(a<-1||a>e||o<-1||o>t)throw new Error;r=!1,-1==a?(n[i]=0,r=!0):a==e&&(n[i]=e-1,r=!0),-1==o?(n[i+1]=0,r=!0):o==t&&(n[i+1]=t-1,r=!0)}return n}function l(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))}function f(e,t,n,i,a){t=Math.floor(t),n=Math.floor(n);var o=Math.floor(i*e),s=Math.max(0,t-o),u=Math.min(a.width,t+o);if(u-s<3*e)return null;var l=Math.max(0,n-o),f=Math.min(a.height-1,n+o);return r.findAlignment(s,l,u-s,f-l,e,a)}function c(e,t,n,r,i){e=Math.floor(e),t=Math.floor(t),n=Math.floor(n),r=Math.floor(r);var a=Math.abs(r-t)>Math.abs(n-e);if(a){var o=e;e=t,t=o,o=n,n=r,r=o}for(var s=Math.abs(n-e),u=Math.abs(r-t),f=-s>>1,c=e0){if(v==r)break;v+=h,f-=s}}return 2==p?l(n+c,r,e,t):NaN}function h(e,t,n,r,i){var a=c(e,t,n,r,i),o=1,s=e-(n-e);s<0?(o=e/(e-s),s=0):s>=i.width&&(o=(i.width-1-e)/(s-e),s=i.width-1);var u=t-(r-t)*o;return o=1,u<0?(o=t/(t-u),u=0):u>=i.height&&(o=(i.height-1-t)/(u-t),u=i.height-1),(a+=c(e,t,s=e+(s-e)*o,u,i))-1}function p(e,t,n){var r=h(e.x,e.y,t.x,t.y,n),i=h(t.x,t.y,e.x,e.y,n);return s.isNaN(r)?i/7:s.isNaN(i)?r/7:(r+i)/14}t.extract=function(e,t){var n=function(e,t,n,r){return(p(e,t,r)+p(e,n,r))/2}(t.topLeft,t.topRight,t.bottomLeft,e);if(n<1)return null;var r=function(e,t,n,r){var i=7+(Math.round(l(e.x,e.y,t.x,t.y)/r)+Math.round(l(e.x,e.y,n.x,n.y)/r)>>1);switch(3&i){case 0:i++;break;case 2:i--}return i}(t.topLeft,t.topRight,t.bottomLeft,n);if(!r)return null;var s=function(e){if(e%4!=1)return null;var t=e-17>>2;return t<1||t>40?null:a.getVersionForNumber(t)}(r);if(null==s)return null;var c=s.getDimensionForVersion()-7,h=null;if(s.alignmentPatternCenters.length>0)for(var d=t.topRight.x-t.topLeft.x+t.bottomLeft.x,g=t.topRight.y-t.topLeft.y+t.bottomLeft.y,v=1-3/c,m=t.topLeft.x+v*(d-t.topLeft.x),_=t.topLeft.y+v*(g-t.topLeft.y),w=4;w<=16&&!(h=f(n,m,_,w,e));w<<=1);return function(e,t,n){if(t<=0)return null;for(var r=o.BitMatrix.createEmpty(t,t),a=new Array(t<<1),s=0;s>1),a[c+1]=f;a=i.transformPoints(n,a);try{var h=u(e.width,e.height,a)}catch(e){return null}for(c=0;c>1,s,e.get(Math.floor(h[c]),Math.floor(h[c+1])))}return r}(e,r,function(e,t,n,r,a){var o,s,u,l,f=a-3.5;return null!=r?(o=r.x,s=r.y,u=l=f-3):(o=t.x-e.x+n.x,s=t.y-e.y+n.y,u=l=f),i.quadrilateralToQuadrilateral(3.5,3.5,f,3.5,u,l,3.5,f,e.x,e.y,t.x,t.y,o,s,n.x,n.y)}(t.topLeft,t.topRight,t.bottomLeft,h,r))}},function(e,t,n){"use strict";var r=n(6);function i(e,t,n,r){if(Math.abs(n-e.y)<=t&&Math.abs(r-e.x)<=t){var i=Math.abs(t-e.estimatedModuleSize);return i<=1||i<=e.estimatedModuleSize}return!1}function a(e,t,n,r){return{x:(e.x+n)/2,y:(e.y+t)/2,estimatedModuleSize:(e.estimatedModuleSize+r)/2}}function o(e,t){for(var n=t/2,r=0;r<3;r++)if(Math.abs(t-e[r])>=n)return!1;return!0}function s(e,t){var n=t-e[2]-e[1]/2;return r.isNaN(n)?null:n}t.findAlignment=function(e,t,n,r,u,l){var f=[];function c(e,t,n,r){var u=e[0]+e[1]+e[2],c=s(e,n);if(null==c)return null;var h=function(e,t,n,r,i,a){for(var u=a.height,l=[0,0,0],f=e;f>=0&&a.get(t,f)&&l[1]<=n;)l[1]++,f--;if(f<0||l[1]>n)return null;for(;f>=0&&!a.get(t,f)&&l[0]<=n;)l[0]++,f--;if(l[0]>n)return null;for(f=e+1;fn)return null;for(;fn)return null;var c=l[0]+l[1]+l[2];return 5*Math.abs(c-r)>=2*r?null:o(l,i)?s(l,f):null}(t,Math.floor(c),2*e[1],u,r,l);if(null!=h){var p=(e[0]+e[1]+e[2])/3;for(var d in f){var g=f[d];if(i(g,p,h,c))return a(g,h,c,p)}var v={x:c,y:h,estimatedModuleSize:p};f.push(v)}return null}for(var h=e+n,p=t+(r>>1),d=[0,0,0],g=0;g>1:-(g+1>>1));d[0]=0,d[1]=0,d[2]=0;for(var m=e;m>4&15]+n[e>>8&15]+n[e>>12&15]+n[e>>16&15]+n[e>>20&15]+n[e>>24&15]+n[e>>28&15]},t.isNaN=function(e){return"[object Number]"===Object.prototype.toString.call(e)&&e!==+e}},function(e,t){"use strict";function n(e,t,n,r,i,a,o,s){var u=e-n+i-o,l=t-r+a-s;if(0==u&&0==l)return{a11:n-e,a21:i-n,a31:e,a12:r-t,a22:a-r,a32:t,a13:0,a23:0,a33:1};var f=n-i,c=o-i,h=r-a,p=s-a,d=f*p-c*h,g=(u*p-c*l)/d,v=(f*l-u*h)/d;return{a11:n-e+g*n,a21:o-e+v*o,a31:e,a12:r-t+g*r,a22:s-t+v*s,a32:t,a13:g,a23:v,a33:1}}t.transformPoints=function(e,t){for(var n=t.length,r=e.a11,i=e.a12,a=e.a13,o=e.a21,s=e.a22,u=e.a23,l=e.a31,f=e.a32,c=e.a33,h=0;h40)throw new Error("Invalid version number "+e);return u[e-1]}t.getVersionForNumber=l},function(e,t,n){"use strict";var r=n(2),i=n(10),a=n(6),o=n(12),s=n(8),u=21522,l=[[21522,0],[20773,1],[24188,2],[23371,3],[17913,4],[16590,5],[20375,6],[19104,7],[30660,8],[29427,9],[32170,10],[30877,11],[26159,12],[25368,13],[27713,14],[26998,15],[5769,16],[5054,17],[7399,18],[6608,19],[1890,20],[597,21],[3340,22],[2107,23],[13663,24],[12392,25],[16177,26],[14854,27],[9396,28],[8579,29],[11994,30],[11245,31]],f=[function(e,t){return 0==(e+t&1)},function(e,t){return 0==(1&e)},function(e,t){return t%3==0},function(e,t){return(e+t)%3==0},function(e,t){return 0==((e>>1)+t/3&1)},function(e,t){return(e*t&1)+e*t%3==0},function(e,t){return 0==((e*t&1)+e*t%3&1)},function(e,t){return 0==((e+t&1)+e*t%3&1)}],c=[{ordinal:1,bits:0,name:"M"},{ordinal:0,bits:1,name:"L"},{ordinal:3,bits:2,name:"H"},{ordinal:2,bits:3,name:"Q"}];function h(e,t,n){for(var i=f[n.dataMask],a=e.height,o=function(e){for(var t=e.getDimensionForVersion(),n=new Array(t*t),i=0;i6&&(a.setRegion(t-11,0,3,6),a.setRegion(0,t-11,6,3)),a}(t),s=!0,u=[],l=0,c=0,h=0,p=a-1;p>0;p-=2){6==p&&p--;for(var d=0;d>3&3],dataMask:7&e}}function d(e,t){for(var n=1/0,r=0,i=0;i=0;r--)t=e.copyBit(8,r,t);var i=e.height,a=0,o=i-7;for(r=i-1;r>=o;r--)a=e.copyBit(8,r,a);for(n=i-8;n>2;if(n<=6)return s.getVersionForNumber(n);for(var r=0,i=t-11,a=5;a>=0;a--)for(var o=t-9;o>=i;o--)r=e.copyBit(o,a,r);var u=s.Version.decodeVersionInformation(r);if(null!=u&&u.getDimensionForVersion()==t)return u;for(r=0,o=5;o>=0;o--)for(a=t-9;a>=i;a--)r=e.copyBit(o,a,r);return null!=(u=s.Version.decodeVersionInformation(r))&&u.getDimensionForVersion()==t?u:null}(e);if(!t)return null;var n=g(e);if(!n)return null;var r=n.errorCorrectionLevel,a=h(e,t,n);if(!a)return null;var o=function(e,t,n){if(e.length!=t.totalCodewords)throw new Error("Invalid number of codewords for version; got "+e.length+" expected "+t.totalCodewords);var r=t.getECBlocksForLevel(n),i=0,a=r.ecBlocks;a.forEach(function(e){i+=e.count});var o=new Array(i),s=0;a.forEach(function(e){for(var t=0;t=0&&o[l].codewords.length!=u;)l--;l++;for(var f=u-r.ecCodewordsPerBlock,c=0,h=0;h=t.length)throw new Error("Could not decode alphanumeric char");return t[e].charCodeAt(0)}var a=function(){function e(e,t){this.characterCountBitsForVersions=e,this.bits=t}return e.prototype.getCharacterCountBits=function(e){if(null==this.characterCountBitsForVersions)throw new Error("Character count doesn't apply to this mode");var t;return t=e<=9?0:e<=26?1:2,this.characterCountBitsForVersions[t]},e}(),o=new a([0,0,0],0),s=new a([10,12,14],1),u=new a([9,11,13],2),l=new a([0,0,0],3),f=new a([8,16,16],4),c=new a(null,7),h=new a([8,10,12],8),p=new a(null,5),d=new a(null,9),g=new a([8,10,12],13);function v(e){switch(e){case 0:return o;case 1:return s;case 2:return u;case 3:return l;case 4:return f;case 5:return p;case 7:return c;case 8:return h;case 9:return d;case 13:return g;default:throw new Error("Couldn't decode mode from byte array")}}function m(e){var t=e.readBits(8);if(0==(128&t))return 127&t;if(128==(192&t))return(63&t)<<8|e.readBits(8);if(192==(224&t))return(31&t)<<16|e.readBits(16);throw new Error("Bad ECI bits starting with byte "+t)}function _(e,t,n){if(13*n>e.available())return!1;for(var r=new Array(2*n),i=0;n>0;){var a=e.readBits(13),o=Math.floor(a/96)<<8|a%96;o+=o<959?41377:42657,r[i]=o>>8&255,r[i+1]=255&o,i+=2,n--}return t.val=r,!0}function w(e,t,n){for(;n>=3;){if(e.available()<10)return!1;var r=e.readBits(10);if(r>=1e3)return!1;t.val.push(i(Math.floor(r/100))),t.val.push(i(Math.floor(r/10)%10)),t.val.push(i(r%10)),n-=3}if(2==n){if(e.available()<7)return!1;var a=e.readBits(7);if(a>=100)return!1;t.val.push(i(Math.floor(a/10))),t.val.push(i(a%10))}else if(1==n){if(e.available()<4)return!1;var o=e.readBits(4);if(o>=10)return!1;t.val.push(i(o))}return!0}function b(e,t,n,r){for(var a=t.val.length;n>1;){if(e.available()<11)return!1;var o=e.readBits(11);t.val.push(i(Math.floor(o/45))),t.val.push(i(o%45)),n-=2}if(1==n){if(e.available()<6)return!1;t.val.push(i(e.readBits(6)))}if(r)for(var s=a;se.available())return!1;for(var r=new Array(n),i=0;i30)return null}else if(i==g){var S=a.readBits(4),T=a.readBits(i.getCharacterCountBits(t));if(S==x&&!_(a,k,T))return null}else{var M=a.readBits(i.getCharacterCountBits(t));if(i==s){if(!w(a,k,M))return null}else if(i==u){if(!b(a,k,M,E))return null}else if(i==f){if(!y(a,k,M))return null}else if(i!=h)return null}return k.val}},function(e,t){"use strict";var n=function(){function e(e){this.byteOffset=0,this.bitOffset=0,this.bytes=e}return e.prototype.readBits=function(e){if(e<1||e>32||e>this.available())throw new Error("Cannot read "+e.toString()+" bits");var t=0;if(this.bitOffset>0){var n=8-this.bitOffset,r=e>8-r<<(a=n-r);t=(this.bytes[this.byteOffset]&i)>>a,e-=r,this.bitOffset+=r,8==this.bitOffset&&(this.bitOffset=0,this.byteOffset++)}if(e>0){for(;e>=8;)t=t<<8|255&this.bytes[this.byteOffset],this.byteOffset++,e-=8;if(e>0){var a;i=255>>(a=8-e)<>a,this.bitOffset+=e}}return t},e.prototype.available=function(){return 8*(this.bytes.length-this.byteOffset)-this.bitOffset},e}();t.BitStream=n},function(e,t){"use strict";var n=function(){function e(){this.field=new i(285,256,0)}return e.prototype.decode=function(e,t){for(var n=new r(this.field,e),a=new Array(t),o=!0,s=0;s=n/2;){var u=i,l=o;if(o=s,(i=a).isZero())return null;a=u;for(var f=this.field.zero,c=i.getCoefficient(i.degree()),h=this.field.inverse(c);a.degree()>=i.degree()&&!a.isZero();){var p=a.degree()-i.degree(),d=this.field.multiply(a.getCoefficient(a.degree()),h);f=f.addOrSubtract(this.field.buildMonomial(p,d)),a=a.addOrSubtract(i.multiplyByMonomial(p,d))}if(s=f.multiplyPoly(o).addOrSubtract(l),a.degree()>=i.degree())return null}var g=s.getCoefficient(0);if(0==g)return null;var v=this.field.inverse(g);return[s.multiply(v),a.multiply(v)]},e.prototype.findErrorLocations=function(e){var t=e.degree();if(1==t)return[e.getCoefficient(1)];for(var n=new Array(t),r=0,i=1;i1&&0==t[0]){for(var r=1;rr.length){var a=n;n=r,r=a}for(var o=new Array(r.length),s=r.length-n.length,u=0;u=this.size&&(e^=this.primitive,e&=this.size-1);for(t=0;t>>1,O=[["ary",x],["bind",g],["bindKey",v],["curry",_],["curryRight",w],["flip",E],["partial",b],["partialRight",y],["rearg",k]],N="[object Arguments]",U="[object Array]",F="[object AsyncFunction]",q="[object Boolean]",V="[object Date]",W="[object DOMException]",Z="[object Error]",G="[object Function]",Y="[object GeneratorFunction]",H="[object Map]",X="[object Number]",$="[object Null]",K="[object Object]",J="[object Proxy]",Q="[object RegExp]",ee="[object Set]",te="[object String]",ne="[object Symbol]",re="[object Undefined]",ie="[object WeakMap]",ae="[object WeakSet]",oe="[object ArrayBuffer]",se="[object DataView]",ue="[object Float32Array]",le="[object Float64Array]",fe="[object Int8Array]",ce="[object Int16Array]",he="[object Int32Array]",pe="[object Uint8Array]",de="[object Uint8ClampedArray]",ge="[object Uint16Array]",ve="[object Uint32Array]",me=/\b__p \+= '';/g,_e=/\b(__p \+=) '' \+/g,we=/(__e\(.*?\)|\b__t\)) \+\n'';/g,be=/&(?:amp|lt|gt|quot|#39);/g,ye=/[&<>"']/g,xe=RegExp(be.source),ke=RegExp(ye.source),Ee=/<%-([\s\S]+?)%>/g,Ae=/<%([\s\S]+?)%>/g,Se=/<%=([\s\S]+?)%>/g,Te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Me=/^\w*$/,Re=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ie=/[\\^$.*+?()[\]{}|]/g,je=RegExp(Ie.source),Ce=/^\s+|\s+$/g,Le=/^\s+/,Be=/\s+$/,De=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ze=/\{\n\/\* \[wrapped with (.+)\] \*/,Pe=/,? & /,Oe=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ne=/\\(\\)?/g,Ue=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Fe=/\w*$/,qe=/^[-+]0x[0-9a-f]+$/i,Ve=/^0b[01]+$/i,We=/^\[object .+?Constructor\]$/,Ze=/^0o[0-7]+$/i,Ge=/^(?:0|[1-9]\d*)$/,Ye=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,He=/($^)/,Xe=/['\n\r\u2028\u2029\\]/g,$e="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ke="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Je="[\\ud800-\\udfff]",Qe="["+Ke+"]",et="["+$e+"]",tt="\\d+",nt="[\\u2700-\\u27bf]",rt="[a-z\\xdf-\\xf6\\xf8-\\xff]",it="[^\\ud800-\\udfff"+Ke+tt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",at="\\ud83c[\\udffb-\\udfff]",ot="[^\\ud800-\\udfff]",st="(?:\\ud83c[\\udde6-\\uddff]){2}",ut="[\\ud800-\\udbff][\\udc00-\\udfff]",lt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",ft="(?:"+rt+"|"+it+")",ct="(?:"+lt+"|"+it+")",ht="(?:"+et+"|"+at+")"+"?",pt="[\\ufe0e\\ufe0f]?"+ht+("(?:\\u200d(?:"+[ot,st,ut].join("|")+")[\\ufe0e\\ufe0f]?"+ht+")*"),dt="(?:"+[nt,st,ut].join("|")+")"+pt,gt="(?:"+[ot+et+"?",et,st,ut,Je].join("|")+")",vt=RegExp("['’]","g"),mt=RegExp(et,"g"),_t=RegExp(at+"(?="+at+")|"+gt+pt,"g"),wt=RegExp([lt+"?"+rt+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[Qe,lt,"$"].join("|")+")",ct+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[Qe,lt+ft,"$"].join("|")+")",lt+"?"+ft+"+(?:['’](?:d|ll|m|re|s|t|ve))?",lt+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",tt,dt].join("|"),"g"),bt=RegExp("[\\u200d\\ud800-\\udfff"+$e+"\\ufe0e\\ufe0f]"),yt=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,xt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],kt=-1,Et={};Et[ue]=Et[le]=Et[fe]=Et[ce]=Et[he]=Et[pe]=Et[de]=Et[ge]=Et[ve]=!0,Et[N]=Et[U]=Et[oe]=Et[q]=Et[se]=Et[V]=Et[Z]=Et[G]=Et[H]=Et[X]=Et[K]=Et[Q]=Et[ee]=Et[te]=Et[ie]=!1;var At={};At[N]=At[U]=At[oe]=At[se]=At[q]=At[V]=At[ue]=At[le]=At[fe]=At[ce]=At[he]=At[H]=At[X]=At[K]=At[Q]=At[ee]=At[te]=At[ne]=At[pe]=At[de]=At[ge]=At[ve]=!0,At[Z]=At[G]=At[ie]=!1;var St={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Tt=parseFloat,Mt=parseInt,Rt="object"==typeof e&&e&&e.Object===Object&&e,It="object"==typeof self&&self&&self.Object===Object&&self,jt=Rt||It||Function("return this")(),Ct="object"==typeof n&&n&&!n.nodeType&&n,Lt=Ct&&"object"==typeof t&&t&&!t.nodeType&&t,Bt=Lt&&Lt.exports===Ct,Dt=Bt&&Rt.process,zt=function(){try{return Dt&&Dt.binding&&Dt.binding("util")}catch(e){}}(),Pt=zt&&zt.isArrayBuffer,Ot=zt&&zt.isDate,Nt=zt&&zt.isMap,Ut=zt&&zt.isRegExp,Ft=zt&&zt.isSet,qt=zt&&zt.isTypedArray;function Vt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function Wt(e,t,n,r){for(var i=-1,a=null==e?0:e.length;++i-1}function $t(e,t,n){for(var r=-1,i=null==e?0:e.length;++r-1;);return n}function wn(e,t){for(var n=e.length;n--&&on(t,e[n],0)>-1;);return n}var bn=cn({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),yn=cn({"&":"&","<":"<",">":">",'"':""","'":"'"});function xn(e){return"\\"+St[e]}function kn(e){return bt.test(e)}function En(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}function An(e,t){return function(n){return e(t(n))}}function Sn(e,t){for(var n=-1,r=e.length,i=0,a=[];++n",""":'"',"'":"'"});var Ln=function e(t){var n,$e=(t=null==t?jt:Ln.defaults(jt.Object(),t,Ln.pick(jt,xt))).Array,Ke=t.Date,Je=t.Error,Qe=t.Function,et=t.Math,tt=t.Object,nt=t.RegExp,rt=t.String,it=t.TypeError,at=$e.prototype,ot=Qe.prototype,st=tt.prototype,ut=t["__core-js_shared__"],lt=ot.toString,ft=st.hasOwnProperty,ct=0,ht=(n=/[^.]+$/.exec(ut&&ut.keys&&ut.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",pt=st.toString,dt=lt.call(tt),gt=jt._,_t=nt("^"+lt.call(ft).replace(Ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),bt=Bt?t.Buffer:r,St=t.Symbol,Rt=t.Uint8Array,It=bt?bt.allocUnsafe:r,Ct=An(tt.getPrototypeOf,tt),Lt=tt.create,Dt=st.propertyIsEnumerable,zt=at.splice,nn=St?St.isConcatSpreadable:r,cn=St?St.iterator:r,Bn=St?St.toStringTag:r,Dn=function(){try{var e=Na(tt,"defineProperty");return e({},"",{}),e}catch(e){}}(),zn=t.clearTimeout!==jt.clearTimeout&&t.clearTimeout,Pn=Ke&&Ke.now!==jt.Date.now&&Ke.now,On=t.setTimeout!==jt.setTimeout&&t.setTimeout,Nn=et.ceil,Un=et.floor,Fn=tt.getOwnPropertySymbols,qn=bt?bt.isBuffer:r,Vn=t.isFinite,Wn=at.join,Zn=An(tt.keys,tt),Gn=et.max,Yn=et.min,Hn=Ke.now,Xn=t.parseInt,$n=et.random,Kn=at.reverse,Jn=Na(t,"DataView"),Qn=Na(t,"Map"),er=Na(t,"Promise"),tr=Na(t,"Set"),nr=Na(t,"WeakMap"),rr=Na(tt,"create"),ir=nr&&new nr,ar={},or=fo(Jn),sr=fo(Qn),ur=fo(er),lr=fo(tr),fr=fo(nr),cr=St?St.prototype:r,hr=cr?cr.valueOf:r,pr=cr?cr.toString:r;function dr(e){if(Ms(e)&&!ms(e)&&!(e instanceof _r)){if(e instanceof mr)return e;if(ft.call(e,"__wrapped__"))return co(e)}return new mr(e)}var gr=function(){function e(){}return function(t){if(!Ts(t))return{};if(Lt)return Lt(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function vr(){}function mr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function _r(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=D,this.__views__=[]}function wr(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function zr(e,t,n,i,a,o){var s,u=t&f,l=t&c,p=t&h;if(n&&(s=a?n(e,i,a,o):n(e)),s!==r)return s;if(!Ts(e))return e;var d=ms(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&ft.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!u)return ra(e,s)}else{var g=qa(e),v=g==G||g==Y;if(ys(e))return Ki(e,u);if(g==K||g==N||v&&!a){if(s=l||v?{}:Wa(e),!u)return l?function(e,t){return ia(e,Fa(e),t)}(e,function(e,t){return e&&ia(t,au(t),e)}(s,e)):function(e,t){return ia(e,Ua(e),t)}(e,Cr(s,e))}else{if(!At[g])return a?e:{};s=function(e,t,n){var r,i,a,o=e.constructor;switch(t){case oe:return Ji(e);case q:case V:return new o(+e);case se:return function(e,t){var n=t?Ji(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case ue:case le:case fe:case ce:case he:case pe:case de:case ge:case ve:return Qi(e,n);case H:return new o;case X:case te:return new o(e);case Q:return(a=new(i=e).constructor(i.source,Fe.exec(i))).lastIndex=i.lastIndex,a;case ee:return new o;case ne:return r=e,hr?tt(hr.call(r)):{}}}(e,g,u)}}o||(o=new kr);var m=o.get(e);if(m)return m;if(o.set(e,s),Ls(e))return e.forEach(function(r){s.add(zr(r,t,n,r,e,o))}),s;if(Rs(e))return e.forEach(function(r,i){s.set(i,zr(r,t,n,i,e,o))}),s;var _=d?r:(p?l?Ca:ja:l?au:iu)(e);return Zt(_||e,function(r,i){_&&(r=e[i=r]),Rr(s,i,zr(r,t,n,i,e,o))}),s}function Pr(e,t,n){var i=n.length;if(null==e)return!i;for(e=tt(e);i--;){var a=n[i],o=t[a],s=e[a];if(s===r&&!(a in e)||!o(s))return!1}return!0}function Or(e,t,n){if("function"!=typeof e)throw new it(o);return ro(function(){e.apply(r,n)},t)}function Nr(e,t,n,r){var a=-1,o=Xt,s=!0,u=e.length,l=[],f=t.length;if(!u)return l;n&&(t=Kt(t,gn(n))),r?(o=$t,s=!1):t.length>=i&&(o=mn,s=!1,t=new xr(t));e:for(;++a-1},br.prototype.set=function(e,t){var n=this.__data__,r=Ir(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},yr.prototype.clear=function(){this.size=0,this.__data__={hash:new wr,map:new(Qn||br),string:new wr}},yr.prototype.delete=function(e){var t=Pa(this,e).delete(e);return this.size-=t?1:0,t},yr.prototype.get=function(e){return Pa(this,e).get(e)},yr.prototype.has=function(e){return Pa(this,e).has(e)},yr.prototype.set=function(e,t){var n=Pa(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},xr.prototype.add=xr.prototype.push=function(e){return this.__data__.set(e,s),this},xr.prototype.has=function(e){return this.__data__.has(e)},kr.prototype.clear=function(){this.__data__=new br,this.size=0},kr.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},kr.prototype.get=function(e){return this.__data__.get(e)},kr.prototype.has=function(e){return this.__data__.has(e)},kr.prototype.set=function(e,t){var n=this.__data__;if(n instanceof br){var r=n.__data__;if(!Qn||r.length0&&n(s)?t>1?Zr(s,t-1,n,r,i):Jt(i,s):r||(i[i.length]=s)}return i}var Gr=ua(),Yr=ua(!0);function Hr(e,t){return e&&Gr(e,t,iu)}function Xr(e,t){return e&&Yr(e,t,iu)}function $r(e,t){return Ht(t,function(t){return Es(e[t])})}function Kr(e,t){for(var n=0,i=(t=Yi(t,e)).length;null!=e&&nt}function ti(e,t){return null!=e&&ft.call(e,t)}function ni(e,t){return null!=e&&t in tt(e)}function ri(e,t,n){for(var i=n?$t:Xt,a=e[0].length,o=e.length,s=o,u=$e(o),l=1/0,f=[];s--;){var c=e[s];s&&t&&(c=Kt(c,gn(t))),l=Yn(c.length,l),u[s]=!n&&(t||a>=120&&c.length>=120)?new xr(s&&c):r}c=e[0];var h=-1,p=u[0];e:for(;++h=s)return u;var l=n[r];return u*("desc"==l?-1:1)}}return e.index-t.index}(e,t,n)})}function wi(e,t,n){for(var r=-1,i=t.length,a={};++r-1;)s!==e&&zt.call(s,u,1),zt.call(e,u,1);return e}function yi(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==a){var a=i;Ga(i)?zt.call(e,i,1):Ni(e,i)}}return e}function xi(e,t){return e+Un($n()*(t-e+1))}function ki(e,t){var n="";if(!e||t<1||t>C)return n;do{t%2&&(n+=e),(t=Un(t/2))&&(e+=e)}while(t);return n}function Ei(e,t){return io(eo(e,t,Iu),e+"")}function Ai(e){return Ar(pu(e))}function Si(e,t){var n=pu(e);return so(n,Dr(t,0,n.length))}function Ti(e,t,n,i){if(!Ts(e))return e;for(var a=-1,o=(t=Yi(t,e)).length,s=o-1,u=e;null!=u&&++ai?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var a=$e(i);++r>>1,o=e[a];null!==o&&!Ds(o)&&(n?o<=t:o=i){var f=t?null:ka(e);if(f)return Mn(f);s=!1,a=mn,l=new xr}else l=t?[]:u;e:for(;++r=i?e:ji(e,t,n)}var $i=zn||function(e){return jt.clearTimeout(e)};function Ki(e,t){if(t)return e.slice();var n=e.length,r=It?It(n):new e.constructor(n);return e.copy(r),r}function Ji(e){var t=new e.constructor(e.byteLength);return new Rt(t).set(new Rt(e)),t}function Qi(e,t){var n=t?Ji(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function ea(e,t){if(e!==t){var n=e!==r,i=null===e,a=e==e,o=Ds(e),s=t!==r,u=null===t,l=t==t,f=Ds(t);if(!u&&!f&&!o&&e>t||o&&s&&l&&!u&&!f||i&&s&&l||!n&&l||!a)return 1;if(!i&&!o&&!f&&e1?n[a-1]:r,s=a>2?n[2]:r;for(o=e.length>3&&"function"==typeof o?(a--,o):r,s&&Ya(n[0],n[1],s)&&(o=a<3?r:o,a=1),t=tt(t);++i-1?a[o?t[s]:s]:r}}function pa(e){return Ia(function(t){var n=t.length,i=n,a=mr.prototype.thru;for(e&&t.reverse();i--;){var s=t[i];if("function"!=typeof s)throw new it(o);if(a&&!u&&"wrapper"==Ba(s))var u=new mr([],!0)}for(i=u?i:n;++i1&&_.reverse(),c&&lu))return!1;var f=o.get(e);if(f&&o.get(t))return f==t;var c=-1,h=!0,g=n&d?new xr:r;for(o.set(e,t),o.set(t,e);++c-1&&e%1==0&&e1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(De,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return Zt(O,function(n){var r="_."+n[0];t&n[1]&&!Xt(e,r)&&e.push(r)}),e.sort()}(function(e){var t=e.match(ze);return t?t[1].split(Pe):[]}(r),n)))}function oo(e){var t=0,n=0;return function(){var i=Hn(),a=M-(i-n);if(n=i,a>0){if(++t>=T)return arguments[0]}else t=0;return e.apply(r,arguments)}}function so(e,t){var n=-1,i=e.length,a=i-1;for(t=t===r?i:t;++n1?e[t-1]:r;return Co(e,n="function"==typeof n?(e.pop(),n):r)});function No(e){var t=dr(e);return t.__chain__=!0,t}function Uo(e,t){return t(e)}var Fo=Ia(function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,a=function(t){return Br(t,e)};return!(t>1||this.__actions__.length)&&i instanceof _r&&Ga(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:Uo,args:[a],thisArg:r}),new mr(i,this.__chain__).thru(function(e){return t&&!e.length&&e.push(r),e})):this.thru(a)});var qo=aa(function(e,t,n){ft.call(e,n)?++e[n]:Lr(e,n,1)});var Vo=ha(vo),Wo=ha(mo);function Zo(e,t){return(ms(e)?Zt:Ur)(e,za(t,3))}function Go(e,t){return(ms(e)?Gt:Fr)(e,za(t,3))}var Yo=aa(function(e,t,n){ft.call(e,n)?e[n].push(t):Lr(e,n,[t])});var Ho=Ei(function(e,t,n){var r=-1,i="function"==typeof t,a=ws(e)?$e(e.length):[];return Ur(e,function(e){a[++r]=i?Vt(t,e,n):ii(e,t,n)}),a}),Xo=aa(function(e,t,n){Lr(e,n,t)});function $o(e,t){return(ms(e)?Kt:pi)(e,za(t,3))}var Ko=aa(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]});var Jo=Ei(function(e,t){if(null==e)return[];var n=t.length;return n>1&&Ya(e,t[0],t[1])?t=[]:n>2&&Ya(t[0],t[1],t[2])&&(t=[t[0]]),_i(e,Zr(t,1),[])}),Qo=Pn||function(){return jt.Date.now()};function es(e,t,n){return t=n?r:t,t=e&&null==t?e.length:t,Aa(e,x,r,r,r,r,t)}function ts(e,t){var n;if("function"!=typeof t)throw new it(o);return e=Fs(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var ns=Ei(function(e,t,n){var r=g;if(n.length){var i=Sn(n,Da(ns));r|=b}return Aa(e,r,t,n,i)}),rs=Ei(function(e,t,n){var r=g|v;if(n.length){var i=Sn(n,Da(rs));r|=b}return Aa(t,r,e,n,i)});function is(e,t,n){var i,a,s,u,l,f,c=0,h=!1,p=!1,d=!0;if("function"!=typeof e)throw new it(o);function g(t){var n=i,o=a;return i=a=r,c=t,u=e.apply(o,n)}function v(e){var n=e-f;return f===r||n>=t||n<0||p&&e-c>=s}function m(){var e=Qo();if(v(e))return _(e);l=ro(m,function(e){var n=t-(e-f);return p?Yn(n,s-(e-c)):n}(e))}function _(e){return l=r,d&&i?g(e):(i=a=r,u)}function w(){var e=Qo(),n=v(e);if(i=arguments,a=this,f=e,n){if(l===r)return function(e){return c=e,l=ro(m,t),h?g(e):u}(f);if(p)return l=ro(m,t),g(f)}return l===r&&(l=ro(m,t)),u}return t=Vs(t)||0,Ts(n)&&(h=!!n.leading,s=(p="maxWait"in n)?Gn(Vs(n.maxWait)||0,t):s,d="trailing"in n?!!n.trailing:d),w.cancel=function(){l!==r&&$i(l),c=0,i=f=a=l=r},w.flush=function(){return l===r?u:_(Qo())},w}var as=Ei(function(e,t){return Or(e,1,t)}),os=Ei(function(e,t,n){return Or(e,Vs(t)||0,n)});function ss(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new it(o);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(ss.Cache||yr),n}function us(e){if("function"!=typeof e)throw new it(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}ss.Cache=yr;var ls=Hi(function(e,t){var n=(t=1==t.length&&ms(t[0])?Kt(t[0],gn(za())):Kt(Zr(t,1),gn(za()))).length;return Ei(function(r){for(var i=-1,a=Yn(r.length,n);++i=t}),vs=ai(function(){return arguments}())?ai:function(e){return Ms(e)&&ft.call(e,"callee")&&!Dt.call(e,"callee")},ms=$e.isArray,_s=Pt?gn(Pt):function(e){return Ms(e)&&Qr(e)==oe};function ws(e){return null!=e&&Ss(e.length)&&!Es(e)}function bs(e){return Ms(e)&&ws(e)}var ys=qn||Vu,xs=Ot?gn(Ot):function(e){return Ms(e)&&Qr(e)==V};function ks(e){if(!Ms(e))return!1;var t=Qr(e);return t==Z||t==W||"string"==typeof e.message&&"string"==typeof e.name&&!js(e)}function Es(e){if(!Ts(e))return!1;var t=Qr(e);return t==G||t==Y||t==F||t==J}function As(e){return"number"==typeof e&&e==Fs(e)}function Ss(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=C}function Ts(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ms(e){return null!=e&&"object"==typeof e}var Rs=Nt?gn(Nt):function(e){return Ms(e)&&qa(e)==H};function Is(e){return"number"==typeof e||Ms(e)&&Qr(e)==X}function js(e){if(!Ms(e)||Qr(e)!=K)return!1;var t=Ct(e);if(null===t)return!0;var n=ft.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&<.call(n)==dt}var Cs=Ut?gn(Ut):function(e){return Ms(e)&&Qr(e)==Q};var Ls=Ft?gn(Ft):function(e){return Ms(e)&&qa(e)==ee};function Bs(e){return"string"==typeof e||!ms(e)&&Ms(e)&&Qr(e)==te}function Ds(e){return"symbol"==typeof e||Ms(e)&&Qr(e)==ne}var zs=qt?gn(qt):function(e){return Ms(e)&&Ss(e.length)&&!!Et[Qr(e)]};var Ps=ba(hi),Os=ba(function(e,t){return e<=t});function Ns(e){if(!e)return[];if(ws(e))return Bs(e)?jn(e):ra(e);if(cn&&e[cn])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[cn]());var t=qa(e);return(t==H?En:t==ee?Mn:pu)(e)}function Us(e){return e?(e=Vs(e))===j||e===-j?(e<0?-1:1)*L:e==e?e:0:0===e?e:0}function Fs(e){var t=Us(e),n=t%1;return t==t?n?t-n:t:0}function qs(e){return e?Dr(Fs(e),0,D):0}function Vs(e){if("number"==typeof e)return e;if(Ds(e))return B;if(Ts(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Ts(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(Ce,"");var n=Ve.test(e);return n||Ze.test(e)?Mt(e.slice(2),n?2:8):qe.test(e)?B:+e}function Ws(e){return ia(e,au(e))}function Zs(e){return null==e?"":Pi(e)}var Gs=oa(function(e,t){if(Ka(t)||ws(t))ia(t,iu(t),e);else for(var n in t)ft.call(t,n)&&Rr(e,n,t[n])}),Ys=oa(function(e,t){ia(t,au(t),e)}),Hs=oa(function(e,t,n,r){ia(t,au(t),e,r)}),Xs=oa(function(e,t,n,r){ia(t,iu(t),e,r)}),$s=Ia(Br);var Ks=Ei(function(e,t){e=tt(e);var n=-1,i=t.length,a=i>2?t[2]:r;for(a&&Ya(t[0],t[1],a)&&(i=1);++n1),t}),ia(e,Ca(e),n),r&&(n=zr(n,f|c|h,Ma));for(var i=t.length;i--;)Ni(n,t[i]);return n});var lu=Ia(function(e,t){return null==e?{}:function(e,t){return wi(e,t,function(t,n){return eu(e,n)})}(e,t)});function fu(e,t){if(null==e)return{};var n=Kt(Ca(e),function(e){return[e]});return t=za(t),wi(e,n,function(e,n){return t(e,n[0])})}var cu=Ea(iu),hu=Ea(au);function pu(e){return null==e?[]:vn(e,iu(e))}var du=fa(function(e,t,n){return t=t.toLowerCase(),e+(n?gu(t):t)});function gu(e){return ku(Zs(e).toLowerCase())}function vu(e){return(e=Zs(e))&&e.replace(Ye,bn).replace(mt,"")}var mu=fa(function(e,t,n){return e+(n?"-":"")+t.toLowerCase()}),_u=fa(function(e,t,n){return e+(n?" ":"")+t.toLowerCase()}),wu=la("toLowerCase");var bu=fa(function(e,t,n){return e+(n?"_":"")+t.toLowerCase()});var yu=fa(function(e,t,n){return e+(n?" ":"")+ku(t)});var xu=fa(function(e,t,n){return e+(n?" ":"")+t.toUpperCase()}),ku=la("toUpperCase");function Eu(e,t,n){return e=Zs(e),(t=n?r:t)===r?function(e){return yt.test(e)}(e)?function(e){return e.match(wt)||[]}(e):function(e){return e.match(Oe)||[]}(e):e.match(t)||[]}var Au=Ei(function(e,t){try{return Vt(e,r,t)}catch(e){return ks(e)?e:new Je(e)}}),Su=Ia(function(e,t){return Zt(t,function(t){t=lo(t),Lr(e,t,ns(e[t],e))}),e});function Tu(e){return function(){return e}}var Mu=pa(),Ru=pa(!0);function Iu(e){return e}function ju(e){return li("function"==typeof e?e:zr(e,f))}var Cu=Ei(function(e,t){return function(n){return ii(n,e,t)}}),Lu=Ei(function(e,t){return function(n){return ii(e,n,t)}});function Bu(e,t,n){var r=iu(t),i=$r(t,r);null!=n||Ts(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=$r(t,iu(t)));var a=!(Ts(n)&&"chain"in n&&!n.chain),o=Es(e);return Zt(i,function(n){var r=t[n];e[n]=r,o&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=ra(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,Jt([this.value()],arguments))})}),e}function Du(){}var zu=ma(Kt),Pu=ma(Yt),Ou=ma(tn);function Nu(e){return Ha(e)?fn(lo(e)):function(e){return function(t){return Kr(t,e)}}(e)}var Uu=wa(),Fu=wa(!0);function qu(){return[]}function Vu(){return!1}var Wu=va(function(e,t){return e+t},0),Zu=xa("ceil"),Gu=va(function(e,t){return e/t},1),Yu=xa("floor");var Hu,Xu=va(function(e,t){return e*t},1),$u=xa("round"),Ku=va(function(e,t){return e-t},0);return dr.after=function(e,t){if("function"!=typeof t)throw new it(o);return e=Fs(e),function(){if(--e<1)return t.apply(this,arguments)}},dr.ary=es,dr.assign=Gs,dr.assignIn=Ys,dr.assignInWith=Hs,dr.assignWith=Xs,dr.at=$s,dr.before=ts,dr.bind=ns,dr.bindAll=Su,dr.bindKey=rs,dr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return ms(e)?e:[e]},dr.chain=No,dr.chunk=function(e,t,n){t=(n?Ya(e,t,n):t===r)?1:Gn(Fs(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var a=0,o=0,s=$e(Nn(i/t));aa?0:a+n),(i=i===r||i>a?a:Fs(i))<0&&(i+=a),i=n>i?0:qs(i);n>>0)?(e=Zs(e))&&("string"==typeof t||null!=t&&!Cs(t))&&!(t=Pi(t))&&kn(e)?Xi(jn(e),0,n):e.split(t,n):[]},dr.spread=function(e,t){if("function"!=typeof e)throw new it(o);return t=null==t?0:Gn(Fs(t),0),Ei(function(n){var r=n[t],i=Xi(n,0,t);return r&&Jt(i,r),Vt(e,this,i)})},dr.tail=function(e){var t=null==e?0:e.length;return t?ji(e,1,t):[]},dr.take=function(e,t,n){return e&&e.length?ji(e,0,(t=n||t===r?1:Fs(t))<0?0:t):[]},dr.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?ji(e,(t=i-(t=n||t===r?1:Fs(t)))<0?0:t,i):[]},dr.takeRightWhile=function(e,t){return e&&e.length?Fi(e,za(t,3),!1,!0):[]},dr.takeWhile=function(e,t){return e&&e.length?Fi(e,za(t,3)):[]},dr.tap=function(e,t){return t(e),e},dr.throttle=function(e,t,n){var r=!0,i=!0;if("function"!=typeof e)throw new it(o);return Ts(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),is(e,t,{leading:r,maxWait:t,trailing:i})},dr.thru=Uo,dr.toArray=Ns,dr.toPairs=cu,dr.toPairsIn=hu,dr.toPath=function(e){return ms(e)?Kt(e,lo):Ds(e)?[e]:ra(uo(Zs(e)))},dr.toPlainObject=Ws,dr.transform=function(e,t,n){var r=ms(e),i=r||ys(e)||zs(e);if(t=za(t,4),null==n){var a=e&&e.constructor;n=i?r?new a:[]:Ts(e)&&Es(a)?gr(Ct(e)):{}}return(i?Zt:Hr)(e,function(e,r,i){return t(n,e,r,i)}),n},dr.unary=function(e){return es(e,1)},dr.union=Mo,dr.unionBy=Ro,dr.unionWith=Io,dr.uniq=function(e){return e&&e.length?Oi(e):[]},dr.uniqBy=function(e,t){return e&&e.length?Oi(e,za(t,2)):[]},dr.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?Oi(e,r,t):[]},dr.unset=function(e,t){return null==e||Ni(e,t)},dr.unzip=jo,dr.unzipWith=Co,dr.update=function(e,t,n){return null==e?e:Ui(e,t,Gi(n))},dr.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:Ui(e,t,Gi(n),i)},dr.values=pu,dr.valuesIn=function(e){return null==e?[]:vn(e,au(e))},dr.without=Lo,dr.words=Eu,dr.wrap=function(e,t){return fs(Gi(t),e)},dr.xor=Bo,dr.xorBy=Do,dr.xorWith=zo,dr.zip=Po,dr.zipObject=function(e,t){return Wi(e||[],t||[],Rr)},dr.zipObjectDeep=function(e,t){return Wi(e||[],t||[],Ti)},dr.zipWith=Oo,dr.entries=cu,dr.entriesIn=hu,dr.extend=Ys,dr.extendWith=Hs,Bu(dr,dr),dr.add=Wu,dr.attempt=Au,dr.camelCase=du,dr.capitalize=gu,dr.ceil=Zu,dr.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=Vs(n))==n?n:0),t!==r&&(t=(t=Vs(t))==t?t:0),Dr(Vs(e),t,n)},dr.clone=function(e){return zr(e,h)},dr.cloneDeep=function(e){return zr(e,f|h)},dr.cloneDeepWith=function(e,t){return zr(e,f|h,t="function"==typeof t?t:r)},dr.cloneWith=function(e,t){return zr(e,h,t="function"==typeof t?t:r)},dr.conformsTo=function(e,t){return null==t||Pr(e,t,iu(t))},dr.deburr=vu,dr.defaultTo=function(e,t){return null==e||e!=e?t:e},dr.divide=Gu,dr.endsWith=function(e,t,n){e=Zs(e),t=Pi(t);var i=e.length,a=n=n===r?i:Dr(Fs(n),0,i);return(n-=t.length)>=0&&e.slice(n,a)==t},dr.eq=ps,dr.escape=function(e){return(e=Zs(e))&&ke.test(e)?e.replace(ye,yn):e},dr.escapeRegExp=function(e){return(e=Zs(e))&&je.test(e)?e.replace(Ie,"\\$&"):e},dr.every=function(e,t,n){var i=ms(e)?Yt:qr;return n&&Ya(e,t,n)&&(t=r),i(e,za(t,3))},dr.find=Vo,dr.findIndex=vo,dr.findKey=function(e,t){return rn(e,za(t,3),Hr)},dr.findLast=Wo,dr.findLastIndex=mo,dr.findLastKey=function(e,t){return rn(e,za(t,3),Xr)},dr.floor=Yu,dr.forEach=Zo,dr.forEachRight=Go,dr.forIn=function(e,t){return null==e?e:Gr(e,za(t,3),au)},dr.forInRight=function(e,t){return null==e?e:Yr(e,za(t,3),au)},dr.forOwn=function(e,t){return e&&Hr(e,za(t,3))},dr.forOwnRight=function(e,t){return e&&Xr(e,za(t,3))},dr.get=Qs,dr.gt=ds,dr.gte=gs,dr.has=function(e,t){return null!=e&&Va(e,t,ti)},dr.hasIn=eu,dr.head=wo,dr.identity=Iu,dr.includes=function(e,t,n,r){e=ws(e)?e:pu(e),n=n&&!r?Fs(n):0;var i=e.length;return n<0&&(n=Gn(i+n,0)),Bs(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&on(e,t,n)>-1},dr.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:Fs(n);return i<0&&(i=Gn(r+i,0)),on(e,t,i)},dr.inRange=function(e,t,n){return t=Us(t),n===r?(n=t,t=0):n=Us(n),function(e,t,n){return e>=Yn(t,n)&&e=-C&&e<=C},dr.isSet=Ls,dr.isString=Bs,dr.isSymbol=Ds,dr.isTypedArray=zs,dr.isUndefined=function(e){return e===r},dr.isWeakMap=function(e){return Ms(e)&&qa(e)==ie},dr.isWeakSet=function(e){return Ms(e)&&Qr(e)==ae},dr.join=function(e,t){return null==e?"":Wn.call(e,t)},dr.kebabCase=mu,dr.last=ko,dr.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var a=i;return n!==r&&(a=(a=Fs(n))<0?Gn(i+a,0):Yn(a,i-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,a):an(e,un,a,!0)},dr.lowerCase=_u,dr.lowerFirst=wu,dr.lt=Ps,dr.lte=Os,dr.max=function(e){return e&&e.length?Vr(e,Iu,ei):r},dr.maxBy=function(e,t){return e&&e.length?Vr(e,za(t,2),ei):r},dr.mean=function(e){return ln(e,Iu)},dr.meanBy=function(e,t){return ln(e,za(t,2))},dr.min=function(e){return e&&e.length?Vr(e,Iu,hi):r},dr.minBy=function(e,t){return e&&e.length?Vr(e,za(t,2),hi):r},dr.stubArray=qu,dr.stubFalse=Vu,dr.stubObject=function(){return{}},dr.stubString=function(){return""},dr.stubTrue=function(){return!0},dr.multiply=Xu,dr.nth=function(e,t){return e&&e.length?mi(e,Fs(t)):r},dr.noConflict=function(){return jt._===this&&(jt._=gt),this},dr.noop=Du,dr.now=Qo,dr.pad=function(e,t,n){e=Zs(e);var r=(t=Fs(t))?In(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return _a(Un(i),n)+e+_a(Nn(i),n)},dr.padEnd=function(e,t,n){e=Zs(e);var r=(t=Fs(t))?In(e):0;return t&&rt){var i=e;e=t,t=i}if(n||e%1||t%1){var a=$n();return Yn(e+a*(t-e+Tt("1e-"+((a+"").length-1))),t)}return xi(e,t)},dr.reduce=function(e,t,n){var r=ms(e)?Qt:hn,i=arguments.length<3;return r(e,za(t,4),n,i,Ur)},dr.reduceRight=function(e,t,n){var r=ms(e)?en:hn,i=arguments.length<3;return r(e,za(t,4),n,i,Fr)},dr.repeat=function(e,t,n){return t=(n?Ya(e,t,n):t===r)?1:Fs(t),ki(Zs(e),t)},dr.replace=function(){var e=arguments,t=Zs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},dr.result=function(e,t,n){var i=-1,a=(t=Yi(t,e)).length;for(a||(a=1,e=r);++iC)return[];var n=D,r=Yn(e,D);t=za(t),e-=D;for(var i=dn(r,t);++n=o)return e;var u=n-In(i);if(u<1)return i;var l=s?Xi(s,0,u).join(""):e.slice(0,u);if(a===r)return l+i;if(s&&(u+=l.length-u),Cs(a)){if(e.slice(u).search(a)){var f,c=l;for(a.global||(a=nt(a.source,Zs(Fe.exec(a))+"g")),a.lastIndex=0;f=a.exec(c);)var h=f.index;l=l.slice(0,h===r?u:h)}}else if(e.indexOf(Pi(a),u)!=u){var p=l.lastIndexOf(a);p>-1&&(l=l.slice(0,p))}return l+i},dr.unescape=function(e){return(e=Zs(e))&&xe.test(e)?e.replace(be,Cn):e},dr.uniqueId=function(e){var t=++ct;return Zs(e)+t},dr.upperCase=xu,dr.upperFirst=ku,dr.each=Zo,dr.eachRight=Go,dr.first=wo,Bu(dr,(Hu={},Hr(dr,function(e,t){ft.call(dr.prototype,t)||(Hu[t]=e)}),Hu),{chain:!1}),dr.VERSION="4.17.5",Zt(["bind","bindKey","curry","curryRight","partial","partialRight"],function(e){dr[e].placeholder=dr}),Zt(["drop","take"],function(e,t){_r.prototype[e]=function(n){n=n===r?1:Gn(Fs(n),0);var i=this.__filtered__&&!t?new _r(this):this.clone();return i.__filtered__?i.__takeCount__=Yn(n,i.__takeCount__):i.__views__.push({size:Yn(n,D),type:e+(i.__dir__<0?"Right":"")}),i},_r.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}}),Zt(["filter","map","takeWhile"],function(e,t){var n=t+1,r=n==R||3==n;_r.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:za(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}}),Zt(["head","last"],function(e,t){var n="take"+(t?"Right":"");_r.prototype[e]=function(){return this[n](1).value()[0]}}),Zt(["initial","tail"],function(e,t){var n="drop"+(t?"":"Right");_r.prototype[e]=function(){return this.__filtered__?new _r(this):this[n](1)}}),_r.prototype.compact=function(){return this.filter(Iu)},_r.prototype.find=function(e){return this.filter(e).head()},_r.prototype.findLast=function(e){return this.reverse().find(e)},_r.prototype.invokeMap=Ei(function(e,t){return"function"==typeof e?new _r(this):this.map(function(n){return ii(n,e,t)})}),_r.prototype.reject=function(e){return this.filter(us(za(e)))},_r.prototype.slice=function(e,t){e=Fs(e);var n=this;return n.__filtered__&&(e>0||t<0)?new _r(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=Fs(t))<0?n.dropRight(-t):n.take(t-e)),n)},_r.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},_r.prototype.toArray=function(){return this.take(D)},Hr(_r.prototype,function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),a=dr[i?"take"+("last"==t?"Right":""):t],o=i||/^find/.test(t);a&&(dr.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,u=t instanceof _r,l=s[0],f=u||ms(t),c=function(e){var t=a.apply(dr,Jt([e],s));return i&&h?t[0]:t};f&&n&&"function"==typeof l&&1!=l.length&&(u=f=!1);var h=this.__chain__,p=!!this.__actions__.length,d=o&&!h,g=u&&!p;if(!o&&f){t=g?t:new _r(this);var v=e.apply(t,s);return v.__actions__.push({func:Uo,args:[c],thisArg:r}),new mr(v,h)}return d&&g?e.apply(this,s):(v=this.thru(c),d?i?v.value()[0]:v.value():v)})}),Zt(["pop","push","shift","sort","splice","unshift"],function(e){var t=at[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);dr.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(ms(i)?i:[],e)}return this[n](function(n){return t.apply(ms(n)?n:[],e)})}}),Hr(_r.prototype,function(e,t){var n=dr[t];if(n){var r=n.name+"";(ar[r]||(ar[r]=[])).push({name:t,func:n})}}),ar[da(r,v).name]=[{name:"wrapper",func:r}],_r.prototype.clone=function(){var e=new _r(this.__wrapped__);return e.__actions__=ra(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=ra(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=ra(this.__views__),e},_r.prototype.reverse=function(){if(this.__filtered__){var e=new _r(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},_r.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=ms(e),r=t<0,i=n?e.length:0,a=function(e,t,n){for(var r=-1,i=n.length;++r=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},dr.prototype.plant=function(e){for(var t,n=this;n instanceof vr;){var i=co(n);i.__index__=0,i.__values__=r,t?a.__wrapped__=i:t=i;var a=i;n=n.__wrapped__}return a.__wrapped__=e,t},dr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof _r){var t=e;return this.__actions__.length&&(t=new _r(this)),(t=t.reverse()).__actions__.push({func:Uo,args:[To],thisArg:r}),new mr(t,this.__chain__)}return this.thru(To)},dr.prototype.toJSON=dr.prototype.valueOf=dr.prototype.value=function(){return qi(this.__wrapped__,this.__actions__)},dr.prototype.first=dr.prototype.head,cn&&(dr.prototype[cn]=function(){return this}),dr}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(jt._=Ln,define(function(){return Ln})):Lt?((Lt.exports=Ln)._=Ln,Ct._=Ln):jt._=Ln}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],58:[function(e,t,n){(function(n){e("path");var r=e("fs");function i(){this.types=Object.create(null),this.extensions=Object.create(null)}i.prototype.define=function(e){for(var t in e){for(var r=e[t],i=0;i=0;--s)if(h[s]=c,c*=l[s],p=Math.max(p,o.scratchMemory(l[s])),t.shape[s]!==n.shape[s])throw new Error("Shape mismatch, real and imaginary arrays must have same size");var d,g=4*c+p;d="array"===t.dtype||"float64"===t.dtype||"custom"===t.dtype?a.mallocDouble(g):a.mallocFloat(g);var v,m,_,w,b=i(d,l.slice(0),h,0),y=i(d,l.slice(0),h.slice(0),c),x=i(d,l.slice(0),h.slice(0),2*c),k=i(d,l.slice(0),h.slice(0),3*c),E=4*c;for(r.assign(b,t),r.assign(y,n),s=f-1;s>=0&&(o(e,c/l[s],l[s],d,b.offset,y.offset,E),0!==s);--s){for(m=1,_=x.stride,w=k.stride,u=s-1;u=0;--u)w[u]=_[u]=m,m*=l[u];r.assign(x,b),r.assign(k,y),v=b,b=x,x=v,v=y,y=k,k=v}r.assign(t,b),r.assign(n,y),a.free(d)}},{"./lib/fft-matrix.js":61,ndarray:66,"ndarray-ops":63,"typedarray-pool":125}],61:[function(e,t,n){var r=e("bit-twiddle");function i(e,t,n,i,a,o){var s,u,l,f,c,h,p,d,g,v,m,_,w,b,y,x,k,E,A,S,T,M,R,I;for(e|=0,t|=0,a|=0,o|=0,s=n|=0,u=r.log2(s),E=0;E>1,c=0,l=0;l>=1;c+=h}for(m=-1,_=0,v=1,d=0;d>",rrshift:">>>"};!function(){for(var e in s){var t=s[e];n[e]=o({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),n[e+"eq"]=o({args:["array","array"],body:{args:["a","b"],body:"a"+t+"=b"},rvalue:!0,funcName:e+"eq"}),n[e+"s"]=o({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),n[e+"seq"]=o({args:["array","scalar"],body:{args:["a","s"],body:"a"+t+"=s"},rvalue:!0,funcName:e+"seq"})}}();var u={not:"!",bnot:"~",neg:"-",recip:"1.0/"};!function(){for(var e in u){var t=u[e];n[e]=o({args:["array","array"],body:{args:["a","b"],body:"a="+t+"b"},funcName:e}),n[e+"eq"]=o({args:["array"],body:{args:["a"],body:"a="+t+"a"},rvalue:!0,count:2,funcName:e+"eq"})}}();var l={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};!function(){for(var e in l){var t=l[e];n[e]=o({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),n[e+"s"]=o({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),n[e+"eq"]=o({args:["array","array"],body:{args:["a","b"],body:"a=a"+t+"b"},rvalue:!0,count:2,funcName:e+"eq"}),n[e+"seq"]=o({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+t+"s"},rvalue:!0,count:2,funcName:e+"seq"})}}();var f=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];!function(){for(var e=0;ethis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"}),n.norm1=r({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"}),n.sup=r({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}}),n.inf=r({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}}),n.random=o({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"}),n.assign=o({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"}),n.assigns=o({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"}),n.equals=r({args:["array","array"],pre:i,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})},{"cwise-compiler":23}],64:[function(e,t,n){"use strict";var r=e("ndarray"),i=e("./doConvert.js");t.exports=function(e,t){for(var n=[],a=e,o=1;Array.isArray(a);)n.push(a.length),o*=a.length,a=a[0];return 0===n.length?r():(t||(t=r(new Float64Array(o),n)),i(t,e),t)}},{"./doConvert.js":65,ndarray:66}],65:[function(e,t,n){t.exports=e("cwise-compiler")({args:["array","scalar","index"],pre:{body:"{}",args:[],thisVars:[],localVars:[]},body:{body:"{\nvar _inline_1_v=_inline_1_arg1_,_inline_1_i\nfor(_inline_1_i=0;_inline_1_i<_inline_1_arg2_.length-1;++_inline_1_i) {\n_inline_1_v=_inline_1_v[_inline_1_arg2_[_inline_1_i]]\n}\n_inline_1_arg0_=_inline_1_v[_inline_1_arg2_[_inline_1_arg2_.length-1]]\n}",args:[{name:"_inline_1_arg0_",lvalue:!0,rvalue:!1,count:1},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:1},{name:"_inline_1_arg2_",lvalue:!1,rvalue:!0,count:4}],thisVars:[],localVars:["_inline_1_i","_inline_1_v"]},post:{body:"{}",args:[],thisVars:[],localVars:[]},funcName:"convert",blockSize:64})},{"cwise-compiler":23}],66:[function(e,t,n){var r=e("iota-array"),i=e("is-buffer"),a="undefined"!=typeof Float64Array;function o(e,t){return e[0]-t[0]}function s(){var e,t=this.stride,n=new Array(t.length);for(e=0;eMath.abs(this.stride[1]))?[1,0]:[0,1]}})"):3===t&&a.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")):a.push("ORDER})")),a.push("proto.set=function "+n+"_set("+u.join(",")+",v){"),i?a.push("return this.data.set("+f+",v)}"):a.push("return this.data["+f+"]=v}"),a.push("proto.get=function "+n+"_get("+u.join(",")+"){"),i?a.push("return this.data.get("+f+")}"):a.push("return this.data["+f+"]}"),a.push("proto.index=function "+n+"_index(",u.join(),"){return "+f+"}"),a.push("proto.hi=function "+n+"_hi("+u.join(",")+"){return new "+n+"(this.data,"+o.map(function(e){return["(typeof i",e,"!=='number'||i",e,"<0)?this.shape[",e,"]:i",e,"|0"].join("")}).join(",")+","+o.map(function(e){return"this.stride["+e+"]"}).join(",")+",this.offset)}");var p=o.map(function(e){return"a"+e+"=this.shape["+e+"]"}),d=o.map(function(e){return"c"+e+"=this.stride["+e+"]"});a.push("proto.lo=function "+n+"_lo("+u.join(",")+"){var b=this.offset,d=0,"+p.join(",")+","+d.join(","));for(var g=0;g=0){d=i"+g+"|0;b+=c"+g+"*d;a"+g+"-=d}");a.push("return new "+n+"(this.data,"+o.map(function(e){return"a"+e}).join(",")+","+o.map(function(e){return"c"+e}).join(",")+",b)}"),a.push("proto.step=function "+n+"_step("+u.join(",")+"){var "+o.map(function(e){return"a"+e+"=this.shape["+e+"]"}).join(",")+","+o.map(function(e){return"b"+e+"=this.stride["+e+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(g=0;g=0){c=(c+this.stride["+g+"]*i"+g+")|0}else{a.push(this.shape["+g+"]);b.push(this.stride["+g+"])}");return a.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),a.push("return function construct_"+n+"(data,shape,stride,offset){return new "+n+"(data,"+o.map(function(e){return"shape["+e+"]"}).join(",")+","+o.map(function(e){return"stride["+e+"]"}).join(",")+",offset)}"),new Function("CTOR_LIST","ORDER",a.join("\n"))(l[e],s)}var l={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],buffer:[],generic:[]};t.exports=function(e,t,n,r){if(void 0===e)return(0,l.array[0])([]);"number"==typeof e&&(e=[e]),void 0===t&&(t=[e.length]);var o=t.length;if(void 0===n){n=new Array(o);for(var s=o-1,f=1;s>=0;--s)n[s]=f,f*=t[s]}if(void 0===r)for(r=0,s=0;s>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)+1}},{}],68:[function(e,t,n){function r(e,t,n,r){for(var i=e[t++],a=1<>=u,f-=u,v!==a){if(v===o)break;for(var m=va;)w=d[w]>>8,++_;var b=w;if(h+_+(m!==v?1:0)>r)return void console.log("Warning, gif stream longer than expected.");n[h++]=b;var y=h+=_;for(m!==v&&(n[h++]=b),w=m;_--;)w=d[w],n[--y]=255&w,w>>=8;null!==g&&s<4096&&(d[s++]=g<<8|b,s>=l+1&&u<12&&(++u,l=l<<1|1)),g=v}else s=o+1,l=(1<<(u=i+1))-1,g=null}return h!==r&&console.log("Warning, gif stream shorter than expected."),n}try{n.GifWriter=function(e,t,n,r){var i=0,a=void 0===(r=void 0===r?{}:r).loop?null:r.loop,o=void 0===r.palette?null:r.palette;if(t<=0||n<=0||t>65535||n>65535)throw"Width/Height invalid.";function s(e){var t=e.length;if(t<2||t>256||t&t-1)throw"Invalid code/color length, must be power of 2 and 2 .. 256.";return t}e[i++]=71,e[i++]=73,e[i++]=70,e[i++]=56,e[i++]=57,e[i++]=97;var u=0,l=0;if(null!==o){for(var f=s(o);f>>=1;)++u;if(f=1<=f)throw"Background index out of range.";if(0===l)throw"Background index explicitly passed as 0."}}if(e[i++]=255&t,e[i++]=t>>8&255,e[i++]=255&n,e[i++]=n>>8&255,e[i++]=(null!==o?128:0)|u,e[i++]=l,e[i++]=0,null!==o)for(var c=0,h=o.length;c>16&255,e[i++]=p>>8&255,e[i++]=255&p}if(null!==a){if(a<0||a>65535)throw"Loop count invalid.";e[i++]=33,e[i++]=255,e[i++]=11,e[i++]=78,e[i++]=69,e[i++]=84,e[i++]=83,e[i++]=67,e[i++]=65,e[i++]=80,e[i++]=69,e[i++]=50,e[i++]=46,e[i++]=48,e[i++]=3,e[i++]=1,e[i++]=255&a,e[i++]=a>>8&255,e[i++]=0}var d=!1;this.addFrame=function(t,n,r,a,u,l){if(!0===d&&(--i,d=!1),l=void 0===l?{}:l,t<0||n<0||t>65535||n>65535)throw"x/y invalid.";if(r<=0||a<=0||r>65535||a>65535)throw"Width/Height invalid.";if(u.length>=1;)++p;h=1<3)throw"Disposal out of range.";var m=!1,_=0;if(void 0!==l.transparent&&null!==l.transparent&&(m=!0,(_=l.transparent)<0||_>=h))throw"Transparent color index.";if((0!==v||m||0!==g)&&(e[i++]=33,e[i++]=249,e[i++]=4,e[i++]=v<<2|(!0===m?1:0),e[i++]=255&g,e[i++]=g>>8&255,e[i++]=_,e[i++]=0),e[i++]=44,e[i++]=255&t,e[i++]=t>>8&255,e[i++]=255&n,e[i++]=n>>8&255,e[i++]=255&r,e[i++]=r>>8&255,e[i++]=255&a,e[i++]=a>>8&255,e[i++]=!0===f?128|p-1:0,!0===f)for(var w=0,b=c.length;w>16&255,e[i++]=y>>8&255,e[i++]=255&y}i=function(e,t,n,r){e[t++]=n;var i=t++,a=1<=n;)e[t++]=255&c,c>>=8,f-=8,t===i+256&&(e[i]=255,i=t++)}function p(e){c|=e<=8;)e[t++]=255&c,c>>=8,f-=8,t===i+256&&(e[i]=255,i=t++);4096===u?(p(a),u=s+1,l=n+1,g={}):(u>=1<>7,s=1<<1+(7&a);e[t++],e[t++];var u=null;o&&(u=t,t+=3*s);var l=!0,f=[],c=0,h=null,p=0,d=null;for(this.width=n,this.height=i;l&&t>2&7,t++;break;case 254:for(;0!==(A=e[t++]);)t+=A;break;default:throw"Unknown graphic control label: 0x"+e[t-1].toString(16)}break;case 44:var v=e[t++]|e[t++]<<8,m=e[t++]|e[t++]<<8,_=e[t++]|e[t++]<<8,w=e[t++]|e[t++]<<8,b=e[t++],y=b>>6&1,x=u,k=!1;b>>7&&(k=!0,x=t,t+=3*(1<<1+(7&b)));var E=t;for(t++;;){var A;if(0===(A=e[t++]))break;t+=A}f.push({x:v,y:m,width:_,height:w,has_local_palette:k,palette_offset:x,data_offset:E,data_length:t-E,transparent_index:h,interlaced:!!y,delay:c,disposal:p});break;case 59:l=!1;break;default:throw"Unknown gif block: 0x"+e[t-1].toString(16)}this.numFrames=function(){return f.length},this.loopCount=function(){return d},this.frameInfo=function(e){if(e<0||e>=f.length)throw"Frame index out of range.";return f[e]},this.decodeAndBlitFrameBGRA=function(t,i){var a=this.frameInfo(t),o=a.width*a.height,s=new Uint8Array(o);r(e,a.data_offset,s,o);var u=a.palette_offset,l=a.transparent_index;null===l&&(l=256);var f=a.width,c=n-f,h=f,p=4*(a.y*n+a.x),d=4*((a.y+a.height)*n+a.x),g=p,v=4*c;!0===a.interlaced&&(v+=4*n*7);for(var m=8,_=0,w=s.length;_=d&&(v=4*c+4*n*(m-1),g=p+(f+c)*(m<<1),m>>=1)),b===l)g+=4;else{var y=e[u+3*b],x=e[u+3*b+1],k=e[u+3*b+2];i[g++]=k,i[g++]=x,i[g++]=y,i[g++]=255}--h}},this.decodeAndBlitFrameRGBA=function(t,i){var a=this.frameInfo(t),o=a.width*a.height,s=new Uint8Array(o);r(e,a.data_offset,s,o);var u=a.palette_offset,l=a.transparent_index;null===l&&(l=256);var f=a.width,c=n-f,h=f,p=4*(a.y*n+a.x),d=4*((a.y+a.height)*n+a.x),g=p,v=4*c;!0===a.interlaced&&(v+=4*n*7);for(var m=8,_=0,w=s.length;_=d&&(v=4*c+4*n*(m-1),g=p+(f+c)*(m<<1),m>>=1)),b===l)g+=4;else{var y=e[u+3*b],x=e[u+3*b+1],k=e[u+3*b+2];i[g++]=y,i[g++]=x,i[g++]=k,i[g++]=255}--h}}}}catch(e){}},{}],69:[function(e,t,n){(function(n){var r=e("charm");function i(e){if(!(e=e||{}).total)throw new Error("You MUST specify the total number of operations that will be processed.");this.total=e.total,this.current=0,this.max_burden=e.maxBurden||.5,this.show_burden=e.showBurden||!1,this.started=!1,this.size=50,this.inner_time=0,this.outer_time=0,this.elapsed=0,this.time_start=0,this.time_end=0,this.time_left=0,this.time_burden=0,this.skip_steps=0,this.skipped=0,this.aborted=!1,this.charm=r(),this.charm.pipe(n.stdout),this.charm.write("\n\n\n")}function a(e,t,n){for(n=n||" ";e.length3&&(u[0]=u[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,o)),(u[1]||"").length=this.total&&this.finished(),this.time_end=(new Date).getTime(),this.inner_time=this.time_end-this.time_start)},i.prototype.updateTimes=function(){this.elapsed=this.time_start-this.started,this.time_end>0&&(this.outer_time=this.time_start-this.time_end),this.inner_time>0&&this.outer_time>0&&(this.time_burden=this.inner_time/(this.inner_time+this.outer_time)*100,this.time_left=this.elapsed/this.current*(this.total-this.current),this.time_left<0&&(this.time_left=0)),this.time_burden>this.max_burden&&this.skip_steps0&&this.current>>16&65535|0,o=0;0!==n;){n-=o=n>2e3?2e3:n;do{a=a+(i=i+t[r++]|0)|0}while(--o);i%=65521,a%=65521}return i|a<<16|0}},{}],72:[function(e,t,n){"use strict";t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],73:[function(e,t,n){"use strict";var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t,n,i){var a=r,o=i+n;e^=-1;for(var s=i;s>>8^a[255&(e^t[s])];return-1^e}},{}],74:[function(e,t,n){"use strict";var r,i=e("../utils/common"),a=e("./trees"),o=e("./adler32"),s=e("./crc32"),u=e("./messages"),l=0,f=1,c=3,h=4,p=5,d=0,g=1,v=-2,m=-3,_=-5,w=-1,b=1,y=2,x=3,k=4,E=0,A=2,S=8,T=9,M=15,R=8,I=286,j=30,C=19,L=2*I+1,B=15,D=3,z=258,P=z+D+1,O=32,N=42,U=69,F=73,q=91,V=103,W=113,Z=666,G=1,Y=2,H=3,X=4,$=3;function K(e,t){return e.msg=u[t],t}function J(e){return(e<<1)-(e>4?9:0)}function Q(e){for(var t=e.length;--t>=0;)e[t]=0}function ee(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function te(e,t){a._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ee(e.strm)}function ne(e,t){e.pending_buf[e.pending++]=t}function re(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function ie(e,t){var n,r,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,u=e.strstart>e.w_size-P?e.strstart-(e.w_size-P):0,l=e.window,f=e.w_mask,c=e.prev,h=e.strstart+z,p=l[a+o-1],d=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(n=t)+o]===d&&l[n+o-1]===p&&l[n]===l[a]&&l[++n]===l[a+1]){a+=2,n++;do{}while(l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&ao){if(e.match_start=t,o=r,r>=s)break;p=l[a+o-1],d=l[a+o]}}}while((t=c[t&f])>u&&0!=--i);return o<=e.lookahead?o:e.lookahead}function ae(e){var t,n,r,a,u,l,f,c,h,p,d=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=d+(d-P)){i.arraySet(e.window,e.window,d,d,0),e.match_start-=d,e.strstart-=d,e.block_start-=d,t=n=e.hash_size;do{r=e.head[--t],e.head[t]=r>=d?r-d:0}while(--n);t=n=d;do{r=e.prev[--t],e.prev[t]=r>=d?r-d:0}while(--n);a+=d}if(0===e.strm.avail_in)break;if(l=e.strm,f=e.window,c=e.strstart+e.lookahead,h=a,p=void 0,(p=l.avail_in)>h&&(p=h),n=0===p?0:(l.avail_in-=p,i.arraySet(f,l.input,l.next_in,p,c),1===l.state.wrap?l.adler=o(l.adler,f,p,c):2===l.state.wrap&&(l.adler=s(l.adler,f,p,c)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=n,e.lookahead+e.insert>=D)for(u=e.strstart-e.insert,e.ins_h=e.window[u],e.ins_h=(e.ins_h<=D&&(e.ins_h=(e.ins_h<=D)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-D),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=D){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<=D&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=D-1)),e.prev_length>=D&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-D,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-D),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<15&&(s=2,r-=16),a<1||a>T||n!==S||r<8||r>15||t<0||t>9||o<0||o>k)return K(e,v);8===r&&(r=9);var u=new function(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=S,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*L),this.dyn_dtree=new i.Buf16(2*(2*j+1)),this.bl_tree=new i.Buf16(2*(2*C+1)),Q(this.dyn_ltree),Q(this.dyn_dtree),Q(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(B+1),this.heap=new i.Buf16(2*I+1),Q(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*I+1),Q(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0};return e.state=u,u.strm=e,u.wrap=s,u.gzhead=null,u.w_bits=r,u.w_size=1<e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(ae(e),0===e.lookahead&&t===l)return G;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,te(e,!1),0===e.strm.avail_out))return G;if(e.strstart-e.block_start>=e.w_size-P&&(te(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(te(e,!0),0===e.strm.avail_out?H:X):(e.strstart>e.block_start&&(te(e,!1),e.strm.avail_out),G)}),new ue(4,4,8,4,oe),new ue(4,5,16,8,oe),new ue(4,6,32,32,oe),new ue(4,4,16,16,se),new ue(8,16,32,32,se),new ue(8,16,128,128,se),new ue(8,32,128,256,se),new ue(32,128,258,1024,se),new ue(32,258,258,4096,se)],n.deflateInit=function(e,t){return ce(e,t,S,M,R,E)},n.deflateInit2=ce,n.deflateReset=fe,n.deflateResetKeep=le,n.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?v:(e.state.gzhead=t,d):v},n.deflate=function(e,t){var n,i,o,u;if(!e||!e.state||t>p||t<0)return e?K(e,v):v;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===Z&&t!==h)return K(e,0===e.avail_out?_:v);if(i.strm=e,n=i.last_flush,i.last_flush=t,i.status===N)if(2===i.wrap)e.adler=0,ne(i,31),ne(i,139),ne(i,8),i.gzhead?(ne(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),ne(i,255&i.gzhead.time),ne(i,i.gzhead.time>>8&255),ne(i,i.gzhead.time>>16&255),ne(i,i.gzhead.time>>24&255),ne(i,9===i.level?2:i.strategy>=y||i.level<2?4:0),ne(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(ne(i,255&i.gzhead.extra.length),ne(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=U):(ne(i,0),ne(i,0),ne(i,0),ne(i,0),ne(i,0),ne(i,9===i.level?2:i.strategy>=y||i.level<2?4:0),ne(i,$),i.status=W);else{var m=S+(i.w_bits-8<<4)<<8;m|=(i.strategy>=y||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(m|=O),m+=31-m%31,i.status=W,re(i,m),0!==i.strstart&&(re(i,e.adler>>>16),re(i,65535&e.adler)),e.adler=1}if(i.status===U)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending!==i.pending_buf_size));)ne(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=F)}else i.status=F;if(i.status===F)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.gzindex=0,i.status=q)}else i.status=q;if(i.status===q)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.status=V)}else i.status=V;if(i.status===V&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&ee(e),i.pending+2<=i.pending_buf_size&&(ne(i,255&e.adler),ne(i,e.adler>>8&255),e.adler=0,i.status=W)):i.status=W),0!==i.pending){if(ee(e),0===e.avail_out)return i.last_flush=-1,d}else if(0===e.avail_in&&J(t)<=J(n)&&t!==h)return K(e,_);if(i.status===Z&&0!==e.avail_in)return K(e,_);if(0!==e.avail_in||0!==i.lookahead||t!==l&&i.status!==Z){var w=i.strategy===y?function(e,t){for(var n;;){if(0===e.lookahead&&(ae(e),0===e.lookahead)){if(t===l)return G;break}if(e.match_length=0,n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(te(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(te(e,!0),0===e.strm.avail_out?H:X):e.last_lit&&(te(e,!1),0===e.strm.avail_out)?G:Y}(i,t):i.strategy===x?function(e,t){for(var n,r,i,o,s=e.window;;){if(e.lookahead<=z){if(ae(e),e.lookahead<=z&&t===l)return G;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=D&&e.strstart>0&&(r=s[i=e.strstart-1])===s[++i]&&r===s[++i]&&r===s[++i]){o=e.strstart+z;do{}while(r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=D?(n=a._tr_tally(e,1,e.match_length-D),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(te(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(te(e,!0),0===e.strm.avail_out?H:X):e.last_lit&&(te(e,!1),0===e.strm.avail_out)?G:Y}(i,t):r[i.level].func(i,t);if(w!==H&&w!==X||(i.status=Z),w===G||w===H)return 0===e.avail_out&&(i.last_flush=-1),d;if(w===Y&&(t===f?a._tr_align(i):t!==p&&(a._tr_stored_block(i,0,0,!1),t===c&&(Q(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),ee(e),0===e.avail_out))return i.last_flush=-1,d}return t!==h?d:i.wrap<=0?g:(2===i.wrap?(ne(i,255&e.adler),ne(i,e.adler>>8&255),ne(i,e.adler>>16&255),ne(i,e.adler>>24&255),ne(i,255&e.total_in),ne(i,e.total_in>>8&255),ne(i,e.total_in>>16&255),ne(i,e.total_in>>24&255)):(re(i,e.adler>>>16),re(i,65535&e.adler)),ee(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?d:g)},n.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==N&&t!==U&&t!==F&&t!==q&&t!==V&&t!==W&&t!==Z?K(e,v):(e.state=null,t===W?K(e,m):d):v},n.deflateSetDictionary=function(e,t){var n,r,a,s,u,l,f,c,h=t.length;if(!e||!e.state)return v;if(2===(s=(n=e.state).wrap)||1===s&&n.status!==N||n.lookahead)return v;for(1===s&&(e.adler=o(e.adler,t,h,0)),n.wrap=0,h>=n.w_size&&(0===s&&(Q(n.head),n.strstart=0,n.block_start=0,n.insert=0),c=new i.Buf8(n.w_size),i.arraySet(c,t,h-n.w_size,n.w_size,0),t=c,h=n.w_size),u=e.avail_in,l=e.next_in,f=e.input,e.avail_in=h,e.next_in=0,e.input=t,ae(n);n.lookahead>=D;){r=n.strstart,a=n.lookahead-(D-1);do{n.ins_h=(n.ins_h<>>=b=w>>>24,d-=b,0===(b=w>>>16&255))S[a++]=65535&w;else{if(!(16&b)){if(0==(64&b)){w=g[(65535&w)+(p&(1<>>=b,d-=b),d<15&&(p+=A[r++]<>>=b=w>>>24,d-=b,!(16&(b=w>>>16&255))){if(0==(64&b)){w=v[(65535&w)+(p&(1<u){e.msg="invalid distance too far back",n.mode=30;break e}if(p>>>=b,d-=b,x>(b=a-o)){if((b=x-b)>f&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(k=0,E=h,0===c){if(k+=l-b,b2;)S[a++]=E[k++],S[a++]=E[k++],S[a++]=E[k++],y-=3;y&&(S[a++]=E[k++],y>1&&(S[a++]=E[k++]))}else{k=a-x;do{S[a++]=S[k++],S[a++]=S[k++],S[a++]=S[k++],y-=3}while(y>2);y&&(S[a++]=S[k++],y>1&&(S[a++]=S[k++]))}break}}break}}while(r>3,p&=(1<<(d-=y<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function ie(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=x,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(ee),t.distcode=t.distdyn=new r.Buf32(te),t.sane=1,t.back=-1,d):m}function ae(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,ie(e)):m}function oe(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?m:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,ae(e))):m}function se(e,t){var n,i;return e?(i=new function(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0},e.state=i,i.window=null,(n=oe(e,t))!==d&&(e.state=null),n):m}var ue,le,fe=!0;function ce(e){if(fe){var t;for(ue=new r.Buf32(512),le=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(l,e.lens,0,288,ue,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(f,e.lens,0,32,le,0,e.work,{bits:5}),fe=!1}e.lencode=ue,e.lenbits=9,e.distcode=le,e.distbits=5}function he(e,t,n,i){var a,o=e.state;return null===o.window&&(o.wsize=1<=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((a=o.wsize-o.wnext)>i&&(a=i),r.arraySet(o.window,t,n-i,a,o.wnext),(i-=a)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,n.check=a(n.check,Te,2,0),se=0,ue=0,n.mode=k;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&se)<<8)+(se>>8))%31){e.msg="incorrect header check",n.mode=K;break}if((15&se)!==y){e.msg="unknown compression method",n.mode=K;break}if(ue-=4,xe=8+(15&(se>>>=4)),0===n.wbits)n.wbits=xe;else if(xe>n.wbits){e.msg="invalid window size",n.mode=K;break}n.dmax=1<>8&1),512&n.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,n.check=a(n.check,Te,2,0)),se=0,ue=0,n.mode=E;case E:for(;ue<32;){if(0===ae)break e;ae--,se+=ee[ne++]<>>8&255,Te[2]=se>>>16&255,Te[3]=se>>>24&255,n.check=a(n.check,Te,4,0)),se=0,ue=0,n.mode=A;case A:for(;ue<16;){if(0===ae)break e;ae--,se+=ee[ne++]<>8),512&n.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,n.check=a(n.check,Te,2,0)),se=0,ue=0,n.mode=S;case S:if(1024&n.flags){for(;ue<16;){if(0===ae)break e;ae--,se+=ee[ne++]<>>8&255,n.check=a(n.check,Te,2,0)),se=0,ue=0}else n.head&&(n.head.extra=null);n.mode=T;case T:if(1024&n.flags&&((pe=n.length)>ae&&(pe=ae),pe&&(n.head&&(xe=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,ee,ne,pe,xe)),512&n.flags&&(n.check=a(n.check,ee,pe,ne)),ae-=pe,ne+=pe,n.length-=pe),n.length))break e;n.length=0,n.mode=M;case M:if(2048&n.flags){if(0===ae)break e;pe=0;do{xe=ee[ne+pe++],n.head&&xe&&n.length<65536&&(n.head.name+=String.fromCharCode(xe))}while(xe&&pe>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=L;break;case j:for(;ue<32;){if(0===ae)break e;ae--,se+=ee[ne++]<>>=7&ue,ue-=7&ue,n.mode=H;break}for(;ue<3;){if(0===ae)break e;ae--,se+=ee[ne++]<>>=1)){case 0:n.mode=D;break;case 1:if(ce(n),n.mode=F,t===p){se>>>=2,ue-=2;break e}break;case 2:n.mode=O;break;case 3:e.msg="invalid block type",n.mode=K}se>>>=2,ue-=2;break;case D:for(se>>>=7&ue,ue-=7&ue;ue<32;){if(0===ae)break e;ae--,se+=ee[ne++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=K;break}if(n.length=65535&se,se=0,ue=0,n.mode=z,t===p)break e;case z:n.mode=P;case P:if(pe=n.length){if(pe>ae&&(pe=ae),pe>oe&&(pe=oe),0===pe)break e;r.arraySet(te,ee,ne,pe,ie),ae-=pe,ne+=pe,oe-=pe,ie+=pe,n.length-=pe;break}n.mode=L;break;case O:for(;ue<14;){if(0===ae)break e;ae--,se+=ee[ne++]<>>=5,ue-=5,n.ndist=1+(31&se),se>>>=5,ue-=5,n.ncode=4+(15&se),se>>>=4,ue-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=K;break}n.have=0,n.mode=N;case N:for(;n.have>>=3,ue-=3}for(;n.have<19;)n.lens[Me[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,Ee={bits:n.lenbits},ke=s(u,n.lens,0,19,n.lencode,0,n.work,Ee),n.lenbits=Ee.bits,ke){e.msg="invalid code lengths set",n.mode=K;break}n.have=0,n.mode=U;case U:for(;n.have>>16&255,_e=65535&Se,!((ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>>=ve,ue-=ve,n.lens[n.have++]=_e;else{if(16===_e){for(Ae=ve+2;ue>>=ve,ue-=ve,0===n.have){e.msg="invalid bit length repeat",n.mode=K;break}xe=n.lens[n.have-1],pe=3+(3&se),se>>>=2,ue-=2}else if(17===_e){for(Ae=ve+3;ue>>=ve)),se>>>=3,ue-=3}else{for(Ae=ve+7;ue>>=ve)),se>>>=7,ue-=7}if(n.have+pe>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=K;break}for(;pe--;)n.lens[n.have++]=xe}}if(n.mode===K)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=K;break}if(n.lenbits=9,Ee={bits:n.lenbits},ke=s(l,n.lens,0,n.nlen,n.lencode,0,n.work,Ee),n.lenbits=Ee.bits,ke){e.msg="invalid literal/lengths set",n.mode=K;break}if(n.distbits=6,n.distcode=n.distdyn,Ee={bits:n.distbits},ke=s(f,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,Ee),n.distbits=Ee.bits,ke){e.msg="invalid distances set",n.mode=K;break}if(n.mode=F,t===p)break e;case F:n.mode=q;case q:if(ae>=6&&oe>=258){e.next_out=ie,e.avail_out=oe,e.next_in=ne,e.avail_in=ae,n.hold=se,n.bits=ue,o(e,fe),ie=e.next_out,te=e.output,oe=e.avail_out,ne=e.next_in,ee=e.input,ae=e.avail_in,se=n.hold,ue=n.bits,n.mode===L&&(n.back=-1);break}for(n.back=0;me=(Se=n.lencode[se&(1<>>16&255,_e=65535&Se,!((ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>we)])>>>16&255,_e=65535&Se,!(we+(ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>>=we,ue-=we,n.back+=we}if(se>>>=ve,ue-=ve,n.back+=ve,n.length=_e,0===me){n.mode=Y;break}if(32&me){n.back=-1,n.mode=L;break}if(64&me){e.msg="invalid literal/length code",n.mode=K;break}n.extra=15&me,n.mode=V;case V:if(n.extra){for(Ae=n.extra;ue>>=n.extra,ue-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=W;case W:for(;me=(Se=n.distcode[se&(1<>>16&255,_e=65535&Se,!((ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>we)])>>>16&255,_e=65535&Se,!(we+(ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>>=we,ue-=we,n.back+=we}if(se>>>=ve,ue-=ve,n.back+=ve,64&me){e.msg="invalid distance code",n.mode=K;break}n.offset=_e,n.extra=15&me,n.mode=Z;case Z:if(n.extra){for(Ae=n.extra;ue>>=n.extra,ue-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=K;break}n.mode=G;case G:if(0===oe)break e;if(pe=fe-oe,n.offset>pe){if((pe=n.offset-pe)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=K;break}pe>n.wnext?(pe-=n.wnext,de=n.wsize-pe):de=n.wnext-pe,pe>n.length&&(pe=n.length),ge=n.window}else ge=te,de=ie-n.offset,pe=n.length;pe>oe&&(pe=oe),oe-=pe,n.length-=pe;do{te[ie++]=ge[de++]}while(--pe);0===n.length&&(n.mode=q);break;case Y:if(0===oe)break e;te[ie++]=n.length,oe--,n.mode=q;break;case H:if(n.wrap){for(;ue<32;){if(0===ae)break e;ae--,se|=ee[ne++]<=1&&0===D[S];S--);if(T>S&&(T=S),0===S)return l[f++]=20971520,l[f++]=20971520,h.bits=1,0;for(A=1;A0&&(0===e||1!==S))return-1;for(z[1]=0,k=1;k<15;k++)z[k+1]=z[k]+D[k];for(E=0;E852||2===e&&j>592)return 1;for(;;){0,w=k-R,c[E]<_?(b=0,y=c[E]):c[E]>_?(b=P[O+c[E]],y=L[B+c[E]]):(b=96,y=0),p=1<>R)+(d-=p)]=w<<24|b<<16|y|0}while(0!==d);for(p=1<>=1;if(0!==p?(C&=p-1,C+=p):C=0,E++,0==--D[k]){if(k===S)break;k=t[n+c[E]]}if(k>T&&(C&v)!==g){for(0===R&&(R=T),m+=A,I=1<<(M=k-R);M+R852||2===e&&j>592)return 1;l[g=C&v]=T<<24|M<<16|m-f|0}}return 0!==C&&(l[m+C]=k-R<<24|64<<16|0),h.bits=T,0}},{"../utils/common":70}],78:[function(e,t,n){"use strict";t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],79:[function(e,t,n){"use strict";var r=e("../utils/common"),i=4,a=0,o=1,s=2;function u(e){for(var t=e.length;--t>=0;)e[t]=0}var l=0,f=1,c=2,h=29,p=256,d=p+1+h,g=30,v=19,m=2*d+1,_=15,w=16,b=7,y=256,x=16,k=17,E=18,A=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],S=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],T=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],M=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],R=new Array(2*(d+2));u(R);var I=new Array(2*g);u(I);var j=new Array(512);u(j);var C=new Array(256);u(C);var L=new Array(h);u(L);var B,D,z,P=new Array(g);function O(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function N(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function U(e){return e<256?j[e]:j[256+(e>>>7)]}function F(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function q(e,t,n){e.bi_valid>w-n?(e.bi_buf|=t<>w-e.bi_valid,e.bi_valid+=n-w):(e.bi_buf|=t<>>=1,n<<=1}while(--t>0);return n>>>1}function Z(e,t,n){var r,i,a=new Array(_+1),o=0;for(r=1;r<=_;r++)a[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=W(a[s]++,s))}}function G(e){var t;for(t=0;t8?F(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function H(e,t,n,r){var i=2*t,a=2*n;return e[i]>1;n>=1;n--)X(e,a,n);i=u;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],X(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,a[2*i]=a[2*n]+a[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,a[2*n+1]=a[2*r+1]=i,e.heap[1]=i++,X(e,a,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,a,o,s,u=t.dyn_tree,l=t.max_code,f=t.stat_desc.static_tree,c=t.stat_desc.has_stree,h=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,d=t.stat_desc.max_length,g=0;for(a=0;a<=_;a++)e.bl_count[a]=0;for(u[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;nd&&(a=d,g++),u[2*r+1]=a,r>l||(e.bl_count[a]++,o=0,r>=p&&(o=h[r-p]),s=u[2*r],e.opt_len+=s*(a+o),c&&(e.static_len+=s*(f[2*r+1]+o)));if(0!==g){do{for(a=d-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[d]--,g-=2}while(g>0);for(a=d;0!==a;a--)for(r=e.bl_count[a];0!==r;)(i=e.heap[--n])>l||(u[2*i+1]!==a&&(e.opt_len+=(a-u[2*i+1])*u[2*i],u[2*i+1]=a),r--)}}(e,t),Z(a,l,e.bl_count)}function J(e,t,n){var r,i,a=-1,o=t[1],s=0,u=7,l=4;for(0===o&&(u=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=o,o=t[2*(r+1)+1],++s>=7;r0?(e.strm.data_type===s&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return a;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return o;for(t=32;t=3&&0===e.bl_tree[2*M[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),u=e.opt_len+3+7>>>3,(l=e.static_len+3+7>>>3)<=u&&(u=l)):u=l=n+5,n+4<=u&&-1!==t?te(e,t,n,r):e.strategy===i||l===u?(q(e,(f<<1)+(r?1:0),3),$(e,R,I)):(q(e,(c<<1)+(r?1:0),3),function(e,t,n,r){var i;for(q(e,t-257,5),q(e,n-1,5),q(e,r-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(C[n]+p+1)]++,e.dyn_dtree[2*U(t)]++),e.last_lit===e.lit_bufsize-1},n._tr_align=function(e){q(e,f<<1,3),V(e,y,R),function(e){16===e.bi_valid?(F(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":70}],80:[function(e,t,n){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],81:[function(e,t,n){(function(e){function t(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}var r=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,i=function(e){return r.exec(e).slice(1)};function a(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!r;i--){var o=i>=0?arguments[i]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(n=o+"/"+n,r="/"===o.charAt(0))}return n=t(a(n.split("/"),function(e){return!!e}),!r).join("/"),(r?"/":"")+n||"."},n.normalize=function(e){var r=n.isAbsolute(e),i="/"===o(e,-1);return(e=t(a(e.split("/"),function(e){return!!e}),!r).join("/"))||r||(e="."),e&&i&&(e+="/"),(r?"/":"")+e},n.isAbsolute=function(e){return"/"===e.charAt(0)},n.join=function(){var e=Array.prototype.slice.call(arguments,0);return n.normalize(a(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},n.relative=function(e,t){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=n.resolve(e).substr(1),t=n.resolve(t).substr(1);for(var i=r(e.split("/")),a=r(t.split("/")),o=Math.min(i.length,a.length),s=o,u=0;u>4,n.push(c,f);break;case 2:u=3&h,l=h>>2&3,f=h>>4&3,c=h>>6&3,n.push(c,f,l,u);break;case 1:i=1&h,a=h>>1&1,o=h>>2&1,s=h>>3&1,u=h>>4&1,l=h>>5&1,f=h>>6&1,c=h>>7&1,n.push(c,f,l,u,s,o,a,i)}}return{get:function(e){for(;n.length0&&(this._paused=!1,this.emit("drain"))}.bind(this))},o.prototype.write=function(e,t){return this.writable?(n=r.isBuffer(e)?e:new r(e,t||this._encoding),this._buffers.push(n),this._buffered+=n.length,this._process(),this._reads&&0===this._reads.length&&(this._paused=!0),this.writable&&!this._paused):(this.emit("error",new Error("Stream not writable")),!1);var n},o.prototype.end=function(e,t){e&&this.write(e,t),this.writable=!1,this._buffers&&(0===this._buffers.length?this._end():(this._buffers.push(null),this._process()))},o.prototype.destroySoon=o.prototype.end,o.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("There are some read requests waitng on finished stream")),this.destroy()},o.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},o.prototype._processReadAllowingLess=function(e){this._reads.shift();var t=this._buffers[0];t.length>e.length?(this._buffered-=e.length,this._buffers[0]=t.slice(e.length),e.func.call(this,t.slice(0,e.length))):(this._buffered-=t.length,this._buffers.shift(),e.func.call(this,t))},o.prototype._processRead=function(e){this._reads.shift();for(var t=0,n=0,i=new r(e.length);t0&&this._buffers.splice(0,n),this._buffered-=e.length,e.func.call(this,i)},o.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){var e=this._reads[0];if(e.allowLess)this._processReadAllowingLess(e);else{if(!(this._buffered>=e.length))break;this._processRead(e)}}this._buffers&&this._buffers.length>0&&null===this._buffers[0]&&this._end()}catch(e){this.emit("error",e)}}}).call(this,e("_process"),e("buffer").Buffer)},{_process:104,buffer:8,stream:121,util:131}],85:[function(e,t,n){"use strict";t.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}},{}],86:[function(e,t,n){"use strict";var r=[];!function(){for(var e=0;e<256;e++){for(var t=e,n=0;n<8;n++)1&t?t=3988292384^t>>>1:t>>>=1;r[e]=t}}();var i=t.exports=function(){this._crc=-1};i.prototype.write=function(e){for(var t=0;t>>8;return!0},i.prototype.crc32=function(){return-1^this._crc},i.crc32=function(e){for(var t=-1,n=0;n>>8;return-1^t}},{}],87:[function(e,t,n){(function(n){"use strict";var r=e("./paeth-predictor");var i={0:function(e,t,n,r,i){e.copy(r,i,t,t+n)},1:function(e,t,n,r,i,a){for(var o=0;o=a?e[t+o-a]:0,u=e[t+o]-s;r[i+o]=u}},2:function(e,t,n,r,i){for(var a=0;a0?e[t+a-n]:0,s=e[t+a]-o;r[i+a]=s}},3:function(e,t,n,r,i,a){for(var o=0;o=a?e[t+o-a]:0,u=t>0?e[t+o-n]:0,l=e[t+o]-(s+u>>1);r[i+o]=l}},4:function(e,t,n,i,a,o){for(var s=0;s=o?e[t+s-o]:0,l=t>0?e[t+s-n]:0,f=t>0&&s>=o?e[t+s-(n+o)]:0,c=e[t+s]-r(u,l,f);i[a+s]=c}}},a={0:function(e,t,n){for(var r=0,i=t+n,a=t;a=r?e[t+a-r]:0,s=e[t+a]-o;i+=Math.abs(s)}return i},2:function(e,t,n){for(var r=0,i=t+n,a=t;a0?e[a-n]:0,s=e[a]-o;r+=Math.abs(s)}return r},3:function(e,t,n,r){for(var i=0,a=0;a=r?e[t+a-r]:0,s=t>0?e[t+a-n]:0,u=e[t+a]-(o+s>>1);i+=Math.abs(u)}return i},4:function(e,t,n,i){for(var a=0,o=0;o=i?e[t+o-i]:0,u=t>0?e[t+o-n]:0,l=t>0&&o>=i?e[t+o-(n+i)]:0,f=e[t+o]-r(s,u,l);a+=Math.abs(f)}return a}};t.exports=function(e,t,r,o,s){var u;if("filterType"in o&&-1!==o.filterType){if("number"!=typeof o.filterType)throw new Error("unrecognised filter types");u=[o.filterType]}else u=[0,1,2,3,4];for(var l=t*s,f=0,c=0,h=new n((l+1)*r),p=u[0],d=0;d1)for(var g=1/0,v=0;vi?t[a-r]:0;t[a]=o+s}},o.prototype._unFilterType2=function(e,t,n){for(var r=this._lastLine,i=0;ii?t[o-r]:0,f=Math.floor((l+u)/2);t[o]=s+f}},o.prototype._unFilterType4=function(e,t,n){for(var r=this._xComparison,a=r-1,o=this._lastLine,s=0;sa?t[s-r]:0,c=s>a&&o?o[s-r]:0,h=i(f,l,c);t[s]=u+h}},o.prototype._reverseFilterLine=function(e){var t,r=e[0],i=this._images[this._imageIndex],a=i.byteWidth;if(0===r)t=e.slice(1,a+1);else switch(t=new n(a),r){case 1:this._unFilterType1(e,t,a);break;case 2:this._unFilterType2(e,t,a);break;case 3:this._unFilterType3(e,t,a);break;case 4:this._unFilterType4(e,t,a);break;default:throw new Error("Unrecognised filter type - "+r)}this.write(t),i.lineIndex++,i.lineIndex>=i.height?(this._lastLine=null,this._imageIndex++,i=this._images[this._imageIndex]):this._lastLine=t,i?this.read(i.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}}).call(this,e("buffer").Buffer)},{"./interlace":92,"./paeth-predictor":96,buffer:8}],91:[function(e,t,n){(function(e){"use strict";t.exports=function(t,n){var r=n.depth,i=n.width,a=n.height,o=n.colorType,s=n.transColor,u=n.palette,l=t;return 3===o?function(e,t,n,r,i){for(var a=0,o=0;o0&&c>0&&n.push({width:f,height:c,index:u})}return n},n.getInterlaceIterator=function(e){return function(t,n,i){var a=t%r[i].x.length,o=(t-a)/r[i].x.length*8+r[i].x[a],s=n%r[i].y.length;return 4*o+((n-s)/r[i].y.length*8+r[i].y[s])*e*4}}},{}],93:[function(e,t,n){(function(n){"use strict";var r=e("util"),i=e("stream"),a=e("./constants"),o=e("./packer"),s=t.exports=function(e){i.call(this);var t=e||{};this._packer=new o(t),this._deflate=this._packer.createDeflate(),this.readable=!0};r.inherits(s,i),s.prototype.pack=function(e,t,r,i){this.emit("data",new n(a.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(t,r)),i&&this.emit("data",this._packer.packGAMA(i));var o=this._packer.filterData(e,t,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(e){this.emit("data",this._packer.packIDAT(e))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(o)}}).call(this,e("buffer").Buffer)},{"./constants":85,"./packer":95,buffer:8,stream:121,util:131}],94:[function(e,t,n){(function(n){"use strict";var r=!0,i=e("zlib");i.deflateSync||(r=!1);var a=e("./constants"),o=e("./packer");t.exports=function(e,t){if(!r)throw new Error("To use the sync capability of this library in old node versions, please also add a dependency on node-zlb-backport");var s=new o(t||{}),u=[];u.push(new n(a.PNG_SIGNATURE)),u.push(s.packIHDR(e.width,e.height)),e.gamma&&u.push(s.packGAMA(e.gamma));var l=s.filterData(e.data,e.width,e.height),f=i.deflateSync(l,s.getDeflateOptions());if(l=null,!f||!f.length)throw new Error("bad png - invalid compressed data response");return u.push(s.packIDAT(f)),u.push(s.packIEND()),n.concat(u)}}).call(this,e("buffer").Buffer)},{"./constants":85,"./packer":95,buffer:8,zlib:6}],95:[function(e,t,n){(function(n){"use strict";var r=e("./constants"),i=e("./crc"),a=e("./bitpacker"),o=e("./filter-pack"),s=e("zlib"),u=t.exports=function(e){if(this._options=e,e.deflateChunkSize=e.deflateChunkSize||32768,e.deflateLevel=null!=e.deflateLevel?e.deflateLevel:9,e.deflateStrategy=null!=e.deflateStrategy?e.deflateStrategy:3,e.inputHasAlpha=null==e.inputHasAlpha||e.inputHasAlpha,e.deflateFactory=e.deflateFactory||s.createDeflate,e.bitDepth=e.bitDepth||8,e.colorType="number"==typeof e.colorType?e.colorType:r.COLORTYPE_COLOR_ALPHA,e.colorType!==r.COLORTYPE_COLOR&&e.colorType!==r.COLORTYPE_COLOR_ALPHA)throw new Error("option color type:"+e.colorType+" is not supported at present");if(8!==e.bitDepth)throw new Error("option bit depth:"+e.bitDepth+" is not supported at present")};u.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},u.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},u.prototype.filterData=function(e,t,n){var i=a(e,t,n,this._options),s=r.COLORTYPE_TO_BPP_MAP[this._options.colorType];return o(i,t,n,this._options,s)},u.prototype._packChunk=function(e,t){var r=t?t.length:0,a=new n(r+12);return a.writeUInt32BE(r,0),a.writeUInt32BE(e,4),t&&t.copy(a,8),a.writeInt32BE(i.crc32(a.slice(4,a.length-4)),a.length-4),a},u.prototype.packGAMA=function(e){var t=new n(4);return t.writeUInt32BE(Math.floor(e*r.GAMMA_DIVISION),0),this._packChunk(r.TYPE_gAMA,t)},u.prototype.packIHDR=function(e,t){var i=new n(13);return i.writeUInt32BE(e,0),i.writeUInt32BE(t,4),i[8]=this._options.bitDepth,i[9]=this._options.colorType,i[10]=0,i[11]=0,i[12]=0,this._packChunk(r.TYPE_IHDR,i)},u.prototype.packIDAT=function(e){return this._packChunk(r.TYPE_IDAT,e)},u.prototype.packIEND=function(){return this._packChunk(r.TYPE_IEND,null)}}).call(this,e("buffer").Buffer)},{"./bitpacker":83,"./constants":85,"./crc":86,"./filter-pack":87,buffer:8,zlib:6}],96:[function(e,t,n){"use strict";t.exports=function(e,t,n){var r=e+t-n,i=Math.abs(r-e),a=Math.abs(r-t),o=Math.abs(r-n);return i<=a&&i<=o?e:a<=o?t:n}},{}],97:[function(e,t,n){"use strict";var r=e("util"),i=e("zlib"),a=e("./chunkstream"),o=e("./filter-parse-async"),s=e("./parser"),u=e("./bitmapper"),l=e("./format-normaliser"),f=t.exports=function(e){a.call(this),this._parser=new s(e,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this)}),this._options=e,this.writable=!0,this._parser.start()};r.inherits(f,a),f.prototype._handleError=function(e){this.emit("error",e),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this.errord=!0},f.prototype._inflateData=function(e){this._inflate||(this._inflate=i.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter)),this._inflate.write(e)},f.prototype._handleMetaData=function(e){this.emit("metadata",e),this._bitmapInfo=Object.create(e),this._filter=new o(this._bitmapInfo)},f.prototype._handleTransColor=function(e){this._bitmapInfo.transColor=e},f.prototype._handlePalette=function(e){this._bitmapInfo.palette=e},f.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"),this.destroySoon())},f.prototype._complete=function(e){if(!this.errord){try{var t=u.dataToBitMap(e,this._bitmapInfo),n=l(t,this._bitmapInfo);t=null}catch(e){return void this._handleError(e)}this.emit("parsed",n)}}},{"./bitmapper":82,"./chunkstream":84,"./filter-parse-async":88,"./format-normaliser":91,"./parser":99,util:131,zlib:6}],98:[function(e,t,n){(function(n){"use strict";var r=!0,i=e("zlib");i.deflateSync||(r=!1);var a=e("./sync-reader"),o=e("./filter-parse-sync"),s=e("./parser"),u=e("./bitmapper"),l=e("./format-normaliser");t.exports=function(e,t){if(!r)throw new Error("To use the sync capability of this library in old node versions, please also add a dependency on node-zlb-backport");var f,c,h;var p=[];var d=new a(e);if(new s(t,{read:d.read.bind(d),error:function(e){f=e},metadata:function(e){c=e},gamma:function(e){h=e},palette:function(e){c.palette=e},transColor:function(e){c.transColor=e},inflateData:function(e){p.push(e)}}).start(),d.process(),f)throw f;var g=n.concat(p);p.length=0;var v=i.inflateSync(g);if(g=null,!v||!v.length)throw new Error("bad png - invalid inflate data response");var m=o.process(v,c);g=null;var _=u.dataToBitMap(m,c);m=null;var w=l(_,c);return c.data=w,c.gamma=h||0,c}}).call(this,e("buffer").Buffer)},{"./bitmapper":82,"./filter-parse-sync":89,"./format-normaliser":91,"./parser":99,"./sync-reader":102,buffer:8,zlib:6}],99:[function(e,t,n){(function(n){"use strict";var r=e("./constants"),i=e("./crc"),a=t.exports=function(e,t){this._options=e,e.checkCRC=!1!==e.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[r.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[r.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[r.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[r.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[r.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[r.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=t.read,this.error=t.error,this.metadata=t.metadata,this.gamma=t.gamma,this.transColor=t.transColor,this.palette=t.palette,this.parsed=t.parsed,this.inflateData=t.inflateData,this.inflateData=t.inflateData,this.finished=t.finished};a.prototype.start=function(){this.read(r.PNG_SIGNATURE.length,this._parseSignature.bind(this))},a.prototype._parseSignature=function(e){for(var t=r.PNG_SIGNATURE,n=0;nthis._palette.length)return void this.error(new Error("More transparent colors than palette size"));for(var t=0;t0?this._handleIDAT(n):this._handleChunkEnd()},a.prototype._handleIEND=function(e){this.read(e,this._parseIEND.bind(this))},a.prototype._parseIEND=function(e){this._crc.write(e),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}}).call(this,e("buffer").Buffer)},{"./constants":85,"./crc":86,buffer:8}],100:[function(e,t,n){"use strict";var r=e("./parser-sync"),i=e("./packer-sync");n.read=function(e,t){return r(e,t||{})},n.write=function(e){return i(e)}},{"./packer-sync":94,"./parser-sync":98}],101:[function(e,t,n){(function(t,r){"use strict";var i=e("util"),a=e("stream"),o=e("./parser-async"),s=e("./packer-async"),u=e("./png-sync"),l=n.PNG=function(e){a.call(this),e=e||{},this.width=e.width||0,this.height=e.height||0,this.data=this.width>0&&this.height>0?new r(4*this.width*this.height):null,e.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new o(e),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new s(e),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};i.inherits(l,a),l.sync=u,l.prototype.pack=function(){return this.data&&this.data.length?(t.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this):(this.emit("error","No data provided"),this)},l.prototype.parse=function(e,t){var n,r;t&&(n=function(e){this.removeListener("error",r),this.data=e,t(null,this)}.bind(this),r=function(e){this.removeListener("parsed",n),t(e,null)}.bind(this),this.once("parsed",n),this.once("error",r));return this.end(e),this},l.prototype.write=function(e){return this._parser.write(e),!0},l.prototype.end=function(e){this._parser.end(e)},l.prototype._metadata=function(e){this.width=e.width,this.height=e.height,this.emit("metadata",e)},l.prototype._gamma=function(e){this.gamma=e},l.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},l.bitblt=function(e,t,n,r,i,a,o,s){if(n>e.width||r>e.height||n+i>e.width||r+a>e.height)throw new Error("bitblt reading outside image");if(o>t.width||s>t.height||o+i>t.width||s+a>t.height)throw new Error("bitblt writing outside image");for(var u=0;u0&&this._buffer.length;){var e=this._reads[0];if(!this._buffer.length||!(this._buffer.length>=e.length||e.allowLess))break;this._reads.shift();var t=this._buffer;this._buffer=t.slice(e.length),e.func.call(this,t.slice(0,e.length))}return this._reads.length>0?new Error("There are some read requests waitng on finished stream"):this._buffer.length>0?new Error("unrecognised content at end of stream"):void 0}},{}],103:[function(e,t,n){(function(e){"use strict";!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?t.exports=function(t,n,r,i){if("function"!=typeof t)throw new TypeError('"callback" argument must be a function');var a,o,s=arguments.length;switch(s){case 0:case 1:return e.nextTick(t);case 2:return e.nextTick(function(){t.call(null,n)});case 3:return e.nextTick(function(){t.call(null,n,r)});case 4:return e.nextTick(function(){t.call(null,n,r,i)});default:for(a=new Array(s-1),o=0;o1)for(var n=1;n0)if(t.ended&&!a){var s=new Error("stream.push() after EOF");e.emit("error",s)}else if(t.endEmitted&&a){var l=new Error("stream.unshift() after end event");e.emit("error",l)}else{var f;!t.decoder||a||r||(n=t.decoder.write(n),f=!t.objectMode&&0===n.length),a||(t.reading=!1),f||(t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,a?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&y(e))),function(e,t){t.readingMore||(t.readingMore=!0,i(k,e,t))}(e,t)}else a||(t.reading=!1);return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=w?e=w:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function y(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i(x,e):x(e))}function x(e){h("emit readable"),e.emit("readable"),S(e)}function k(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ea.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=l.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(a.copy(n,n.length-e,0,o),0===(e-=o)){o===a.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function M(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i(R,t,e))}function R(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function I(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?M(this):y(this),null;if(0===(e=b(e,t))&&t.ended)return 0===t.length&&M(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?T(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&M(this)),null!==r&&this.emit("data",r),r},m.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(e,t){var r=this,s=this._readableState;switch(s.pipesCount){case 0:s.pipes=e;break;case 1:s.pipes=[s.pipes,e];break;default:s.pipes.push(e)}s.pipesCount+=1,h("pipe count=%d opts=%j",s.pipesCount,t);var u=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?f:d;function l(e){h("onunpipe"),e===r&&d()}function f(){h("onend"),e.end()}s.endEmitted?i(u):r.once("end",u),e.on("unpipe",l);var c=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,S(e))}}(r);e.on("drain",c);var p=!1;function d(){h("cleanup"),e.removeListener("close",_),e.removeListener("finish",w),e.removeListener("drain",c),e.removeListener("error",m),e.removeListener("unpipe",l),r.removeListener("end",f),r.removeListener("end",d),r.removeListener("data",v),p=!0,!s.awaitDrain||e._writableState&&!e._writableState.needDrain||c()}var g=!1;function v(t){h("ondata"),g=!1,!1!==e.write(t)||g||((1===s.pipesCount&&s.pipes===e||s.pipesCount>1&&-1!==I(s.pipes,e))&&!p&&(h("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,g=!0),r.pause())}function m(t){h("onerror",t),b(),e.removeListener("error",m),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",w),b()}function w(){h("onfinish"),e.removeListener("close",_),b()}function b(){h("unpipe"),r.unpipe(e)}return r.on("data",v),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",m),e.once("close",_),e.once("finish",w),e.emit("pipe",r),s.flowing||(h("pipe resume"),r.resume()),e},m.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i-1?setImmediate:i;d.WritableState=p;var o=e("core-util-is");o.inherits=e("inherits");var s,u={deprecate:e("util-deprecate")},l=e("./internal/streams/stream"),f=e("buffer").Buffer,c=e("buffer-shims");function h(){}function p(t,n){r=r||e("./_stream_duplex"),t=t||{},this.objectMode=!!t.objectMode,n instanceof r&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var o=t.highWaterMark,s=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:s,this.highWaterMark=~~this.highWaterMark,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1;var u=!1===t.decodeStrings;this.decodeStrings=!u,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,a){--t.pendingcb,n?i(a,r):a(r);e._writableState.errorEmitted=!0,e.emit("error",r)}(e,n,r,t,o);else{var s=_(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||m(e,n),r?a(v,e,n,s,o):v(e,n,s,o)}}(n,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new y(this)}function d(t){if(r=r||e("./_stream_duplex"),!(s.call(d,this)||this instanceof r))return new d(t);this._writableState=new p(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev)),l.call(this)}function g(e,t,n,r,i,a,o){t.writelen=r,t.writecb=o,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function v(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),b(e,t)}function m(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var o=0;n;)i[o]=n,n=n.next,o+=1;g(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new y(t)}else{for(;n;){var s=n.chunk,u=n.encoding,l=n.callback;if(g(e,t,!1,t.objectMode?1:s.length,s,u,l),n=n.next,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=n,t.bufferProcessing=!1}function _(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function w(e,t){t.prefinished||(t.prefinished=!0,e.emit("prefinish"))}function b(e,t){var n=_(t);return n&&(0===t.pendingcb?(w(e,t),t.finished=!0,e.emit("finish")):w(e,t)),n}function y(e){var t=this;this.next=null,this.entry=null,this.finish=function(n){var r=t.entry;for(t.entry=null;r;){var i=r.callback;e.pendingcb--,i(n),r=r.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}}o.inherits(d,l),p.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(p.prototype,"buffer",{get:u.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(s=Function.prototype[Symbol.hasInstance],Object.defineProperty(d,Symbol.hasInstance,{value:function(e){return!!s.call(this,e)||e&&e._writableState instanceof p}})):s=function(e){return e instanceof this},d.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},d.prototype.write=function(e,t,n){var r=this._writableState,a=!1,o=f.isBuffer(e);return"function"==typeof t&&(n=t,t=null),o?t="buffer":t||(t=r.defaultEncoding),"function"!=typeof n&&(n=h),r.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),i(t,n)}(this,n):(o||function(e,t,n,r){var a=!0,o=!1;return null===n?o=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),i(r,o),a=!1),a}(this,r,e,n))&&(r.pendingcb++,a=function(e,t,n,r,i,a){n||(r=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=c.from(t,n));return t}(t,r,i),f.isBuffer(r)&&(i="buffer"));var o=t.objectMode?1:r.length;t.length+=o;var s=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},d.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},d.prototype._writev=null,d.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!==e&&void 0!==e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,b(e,t),n&&(t.finished?i(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)}}).call(this,e("_process"))},{"./_stream_duplex":106,"./internal/streams/stream":112,_process:104,buffer:8,"buffer-shims":10,"core-util-is":22,inherits:52,"process-nextick-args":103,"util-deprecate":128}],111:[function(e,t,n){"use strict";e("buffer").Buffer;var r=e("buffer-shims");function i(){this.head=null,this.tail=null,this.length=0}t.exports=i,i.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},i.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},i.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},i.prototype.clear=function(){this.head=this.tail=null,this.length=0},i.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},i.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t=r.allocUnsafe(e>>>0),n=this.head,i=0;n;)n.data.copy(t,i),i+=n.data.length,n=n.next;return t}},{buffer:8,"buffer-shims":10}],112:[function(e,t,n){t.exports=e("events").EventEmitter},{events:29}],113:[function(e,t,n){t.exports=e("./readable").PassThrough},{"./readable":114}],114:[function(e,t,n){(n=t.exports=e("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=e("./lib/_stream_writable.js"),n.Duplex=e("./lib/_stream_duplex.js"),n.Transform=e("./lib/_stream_transform.js"),n.PassThrough=e("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":106,"./lib/_stream_passthrough.js":107,"./lib/_stream_readable.js":108,"./lib/_stream_transform.js":109,"./lib/_stream_writable.js":110}],115:[function(e,t,n){t.exports=e("./readable").Transform},{"./readable":114}],116:[function(e,t,n){t.exports=e("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":110}],117:[function(e,t,n){var r=e("./lib/encoder"),i=e("./lib/decoder");t.exports={encode:r,decode:i}},{"./lib/decoder":118,"./lib/encoder":119}],118:[function(e,t,n){(function(e){var n=function(){"use strict";var e=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),t=4017,n=799,r=3406,i=2276,a=1567,o=3784,s=5793,u=2896;function l(){}function f(e,t){for(var n,r,i=0,a=[],o=16;o>0&&!e[o-1];)o--;a.push({children:[],index:0});var s,u=a[0];for(n=0;n0;)u=a.pop();for(u.index++,a.push(u);a.length<=n;)a.push(s={children:[],index:0}),u.children[u.index]=s.children,u=s;i++}n+10)return p>>--d&1;if(255==(p=t[n++])){var e=t[n++];if(e)throw"unexpected marker: "+(p<<8|e).toString(16)}return d=7,p>>>7}function v(e){for(var t,n=e;null!==(t=g());){if("number"==typeof(n=n[t]))return n;if("object"!=typeof n)throw"invalid huffman sequence"}return null}function m(e){for(var t=0;e>0;){var n=g();if(null===n)return;t=t<<1|n,e--}return t}function _(e){var t=m(e);return t>=1<0)w--;else for(var r=o,i=s;r<=i;){var a=v(t.huffmanTableAC),u=15&a,f=a>>4;if(0!==u)n[e[r+=f]]=_(u)*(1<>4,0===c)a<15?(w=m(a)+(1<>4;if(0!==s)n[e[a+=u]]=_(s),a++;else{if(u<15)break;a+=16}}};var j,C,L,B,D=0;for(C=1==I?i[0].blocksPerLine*i[0].blocksPerColumn:f*r.mcusPerColumn,a||(a=C);D=65488&&j<=65495))break;n+=2}return n-h}function h(e,l){var f,c,h=[],p=l.blocksPerLine,d=l.blocksPerColumn,g=p<<3,v=new Int32Array(64),m=new Uint8Array(64);function _(e,f,c){var h,p,d,g,v,m,_,w,b,y,x=l.quantizationTable,k=c;for(y=0;y<64;y++)k[y]=e[y]*x[y];for(y=0;y<8;++y){var E=8*y;0!=k[1+E]||0!=k[2+E]||0!=k[3+E]||0!=k[4+E]||0!=k[5+E]||0!=k[6+E]||0!=k[7+E]?(h=s*k[0+E]+128>>8,p=s*k[4+E]+128>>8,d=k[2+E],g=k[6+E],v=u*(k[1+E]-k[7+E])+128>>8,w=u*(k[1+E]+k[7+E])+128>>8,m=k[3+E]<<4,_=k[5+E]<<4,b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*o+g*a+128>>8,d=d*a-g*o+128>>8,g=b,b=v-_+1>>1,v=v+_+1>>1,_=b,b=w+m+1>>1,m=w-m+1>>1,w=b,b=h-g+1>>1,h=h+g+1>>1,g=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=v*i+w*r+2048>>12,v=v*r-w*i+2048>>12,w=b,b=m*n+_*t+2048>>12,m=m*t-_*n+2048>>12,_=b,k[0+E]=h+w,k[7+E]=h-w,k[1+E]=p+_,k[6+E]=p-_,k[2+E]=d+m,k[5+E]=d-m,k[3+E]=g+v,k[4+E]=g-v):(b=s*k[0+E]+512>>10,k[0+E]=b,k[1+E]=b,k[2+E]=b,k[3+E]=b,k[4+E]=b,k[5+E]=b,k[6+E]=b,k[7+E]=b)}for(y=0;y<8;++y){var A=y;0!=k[8+A]||0!=k[16+A]||0!=k[24+A]||0!=k[32+A]||0!=k[40+A]||0!=k[48+A]||0!=k[56+A]?(h=s*k[0+A]+2048>>12,p=s*k[32+A]+2048>>12,d=k[16+A],g=k[48+A],v=u*(k[8+A]-k[56+A])+2048>>12,w=u*(k[8+A]+k[56+A])+2048>>12,m=k[24+A],_=k[40+A],b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*o+g*a+2048>>12,d=d*a-g*o+2048>>12,g=b,b=v-_+1>>1,v=v+_+1>>1,_=b,b=w+m+1>>1,m=w-m+1>>1,w=b,b=h-g+1>>1,h=h+g+1>>1,g=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=v*i+w*r+2048>>12,v=v*r-w*i+2048>>12,w=b,b=m*n+_*t+2048>>12,m=m*t-_*n+2048>>12,_=b,k[0+A]=h+w,k[56+A]=h-w,k[8+A]=p+_,k[48+A]=p-_,k[16+A]=d+m,k[40+A]=d-m,k[24+A]=g+v,k[32+A]=g-v):(b=s*c[y+0]+8192>>14,k[0+A]=b,k[8+A]=b,k[16+A]=b,k[24+A]=b,k[32+A]=b,k[40+A]=b,k[48+A]=b,k[56+A]=b)}for(y=0;y<64;++y){var S=128+(k[y]+8>>4);f[y]=S<0?0:S>255?255:S}}for(var w=0;w255?255:e}return l.prototype={load:function(e){var t=new XMLHttpRequest;t.open("GET",e,!0),t.responseType="arraybuffer",t.onload=function(){var e=new Uint8Array(t.response||t.mozResponseArrayBuffer);this.parse(e),this.onload&&this.onload()}.bind(this),t.send(null)},parse:function(t){var n=0;t.length;function r(){var e=t[n]<<8|t[n+1];return n+=2,e}function i(){var e=r(),i=t.subarray(n,n+e-2);return n+=i.length,i}function a(e){var t,n,r=0,i=0;for(n in e.components)e.components.hasOwnProperty(n)&&(r<(t=e.components[n]).h&&(r=t.h),i>4==0)for(_=0;_<64;_++){x[e[_]]=t[n++]}else{if(y>>4!=1)throw"DQT: invalid table spec";for(_=0;_<64;_++){x[e[_]]=r()}}p[15&y]=x}break;case 65472:case 65473:case 65474:r(),(o={}).extended=65473===m,o.progressive=65474===m,o.precision=t[n++],o.scanLines=r(),o.samplesPerLine=r(),o.components={},o.componentsOrder=[];var k,E=t[n++];for(U=0;U>4,S=15&t[n+1],T=t[n+2];o.componentsOrder.push(k),o.components[k]={h:A,v:S,quantizationTable:p[T]},n+=3}a(o),d.push(o);break;case 65476:var M=r();for(U=2;U>4==0?v:g)[15&R]=f(I,C)}break;case 65501:r(),s=r();break;case 65498:r();var L=t[n++],B=[];for(U=0;U>4],F.huffmanTableAC=g[15&D],B.push(F)}var z=t[n++],P=t[n++],O=t[n++],N=c(t,n,o,B,s,z,P,O>>4,15&O);n+=N;break;default:if(255==t[n-3]&&t[n-2]>=192&&t[n-2]<=254){n-=3;break}throw"unknown JPEG marker "+m.toString(16)}m=r()}if(1!=d.length)throw"only single frame JPEGs supported";this.width=o.samplesPerLine,this.height=o.scanLines,this.jfif=u,this.adobe=l,this.components=[];for(var U=0;U=0;)t&1<>8&255),D(255&e)}function P(e,t,n,r,i){var a,o=i[0],s=i[240];for(var u=function(e,t){var n,r,i,a,o,s,u,l,f,c,h=0;for(f=0;f<8;++f){n=e[h],r=e[h+1],i=e[h+2],a=e[h+3],o=e[h+4],s=e[h+5],u=e[h+6];var p=n+(l=e[h+7]),g=n-l,v=r+u,m=r-u,_=i+s,w=i-s,b=a+o,y=a-o,x=p+b,k=p-b,E=v+_,A=v-_;e[h]=x+E,e[h+4]=x-E;var S=.707106781*(A+k);e[h+2]=k+S,e[h+6]=k-S;var T=.382683433*((x=y+w)-(A=m+g)),M=.5411961*x+T,R=1.306562965*A+T,I=.707106781*(E=w+m),j=g+I,C=g-I;e[h+5]=C+M,e[h+3]=C-M,e[h+1]=j+R,e[h+7]=j-R,h+=8}for(h=0,f=0;f<8;++f){n=e[h],r=e[h+8],i=e[h+16],a=e[h+24],o=e[h+32],s=e[h+40],u=e[h+48];var L=n+(l=e[h+56]),B=n-l,D=r+u,z=r-u,P=i+s,O=i-s,N=a+o,U=a-o,F=L+N,q=L-N,V=D+P,W=D-P;e[h]=F+V,e[h+32]=F-V;var Z=.707106781*(W+q);e[h+16]=q+Z,e[h+48]=q-Z;var G=.382683433*((F=U+O)-(W=z+B)),Y=.5411961*F+G,H=1.306562965*W+G,X=.707106781*(V=O+z),$=B+X,K=B-X;e[h+40]=K+Y,e[h+24]=K-Y,e[h+8]=$+H,e[h+56]=$-H,h++}for(f=0;f<64;++f)c=e[f]*t[f],d[f]=c>0?c+.5|0:c-.5|0;return d}(e,t),l=0;l<64;++l)g[E[l]]=u[l];var f=g[0]-n;n=g[0],0==f?B(r[0]):(B(r[p[a=32767+f]]),B(h[a]));for(var c=63;c>0&&0==g[c];c--);if(0==c)return B(o),n;for(var v,m=1;m<=c;){for(var _=m;0==g[m]&&m<=c;++m);var w=m-_;if(w>=16){v=w>>4;for(var b=1;b<=v;++b)B(s);w&=15}a=32767+g[m],B(i[(w<<4)+p[a]]),B(h[a]),m++}return 63!=c&&B(o),n}function O(e){if(e<=0&&(e=1),e>100&&(e=100),o!=e){(function(e){for(var t=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],n=0;n<64;n++){var r=s((t[n]*e+50)/100);r<1?r=1:r>255&&(r=255),u[E[n]]=r}for(var i=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],a=0;a<64;a++){var o=s((i[a]*e+50)/100);o<1?o=1:o>255&&(o=255),l[E[a]]=o}for(var h=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],p=0,d=0;d<8;d++)for(var g=0;g<8;g++)f[p]=1/(u[E[p]]*h[d]*h[g]*8),c[p]=1/(l[E[p]]*h[d]*h[g]*8),p++})(e<50?Math.floor(5e3/e):Math.floor(200-2*e)),o=e}}this.encode=function(t,o){(new Date).getTime();o&&O(o),v=new Array,m=0,_=7,z(65496),z(65504),z(16),D(74),D(70),D(73),D(70),D(0),D(1),D(1),D(0),z(1),z(1),D(0),D(0),function(){z(65499),z(132),D(0);for(var e=0;e<64;e++)D(u[e]);D(1);for(var t=0;t<64;t++)D(l[t])}(),function(e,t){z(65472),z(17),D(8),z(t),z(e),D(3),D(1),D(17),D(0),D(2),D(17),D(1),D(3),D(17),D(1)}(t.width,t.height),function(){z(65476),z(418),D(0);for(var e=0;e<16;e++)D(A[e+1]);for(var t=0;t<=11;t++)D(S[t]);D(16);for(var n=0;n<16;n++)D(T[n+1]);for(var r=0;r<=161;r++)D(M[r]);D(1);for(var i=0;i<16;i++)D(R[i+1]);for(var a=0;a<=11;a++)D(I[a]);D(17);for(var o=0;o<16;o++)D(j[o+1]);for(var s=0;s<=161;s++)D(C[s])}(),z(65498),z(12),D(3),D(1),D(0),D(2),D(17),D(3),D(17),D(0),D(63),D(0);var s=0,h=0,p=0;m=0,_=7,this.encode.displayName="_encode_";for(var d,g,x,E,L,N,U,F,q,V=t.data,W=t.width,Z=t.height,G=4*W,Y=0;Y>3)*G+(U=4*(7&q)),Y+F>=Z&&(N-=G*(Y+1+F-Z)),d+U>=G&&(N-=d+U-G+4),g=V[N++],x=V[N++],E=V[N++],w[q]=(k[g]+k[x+256>>0]+k[E+512>>0]>>16)-128,b[q]=(k[g+768>>0]+k[x+1024>>0]+k[E+1280>>0]>>16)-128,y[q]=(k[g+1280>>0]+k[x+1536>>0]+k[E+1792>>0]>>16)-128;s=P(w,f,s,n,i),h=P(b,c,h,r,a),p=P(y,c,p,r,a),d+=32}Y+=8}if(_>=0){var H=[];H[1]=_+1,H[0]=(1<<_+1)-1,B(H)}return z(65497),new e(v)},function(){(new Date).getTime();t||(t=50),function(){for(var e=String.fromCharCode,t=0;t<256;t++)x[t]=e(t)}(),n=L(A,S),r=L(R,I),i=L(T,M),a=L(j,C),function(){for(var e=1,t=2,n=1;n<=15;n++){for(var r=e;r>0]=38470*e,k[e+512>>0]=7471*e+32768,k[e+768>>0]=-11059*e,k[e+1024>>0]=-21709*e,k[e+1280>>0]=32768*e+8421375,k[e+1536>>0]=-27439*e,k[e+1792>>0]=-5329*e}(),O(t),(new Date).getTime()}()}t.exports=function(e,t){void 0===t&&(t=50);return{data:new n(t).encode(e,t),width:e.width,height:e.height}}}).call(this,e("buffer").Buffer)},{buffer:8}],120:[function(e,t,n){(function(n){"use strict";var r=e("contentstream"),i=e("gif-encoder"),a=e("jpeg-js"),o=e("pngjs-nozlib").PNG,s=e("ndarray"),u=e("ndarray-ops"),l=e("through");function f(e,t,n){if(4===e.shape.length)return f(e.pick(n),t,0);if(3===e.shape.length)if(3===e.shape[2])u.assign(s(t,[e.shape[0],e.shape[1],3],[4,4*e.shape[0],1]),e),u.assigns(s(t,[e.shape[0]*e.shape[1]],[4],3),255);else if(4===e.shape[2])u.assign(s(t,[e.shape[0],e.shape[1],4],[4,4*e.shape[0],1]),e);else{if(1!==e.shape[2])return new Error("Incompatible array shape");u.assign(s(t,[e.shape[0],e.shape[1],3],[4,4*e.shape[0],1]),s(e.data,[e.shape[0],e.shape[1],3],[e.stride[0],e.stride[1],0],e.offset)),u.assigns(s(t,[e.shape[0]*e.shape[1]],[4],3),255)}else{if(2!==e.shape.length)return new Error("Incompatible array shape");u.assign(s(t,[e.shape[0],e.shape[1],3],[4,4*e.shape[0],1]),s(e.data,[e.shape[0],e.shape[1],3],[e.stride[0],e.stride[1],0],e.offset)),u.assigns(s(t,[e.shape[0]*e.shape[1]],[4],3),255)}return t}function c(e){var t=l();return t.emit("error",e),t}t.exports=function(e,t,s){switch(s=s||{},t.toUpperCase()){case"JPG":case".JPG":case"JPEG":case".JPEG":case"JPE":case".JPE":var u=e.shape[0],l=e.shape[1],h={data:g=f(e,g=new n(u*l*4)),width:u,height:l},p=a.encode(h,s.quality);return new r(p.data);case"GIF":case".GIF":var d=4===e.shape.length?e.shape[0]:1,g=(u=4===e.shape.length?e.shape[1]:e.shape[0],l=4===e.shape.length?e.shape[2]:e.shape[1],new n(u*l*4)),v=new i(u,l);v.writeHeader();for(var m=0;m>5==6?2:e>>4==14?3:e>>3==30?4:-1}function u(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�".repeat(n);if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�".repeat(n+1);if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�".repeat(n+2)}}(this,e,t);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function l(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function c(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function p(e){return e.toString(this.encoding)}function d(e){return e&&e.length?this.write(e):""}n.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},{buffer:8,"buffer-shims":10}],123:[function(e,t,n){(function(n){var r=e("stream");function i(e,t,i){e=e||function(e){this.queue(e)},t=t||function(){this.queue(null)};var a=!1,o=!1,s=[],u=!1,l=new r;function f(){for(;s.length&&!l.paused;){var e=s.shift();if(null===e)return l.emit("end");l.emit("data",e)}}return l.readable=l.writable=!0,l.paused=!1,l.autoDestroy=!(i&&!1===i.autoDestroy),l.write=function(t){return e.call(this,t),!l.paused},l.queue=l.push=function(e){return u?l:(null===e&&(u=!0),s.push(e),f(),l)},l.on("end",function(){l.readable=!1,!l.writable&&l.autoDestroy&&n.nextTick(function(){l.destroy()})}),l.end=function(e){if(!a)return a=!0,arguments.length&&l.write(e),l.writable=!1,t.call(l),!l.readable&&l.autoDestroy&&l.destroy(),l},l.destroy=function(){if(!o)return o=!0,a=!0,s.length=0,l.writable=l.readable=!1,l.emit("close"),l},l.pause=function(){if(!l.paused)return l.paused=!0,l},l.resume=function(){return l.paused&&(l.paused=!1,l.emit("resume")),f(),l.paused||l.emit("drain"),l},l}t.exports=i,i.through=i}).call(this,e("_process"))},{_process:104,stream:121}],124:[function(e,t,n){n.isatty=function(){return!1},n.ReadStream=function(){throw new Error("tty.ReadStream is not implemented")},n.WriteStream=function(){throw new Error("tty.ReadStream is not implemented")}},{}],125:[function(e,t,n){(function(t,r){"use strict";var i=e("bit-twiddle"),a=e("dup");t.__TYPEDARRAY_POOL||(t.__TYPEDARRAY_POOL={UINT8:a([32,0]),UINT16:a([32,0]),UINT32:a([32,0]),INT8:a([32,0]),INT16:a([32,0]),INT32:a([32,0]),FLOAT:a([32,0]),DOUBLE:a([32,0]),DATA:a([32,0]),UINT8C:a([32,0]),BUFFER:a([32,0])});var o="undefined"!=typeof Uint8ClampedArray,s=t.__TYPEDARRAY_POOL;s.UINT8C||(s.UINT8C=a([32,0])),s.BUFFER||(s.BUFFER=a([32,0]));var u=s.DATA,l=s.BUFFER;function f(e){if(e){var t=e.length||e.byteLength,n=i.log2(t);u[n].push(e)}}function c(e){e=i.nextPow2(e);var t=i.log2(e),n=u[t];return n.length>0?n.pop():new ArrayBuffer(e)}function h(e){return new Uint8Array(c(e),0,e)}function p(e){return new Uint16Array(c(2*e),0,e)}function d(e){return new Uint32Array(c(4*e),0,e)}function g(e){return new Int8Array(c(e),0,e)}function v(e){return new Int16Array(c(2*e),0,e)}function m(e){return new Int32Array(c(4*e),0,e)}function _(e){return new Float32Array(c(4*e),0,e)}function w(e){return new Float64Array(c(8*e),0,e)}function b(e){return o?new Uint8ClampedArray(c(e),0,e):h(e)}function y(e){return new DataView(c(e),0,e)}function x(e){e=i.nextPow2(e);var t=i.log2(e),n=l[t];return n.length>0?n.pop():new r(e)}n.free=function(e){if(r.isBuffer(e))l[i.log2(e.length)].push(e);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(e)&&(e=e.buffer),!e)return;var t=e.length||e.byteLength,n=0|i.log2(t);u[n].push(e)}},n.freeUint8=n.freeUint16=n.freeUint32=n.freeInt8=n.freeInt16=n.freeInt32=n.freeFloat32=n.freeFloat=n.freeFloat64=n.freeDouble=n.freeUint8Clamped=n.freeDataView=function(e){f(e.buffer)},n.freeArrayBuffer=f,n.freeBuffer=function(e){l[i.log2(e.length)].push(e)},n.malloc=function(e,t){if(void 0===t||"arraybuffer"===t)return c(e);switch(t){case"uint8":return h(e);case"uint16":return p(e);case"uint32":return d(e);case"int8":return g(e);case"int16":return v(e);case"int32":return m(e);case"float":case"float32":return _(e);case"double":case"float64":return w(e);case"uint8_clamped":return b(e);case"buffer":return x(e);case"data":case"dataview":return y(e);default:return null}return null},n.mallocArrayBuffer=c,n.mallocUint8=h,n.mallocUint16=p,n.mallocUint32=d,n.mallocInt8=g,n.mallocInt16=v,n.mallocInt32=m,n.mallocFloat32=n.mallocFloat=_,n.mallocFloat64=n.mallocDouble=w,n.mallocUint8Clamped=b,n.mallocDataView=y,n.mallocBuffer=x,n.clearCache=function(){for(var e=0;e<32;++e)s.UINT8[e].length=0,s.UINT16[e].length=0,s.UINT32[e].length=0,s.INT8[e].length=0,s.INT16[e].length=0,s.INT32[e].length=0,s.FLOAT[e].length=0,s.DOUBLE[e].length=0,s.UINT8C[e].length=0,u[e].length=0,l[e].length=0}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer)},{"bit-twiddle":3,buffer:8,dup:28}],126:[function(e,t,n){"use strict";t.exports=function(e,t,n){return 0===e.length?e:t?(n||e.sort(t),function(e,t){for(var n=1,r=e.length,i=e[0],a=e[0],o=1;o=a)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}}),u=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(t)?r.showHidden=t:t&&n._extend(r,t),_(r.showHidden)&&(r.showHidden=!1),_(r.depth)&&(r.depth=2),_(r.colors)&&(r.colors=!1),_(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),f(r,e,r.depth)}function u(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function l(e,t){return e}function f(e,t,r){if(e.customInspect&&t&&k(t.inspect)&&t.inspect!==n.inspect&&(!t.constructor||t.constructor.prototype!==t)){var i=t.inspect(r,e);return m(i)||(i=f(e,i,r)),i}var a=function(e,t){if(_(t))return e.stylize("undefined","undefined");if(m(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(v(t))return e.stylize(""+t,"number");if(d(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,t);if(a)return a;var o=Object.keys(t),s=function(e){var t={};return e.forEach(function(e,n){t[e]=!0}),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),x(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return c(t);if(0===o.length){if(k(t)){var u=t.name?": "+t.name:"";return e.stylize("[Function"+u+"]","special")}if(w(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(y(t))return e.stylize(Date.prototype.toString.call(t),"date");if(x(t))return c(t)}var l,b="",E=!1,A=["{","}"];(p(t)&&(E=!0,A=["[","]"]),k(t))&&(b=" [Function"+(t.name?": "+t.name:"")+"]");return w(t)&&(b=" "+RegExp.prototype.toString.call(t)),y(t)&&(b=" "+Date.prototype.toUTCString.call(t)),x(t)&&(b=" "+c(t)),0!==o.length||E&&0!=t.length?r<0?w(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),l=E?function(e,t,n,r,i){for(var a=[],o=0,s=t.length;o=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(l,b,A)):A[0]+b+A[1]}function c(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,n,r,i,a){var o,s,u;if((u=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(s=e.stylize("[Setter]","special")),T(r,i)||(o="["+i+"]"),s||(e.seen.indexOf(u.value)<0?(s=g(n)?f(e,u.value,null):f(e,u.value,n-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+s.split("\n").map(function(e){return" "+e}).join("\n")):s=e.stylize("[Circular]","special")),_(o)){if(a&&i.match(/^\d+$/))return s;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function p(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function g(e){return null===e}function v(e){return"number"==typeof e}function m(e){return"string"==typeof e}function _(e){return void 0===e}function w(e){return b(e)&&"[object RegExp]"===E(e)}function b(e){return"object"==typeof e&&null!==e}function y(e){return b(e)&&"[object Date]"===E(e)}function x(e){return b(e)&&("[object Error]"===E(e)||e instanceof Error)}function k(e){return"function"==typeof e}function E(e){return Object.prototype.toString.call(e)}function A(e){return e<10?"0"+e.toString(10):e.toString(10)}n.debuglog=function(e){if(_(a)&&(a=t.env.NODE_DEBUG||""),e=e.toUpperCase(),!o[e])if(new RegExp("\\b"+e+"\\b","i").test(a)){var r=t.pid;o[e]=function(){var t=n.format.apply(n,arguments);console.error("%s %d: %s",e,r,t)}}else o[e]=function(){};return o[e]},n.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},n.isArray=p,n.isBoolean=d,n.isNull=g,n.isNullOrUndefined=function(e){return null==e},n.isNumber=v,n.isString=m,n.isSymbol=function(e){return"symbol"==typeof e},n.isUndefined=_,n.isRegExp=w,n.isObject=b,n.isDate=y,n.isError=x,n.isFunction=k,n.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},n.isBuffer=e("./support/isBuffer");var S=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(e,t){return Object.prototype.hasOwnProperty.call(e,t)}n.log=function(){var e,t;console.log("%s - %s",(e=new Date,t=[A(e.getHours()),A(e.getMinutes()),A(e.getSeconds())].join(":"),[e.getDate(),S[e.getMonth()],t].join(" ")),n.format.apply(n,arguments))},n.inherits=e("inherits"),n._extend=function(e,t){if(!t||!b(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":130,_process:104,inherits:129}],132:[function(e,t,n){t.exports=function(e,t,n,r){!function(t,n,r){var i=e.modules[n][1],a=e.copy(r);a.number=e.options.sequencerCounter++,a.name=r.name||n||i.name,a.description=r.description||i.description,a.selector=r.selector||"ismod-"+n,a.container=r.container||e.options.selector,a.image=t,a.inBrowser=e.options.inBrowser,a.step={name:a.name,description:a.description,ID:a.number,imageName:a.image,inBrowser:e.options.inBrowser,ui:e.options.ui,options:a};var o=e.events,s=e.modules[n][0](a,o);e.images[t].steps.push(s)}(t,n,r)}},{}],133:[function(e,t,n){var r=e("fs");t.exports=function(t="./output/",n,i){if(t="/"==t[t.length-1]?t:t+"/",n.options.inBrowser)return!1;var a,o;r.access(t,function(e){e&&console.error(e)}),a=t,o=function(a){var o=1;for(var s in a)if(null!=a[s].match(/^sequencer(.*)$/)){var u=parseInt(a[s].match(/^sequencer(.*)$/)[1]);o=u>=o?u+1:o}r.mkdir(t+"sequencer"+o,function(){var a=t+"sequencer"+o+"/";for(var s in n.images){var u=n.images[s].steps;if(i){var l=u.slice(-1)[0].output.src,f=u.slice(-1)[0].output.format,c=e("data-uri-to-buffer")(l);r.writeFile(a+s+"_"+(u.length-1)+"."+f,c,function(){})}else for(var h in u){l=u[h].output.src,f=u[h].output.format,c=e("data-uri-to-buffer")(l);r.writeFile(a+s+"_"+h+"."+f,c,function(){})}}})},r.readdir(a,function(e,t){var n=[];if(void 0===t||0==t.length)return o(n),[];for(var i=0;i0&&(thisStep=s[e].steps[t],thisStep.UI.onRemove(thisStep.options.step),s[e].steps.splice(t,1))}function c(){var t=[],n=this;for(var r in arguments)t.push(i(arguments[r]));var a=o.call(this,t,"l");u.push({method:"loadImages",json_q:i(a)});var s=this.copy(a.loadedimages),l={name:"ImageSequencer Wrapper",sequencer:this,addSteps:this.addSteps,removeSteps:this.removeSteps,insertSteps:this.insertSteps,run:this.run,UI:this.UI,setUI:this.setUI,images:s};!function t(r){if(r!=s.length){var i=s[r];e("./ui/LoadImage")(n,i,a.images[i],function(){t(++r)})}else a.callback.call(l)}(0)}return{name:"ImageSequencer",options:t,inputlog:u,modules:a,images:s,events:l,loadImages:c,loadImage:c,addSteps:function(){var t,n="ImageSequencer"==this.name?this:this.sequencer,r="ImageSequencer"==this.name?[]:[this.images];for(var a in arguments)r.push(i(arguments[a]));for(var s in t=o.call(n,r,"+"),u.push({method:"addSteps",json_q:i(t)}),t)for(var l in t[s])e("./AddStep")(n,s,t[s][l].name,t[s][l].o);return this},removeSteps:function(e,t){var n,r={},a="ImageSequencer"==this.name?this:this.sequencer,s="ImageSequencer"==this.name?[]:[this.images];for(var l in arguments)s.push(i(arguments[l]));var c=o.call(a,s,"-");for(var h in u.push({method:"removeSteps",json_q:i(c)}),c)for(var p in n=c[h].sort(function(e,t){return t-e}),r[h]=n[n.length-1],n)f(h,n[p]);return this},insertSteps:function(t,n,r,a){var s={},l="ImageSequencer"==this.name?this:this.sequencer,f="ImageSequencer"==this.name?[]:[this.images];for(var c in arguments)f.push(arguments[c]);var h=o.call(l,f,"^");for(var p in u.push({method:"insertSteps",json_q:i(h)}),h){var d=h[p];for(var g in d=d.sort(function(e,t){return t.index-e.index}))e("./InsertStep")(l,p,d[g].index,d[g].name,d[g].o);s[p]=d[d.length-1].index}return this},replaceImage:function(t,n,r){return(r=r||{}).callback=r.callback||function(){},e("./ReplaceImage")(this,t,n,r)},run:function(t,r,a){let s;"test"!=arguments[0]&&(s=t,delete arguments[0]);var u="ImageSequencer"==this.name?this:this.sequencer,l="ImageSequencer"==this.name?[]:[this.images];for(var f in arguments)l.push(i(arguments[f]));var c=function(){};for(var f in l)"Function"==n(l[f])&&(c=l.splice(f,1)[0]);var h=o.call(u,l,"r");return e("./Run")(u,h,c,s),!0},setUI:function(t){this.events=e("./ui/UserInterface")(t)},exportBin:function(t,n){return e("./ExportBin")(t,this,n)},modulesInfo:function(e){var t={};if("load-image"==e)return{};if(0==arguments.length)for(var n in a)t[n]=a[n][1];else t=a[e][1];return t},log:function(e,n){"none"!=t.ui&&(1==arguments.length?console.log(arguments[0]):2==arguments.length&&console.log(e,n))},objTypeOf:n,copy:i}},t.exports=ImageSequencer},{"./AddStep":132,"./ExportBin":133,"./FormatInput":134,"./InsertStep":136,"./Modules":137,"./ReplaceImage":138,"./Run":139,"./ui/LoadImage":169,"./ui/UserInterface":170,fs:7}],136:[function(e,t,n){t.exports=function(e,t,n,r,i){!function(t,n,r,i){var a=e.copy(i);a.number=e.options.sequencerCounter++,a.name=i.name||r,a.selector=i.selector||"ismod-"+r,a.container=i.container||e.options.selector,a.image=t,-1==n&&(n=e.images[t].steps.length),a.step={name:a.name,description:a.description,url:a.url,ID:a.number,imageName:a.image,inBrowser:e.options.inBrowser,ui:e.options.ui,options:a};var o=e.events,s=e.modules[r][0](a,o);e.images[t].steps.splice(n,0,s)}(t,n,r,i)}},{}],137:[function(e,t,n){t.exports={channel:[e("./modules/Channel/Module"),e("./modules/Channel/info")],brightness:[e("./modules/Brightness/Module"),e("./modules/Brightness/info")],"edge-detect":[e("./modules/EdgeDetect/Module"),e("./modules/EdgeDetect/info")],ndvi:[e("./modules/Ndvi/Module"),e("./modules/Ndvi/info")],invert:[e("./modules/Invert/Module"),e("./modules/Invert/info")],crop:[e("./modules/Crop/Module"),e("./modules/Crop/info")],colormap:[e("./modules/Colormap/Module"),e("./modules/Colormap/info")],"decode-qr":[e("./modules/DecodeQr/Module"),e("./modules/DecodeQr/info")],"fisheye-gl":[e("./modules/FisheyeGl/Module"),e("./modules/FisheyeGl/info")],dynamic:[e("./modules/Dynamic/Module"),e("./modules/Dynamic/info")],blur:[e("./modules/Blur/Module"),e("./modules/Blur/info")],saturation:[e("./modules/Saturation/Module"),e("./modules/Saturation/info")]}},{"./modules/Blur/Module":141,"./modules/Blur/info":142,"./modules/Brightness/Module":143,"./modules/Brightness/info":144,"./modules/Channel/Module":145,"./modules/Channel/info":146,"./modules/Colormap/Module":148,"./modules/Colormap/info":149,"./modules/Crop/Module":151,"./modules/Crop/info":152,"./modules/DecodeQr/Module":153,"./modules/DecodeQr/info":154,"./modules/Dynamic/Module":155,"./modules/Dynamic/info":156,"./modules/EdgeDetect/Module":158,"./modules/EdgeDetect/info":159,"./modules/FisheyeGl/Module":160,"./modules/FisheyeGl/info":161,"./modules/Invert/Module":162,"./modules/Invert/info":163,"./modules/Ndvi/Module":164,"./modules/Ndvi/info":165,"./modules/Saturation/Module":166,"./modules/Saturation/info":167}],138:[function(e,t,n){t.exports=function(e,t,n,r){if(!e.options.inBrowser)return!1;var i=ImageSequencer({ui:!1});if(window.hasOwnProperty("$"))var a=$(t);else a=document.querySelectorAll(t);for(var o=[],s=0;s=0;n--){let r=[];for(let t=e[n].length-1;t>=0;t--)r.push(e[n][t]);t.push(r)}return t}(n);var r=e;for(let t=0;tg;n=0<=g?++f:--f)r[n]=(t-i)/(a-i)*(u[n]-s[n])+s[n];return r}}t.exports=function(e,t){return t.colormap=t.colormap||i.default,"object"==typeof t.colormap?colormapFunction=r(t.colormap):i.hasOwnProperty(t.colormap)?colormapFunction=i[t.colormap]:colormapFunction=i.default,colormapFunction(e/255)};var i={greyscale:r([[0,[0,0,0],[255,255,255]],[1,[255,255,255],[255,255,255]]]),default:r([[0,[0,0,255],[0,255,0]],[.25,[0,255,0],[255,255,0]],[.5,[0,255,255],[255,255,0]],[.75,[255,255,0],[255,0,0]]]),ndvi:r([[0,[0,0,255],[38,195,195]],[.5,[0,150,0],[255,255,0]],[.75,[255,255,0],[255,50,50]]]),stretched:r([[0,[0,0,255],[0,0,255]],[.1,[0,0,255],[38,195,195]],[.5,[0,150,0],[255,255,0]],[.7,[255,255,0],[255,50,50]],[.9,[255,50,50],[255,50,50]]]),fastie:r([[0,[255,255,255],[0,0,0]],[.167,[0,0,0],[255,255,255]],[.33,[255,255,255],[0,0,0]],[.5,[0,0,0],[140,140,255]],[.55,[140,140,255],[0,255,0]],[.63,[0,255,0],[255,255,0]],[.75,[255,255,0],[255,0,0]],[.95,[255,0,0],[255,0,255]]])}},{}],148:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(n,r,i,a){var o=(n+r+i)/3,s=e("./Colormap")(o,t);return[s[0],s[1],s[2],255]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":168,"./Colormap":147}],149:[function(e,t,n){t.exports={name:"Colormap",description:"Maps brightness values (average of red, green & blue) to a given color lookup table, made up of a set of one more color gradients.\n\nFor example, 'cooler' colors like blue could represent low values, while 'hot' colors like red could represent high values.",inputs:{colormap:{type:"select",desc:"Name of the Colormap",default:"default",values:["default","greyscale","stretched","fastie"]}}}},{}],150:[function(e,t,n){(function(n){t.exports=function(t,r,i){var a=e("get-pixels"),o=e("save-pixels");r.x=parseInt(r.x)||0,r.y=parseInt(r.y)||0,a(t.src,function(e,a){r.w=parseInt(r.w)||Math.floor(.5*a.shape[0]),r.h=parseInt(r.h)||Math.floor(.5*a.shape[1]);for(var s=r.x,u=r.y,l=r.w,f=r.h,c=a.shape[0],h=new Uint8Array(4*l*f),p=u;pInfragrammar.",inputs:{red:{type:"input",desc:"Expression to return for red channel with R, G, B, and A inputs",default:"r"},green:{type:"input",desc:"Expression to return for green channel with R, G, B, and A inputs",default:"g"},blue:{type:"input",desc:"Expression to return for blue channel with R, G, B, and A inputs",default:"b"},"monochrome (fallback)":{type:"input",desc:"Expression to return with R, G, B, and A inputs; fallback for other channels if none provided",default:"r + g + b"}}}},{}],157:[function(e,t,n){const r=e("lodash"),i=[[-1,0,1],[-2,0,2],[-1,0,1]],a=[[-1,-2,-1],[0,0,0],[1,2,1]];let o,s=[],u=[],l=[],f=[];function c(e,t,n,r,o){let s=0;for(let t=0;t<3;t++)for(let n=0;n<3;n++){let a=r+t-1,u=o+n-1;s+=e.get(a,u,0)*i[t][n]}let u=0;for(let t=0;t<3;t++)for(let n=0;n<3;n++){let i=r+t-1,s=o+n-1;u+=e.get(i,s,0)*a[t][n]}return{pixel:[t,t,t,Math.sqrt(Math.pow(s,2)+Math.pow(u,2))],angle:Math.atan2(u,s)}}t.exports=function(e,t,n,i){o=!i;for(var a=0;ar.isEqual(e,n[pixel]))){e.set(weakPixel[0],weakPixel[1],3,255),f.splice(weakPixel,weakPixel);break}}return f.forEach(t=>e.set(t[0],t[1],3,0)),e}(function(e,t,n){const r=.2*p(u),i=r*n;for(let t=0;ti?u[t][n]>r?l.push(a):f.push(a):e.set(t,n,3,0)}return l.forEach(t=>e.set(t[0],t[1],3,255)),e}(function(e){s=s.map(e=>e.map(h));for(let t=1;t=-22.5&&r<=22.5||r<-157.5&&r>=-180?u[t][n]>=u[t][n+1]&&u[t][n]>=u[t][n-1]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0):r>=22.5&&r<=67.5||r<-112.5&&r>=-157.5?u[t][n]>=u[t+1][n+1]&&u[t][n]>=u[t-1][n-1]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0):r>=67.5&&r<=112.5||r<-67.5&&r>=-112.5?u[t][t]>=u[t+1][n]&&u[t][n]>=u[t][n]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0):(r>=112.5&&r<=157.5||r<-22.5&&r>=-67.5)&&(u[t][n]>=u[t+1][n-1]&&u[t][n]>=u[t-1][n+1]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0))}return e}(e),0,n))};var h=e=>180*e/Math.PI,p=e=>Math.max(...e.map(e=>e.map(e=>e||0)).map(e=>Math.max(...e)))},{lodash:57}],158:[function(e,t,n){t.exports=function(t,n){return(t=t||{}).blur=t.blur||2,t.highThresholdRatio=t.highThresholdRatio||.2,t.lowThresholdRatio=t.lowThresholdRatio||.15,n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,t,n,r){return[(e+t+n)/3,(e+t+n)/3,(e+t+n)/3,r]},extraManipulation:function(n){return n=e("ndarray-gaussian-filter")(n,t.blur),e("./EdgeUtils")(n,t.highThresholdRatio,t.lowThresholdRatio,t.inBrowser)},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":168,"./EdgeUtils":157,"ndarray-gaussian-filter":62}],159:[function(e,t,n){t.exports={name:"Detect Edges",description:"this module detects edges using the Canny method, which first Gaussian blurs the image to reduce noise (amount of blur configurable in settings as `options.blur`), then applies a number of steps to highlight edges, resulting in a greyscale image where the brighter the pixel, the stronger the detected edge. Read more at: https://en.wikipedia.org/wiki/Canny_edge_detector",inputs:{blur:{type:"integer",desc:"amount of gaussian blur(Less blur gives more detail, typically 0-5)",default:2},highThresholdRatio:{type:"float",desc:"The high threshold ratio for the image",default:.2},lowThresholdRatio:{type:"float",desc:"The low threshold value for the image",default:.15}}}},{}],160:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),e("fisheyegl"),{options:t,draw:function(e,r){n.onDraw(t.step);var i=this;if(t.inBrowser){if(document.querySelector("#image-sequencer-canvas"))var a=document.querySelector("#image-sequencer-canvas");else(a=document.createElement("canvas")).style.display="none",a.setAttribute("id","image-sequencer-canvas"),document.body.append(a);distorter=FisheyeGl({selector:"#image-sequencer-canvas"}),t.a=parseFloat(t.a)||distorter.lens.a,t.b=parseFloat(t.b)||distorter.lens.b,t.Fx=parseFloat(t.Fx)||distorter.lens.Fx,t.Fy=parseFloat(t.Fy)||distorter.lens.Fy,t.scale=parseFloat(t.scale)||distorter.lens.scale,t.x=parseFloat(t.x)||distorter.fov.x,t.y=parseFloat(t.y)||distorter.fov.y,distorter.lens.a=t.a,distorter.lens.b=t.b,distorter.lens.Fx=t.Fx,distorter.lens.Fy=t.Fy,distorter.lens.scale=t.scale,distorter.fov.x=t.x,distorter.fov.y=t.y,distorter.setImage(e.src,function(){i.output={src:a.toDataURL(),format:e.format},t.step.output=i.output.src,r(),n.onComplete(t.step)})}else this.output=e,r()},output:void 0,UI:n}}},{fisheyegl:30}],161:[function(e,t,n){t.exports={name:"Fisheye GL",description:"Correct fisheye, or barrel distortion, in images (with WebGL -- adapted from fisheye-correction-webgl by @bluemir).",requires:["webgl"],inputs:{a:{type:"float",desc:"a parameter",default:1,min:1,max:4},b:{type:"float",desc:"b parameter",default:1,min:1,max:4},Fx:{type:"float",desc:"Fx parameter",default:0,min:0,max:4},Fy:{type:"float",desc:"Fy parameter",default:0,min:0,max:4},scale:{type:"float",desc:"Image Scaling",default:1.5,min:0,max:20},x:{type:"float",desc:"FOV x parameter",default:1.5,min:0,max:20},y:{type:"float",desc:"FOV y parameter",default:1.5,min:0,max:20},fragmentSrc:{type:"PATH",desc:"Patht to a WebGL fragment shader file",default:"(inbuilt)"},vertexSrc:{type:"PATH",desc:"Patht to a WebGL vertex shader file",default:"(inbuilt)"}}}},{}],162:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,t,n,r){return[255-e,255-t,255-n,r]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":168}],163:[function(e,t,n){t.exports={name:"Invert",description:"Inverts the image.",inputs:{}}},{}],164:[function(e,t,n){t.exports=function(t,n){return(t=t||{}).filter=t.filter||"red",n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,n,r,i){if("red"==t.filter)var a=(r-e)/(1*r+e);"blue"==t.filter&&(a=(e-r)/(1*r+e));var o=255*(a+1)/2;return[o,o,o,i]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":168}],165:[function(e,t,n){t.exports={name:"NDVI",description:"Normalized Difference Vegetation Index, or NDVI, is an image analysis technique used with aerial photography. It's a way to visualize the amounts of infrared and other wavelengths of light reflected from vegetation by comparing ratios of blue and red light absorbed versus green and IR light reflected. NDVI is used to evaluate the health of vegetation in satellite imagery, where it correlates with how much photosynthesis is happening. This is helpful in assessing vegetative health or stress. Read more.

This is designed for use with red-filtered single camera DIY Infragram cameras; change to 'blue' for blue filters",inputs:{filter:{type:"select",desc:"Filter color",default:"red",values:["red","blue"]}}}},{}],166:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,n,r,i){var a=Math.sqrt(e*e*.299+n*n*.587+n*n*.114);return e=a+(e-a)*t.saturation,n=a+(n-a)*t.saturation,r=a+(r-a)*t.saturation,[Math.round(e),Math.round(n),Math.round(r),i]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":168}],167:[function(e,t,n){t.exports={name:"Saturation",description:"Change the saturation of the image by given value, from 0-1, with 1 being 100% saturated.",inputs:{saturation:{type:"integer",desc:"saturation for the new image between 0 and 2, 0 being black and white and 2 being highly saturated",default:0}}}},{}],168:[function(e,t,n){(function(n){t.exports=function(t,r){(r=r||{}).changePixel=r.changePixel||function(e,t,n,r){return[e,t,n,r]},r.extraManipulation=r.extraManipulation||function(e){return e};var i=e("get-pixels"),a=e("save-pixels");i(t.src,function(i,o){if(i)console.log("Bad image path",t);else{if(r.getNeighbourPixel&&(r.getNeighbourPixel.fun=function(e,t){return r.getNeighbourPixel(o,u,l,e,t)}),!r.inBrowser)try{var s=e("pace")(o.shape[0]*o.shape[1])}catch(e){r.inBrowser=!0}for(var u=0;u
To work with a new or different image, drag one into the drop zone.",ID:t.options.sequencerCounter++,imageName:e,inBrowser:t.options.inBrowser,ui:t.options.ui},o={src:n,steps:[{options:{id:r.ID,name:"load-image",description:"This initial step loads and displays the original image without any modifications.",title:"Load Image",step:r},UI:t.events,draw:function(){return UI.onDraw(options.step),1==arguments.length?(this.output=a(arguments[0]),options.step.output=this.output,UI.onComplete(options.step),!0):2==arguments.length&&(this.output=a(arguments[0]),options.step.output=this.output,arguments[1](),UI.onComplete(options.step),!0)}}]};a(n,function(n){var r=function(e){return{src:e,format:e.split(":")[1].split(";")[0].split("/")[1]}}(n);t.images[e]=o;var a=t.images[e].steps[0];return a.output=r,a.options.step.output=a.output.src,a.UI.onSetup(a.options.step),a.UI.onDraw(a.options.step),a.UI.onComplete(a.options.step),i(),!0})}(n,r)}},{urify:127}],170:[function(e,t,n){t.exports=function(e={}){return e.onSetup=e.onSetup||function(e){0==e.ui||(e.inBrowser?console.log('Added Step "'+e.name+'" to "'+e.imageName+'".'):console.log("%s",'Added Step "'+e.name+'" to "'+e.imageName+'".'))},e.onDraw=e.onDraw||function(e){0==e.ui||(e.inBrowser?console.log('Drawing Step "'+e.name+'" on "'+e.imageName+'".'):console.log("%s",'Drawing Step "'+e.name+'" on "'+e.imageName+'".'))},e.onComplete=e.onComplete||function(e){0==e.ui||(e.inBrowser?console.log('Drawn Step "'+e.name+'" on "'+e.imageName+'".'):console.log("%s",'Drawn Step "'+e.name+'" on "'+e.imageName+'".'))},e.onRemove=e.onRemove||function(e){0==e.ui||(e.inBrowser?console.log('Removing Step "'+e.name+'" of "'+e.imageName+'".'):console.log("%s",'Removing Step "'+e.name+'" of "'+e.imageName+'".'))},e}},{}]},{},[135]); \ No newline at end of file +!function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var u="function"==typeof require&&require;if(!s&&u)return u(o,!0);if(a)return a(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return i(n||e)},f,f.exports,e,t,n,r)}return n[o].exports}for(var a="function"==typeof require&&require,o=0;o=0;s--)if(u[s]!=l[s])return!1;for(s=u.length-1;s>=0;s--)if(o=u[s],!c(e[o],t[o]))return!1;return!0}(e,t):e==t}function h(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function p(e,t){return!(!e||!t)&&("[object RegExp]"==Object.prototype.toString.call(t)?t.test(e):e instanceof t||!0===t.call({},e))}function d(e,t,n,i){var a;r.isString(n)&&(i=n,n=null);try{t()}catch(e){a=e}if(i=(n&&n.name?" ("+n.name+").":".")+(i?" "+i:"."),e&&!a&&l(a,n,"Missing expected exception"+i),!e&&p(a,n)&&l(a,n,"Got unwanted exception"+i),e&&a&&n&&!p(a,n)||!e&&a)throw a}o.AssertionError=function(e){var t;this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=(t=this,u(JSON.stringify(t.actual,s),128)+" "+t.operator+" "+u(JSON.stringify(t.expected,s),128)),this.generatedMessage=!0);var n=e.stackStartFunction||l;if(Error.captureStackTrace)Error.captureStackTrace(this,n);else{var r=new Error;if(r.stack){var i=r.stack,a=n.name,o=i.indexOf("\n"+a);if(o>=0){var f=i.indexOf("\n",o+1);i=i.substring(f+1)}this.stack=i}}},r.inherits(o.AssertionError,Error),o.fail=l,o.ok=f,o.equal=function(e,t,n){e!=t&&l(e,t,n,"==",o.equal)},o.notEqual=function(e,t,n){e==t&&l(e,t,n,"!=",o.notEqual)},o.deepEqual=function(e,t,n){c(e,t)||l(e,t,n,"deepEqual",o.deepEqual)},o.notDeepEqual=function(e,t,n){c(e,t)&&l(e,t,n,"notDeepEqual",o.notDeepEqual)},o.strictEqual=function(e,t,n){e!==t&&l(e,t,n,"===",o.strictEqual)},o.notStrictEqual=function(e,t,n){e===t&&l(e,t,n,"!==",o.notStrictEqual)},o.throws=function(e,t,n){d.apply(this,[!0].concat(i.call(arguments)))},o.doesNotThrow=function(e,t){d.apply(this,[!1].concat(i.call(arguments)))},o.ifError=function(e){if(e)throw e};var g=Object.keys||function(e){var t=[];for(var n in e)a.call(e,n)&&t.push(n);return t}},{"util/":131}],2:[function(e,t,n){"use strict";n.byteLength=function(e){return 3*e.length/4-l(e)},n.toByteArray=function(e){var t,n,r,o,s,u,f=e.length;s=l(e),u=new a(3*f/4-s),r=s>0?f-4:f;var c=0;for(t=0,n=0;t>16&255,u[c++]=o>>8&255,u[c++]=255&o;2===s?(o=i[e.charCodeAt(t)]<<2|i[e.charCodeAt(t+1)]>>4,u[c++]=255&o):1===s&&(o=i[e.charCodeAt(t)]<<10|i[e.charCodeAt(t+1)]<<4|i[e.charCodeAt(t+2)]>>2,u[c++]=o>>8&255,u[c++]=255&o);return u},n.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a="",o=[],s=0,u=n-i;su?u:s+16383));1===i?(t=e[n-1],a+=r[t>>2],a+=r[t<<4&63],a+="=="):2===i&&(t=(e[n-2]<<8)+e[n-1],a+=r[t>>10],a+=r[t>>4&63],a+=r[t<<2&63],a+="=");return o.push(a),o.join("")};for(var r=[],i=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=o.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===e[t-2]?2:"="===e[t-1]?1:0}function f(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},{}],3:[function(e,t,n){"use strict";"use restrict";function r(e){var t=32;return(e&=-e)&&t--,65535&e&&(t-=16),16711935&e&&(t-=8),252645135&e&&(t-=4),858993459&e&&(t-=2),1431655765&e&&(t-=1),t}n.INT_BITS=32,n.INT_MAX=2147483647,n.INT_MIN=-1<<31,n.sign=function(e){return(e>0)-(e<0)},n.abs=function(e){var t=e>>31;return(e^t)-t},n.min=function(e,t){return t^(e^t)&-(e65535)<<4,t|=n=((e>>>=t)>255)<<3,t|=n=((e>>>=n)>15)<<2,(t|=n=((e>>>=n)>3)<<1)|(e>>>=n)>>1},n.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},n.popCount=function(e){return 16843009*((e=(858993459&(e-=e>>>1&1431655765))+(e>>>2&858993459))+(e>>>4)&252645135)>>>24},n.countTrailingZeros=r,n.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)+1},n.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)-(e>>>1)},n.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,27030>>>(e&=15)&1};var i=new Array(256);!function(e){for(var t=0;t<256;++t){var n=t,r=t,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;e[t]=r<>>8&255]<<16|i[e>>>16&255]<<8|i[e>>>24&255]},n.interleave2=function(e,t){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))<<1},n.deinterleave2=function(e,t){return(e=65535&((e=16711935&((e=252645135&((e=858993459&((e=e>>>t&1431655765)|e>>>1))|e>>>2))|e>>>4))|e>>>16))<<16>>16},n.interleave3=function(e,t,n){return e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2),(e|=(t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},n.deinterleave3=function(e,t){return(e=1023&((e=4278190335&((e=251719695&((e=3272356035&((e=e>>>t&1227133513)|e>>>2))|e>>>4))|e>>>8))|e>>>16))<<22>>22},n.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>r(e)+1}},{}],4:[function(e,t,n){},{}],5:[function(e,t,n){(function(t,r){var i=e("pako/lib/zlib/messages"),a=e("pako/lib/zlib/zstream"),o=e("pako/lib/zlib/deflate.js"),s=e("pako/lib/zlib/inflate.js"),u=e("pako/lib/zlib/constants");for(var l in u)n[l]=u[l];function f(e){if(en.UNZIP)throw new TypeError("Bad argument");this.mode=e,this.init_done=!1,this.write_in_progress=!1,this.pending_close=!1,this.windowBits=0,this.level=0,this.memLevel=0,this.strategy=0,this.dictionary=null}function c(e,t){for(var n=0;nn.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBitsn.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.leveln.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLeveln.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=n.Z_FILTERED&&e.strategy!=n.Z_HUFFMAN_ONLY&&e.strategy!=n.Z_RLE&&e.strategy!=n.Z_FIXED&&e.strategy!=n.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!r.isBuffer(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._binding=new a.Zlib(t);var o=this;this._hadError=!1,this._binding.onerror=function(e,t){o._binding=null,o._hadError=!0;var r=new Error(e);r.errno=t,r.code=n.codes[t],o.emit("error",r)};var s=n.Z_DEFAULT_COMPRESSION;"number"==typeof e.level&&(s=e.level);var u=n.Z_DEFAULT_STRATEGY;"number"==typeof e.strategy&&(u=e.strategy),this._binding.init(e.windowBits||n.Z_DEFAULT_WINDOWBITS,s,e.memLevel||n.Z_DEFAULT_MEMLEVEL,u,e.dictionary),this._buffer=new r(this._chunkSize),this._offset=0,this._closed=!1,this._level=s,this._strategy=u,this.once("end",this.close)}a.Z_MIN_WINDOWBITS=8,a.Z_MAX_WINDOWBITS=15,a.Z_DEFAULT_WINDOWBITS=15,a.Z_MIN_CHUNK=64,a.Z_MAX_CHUNK=1/0,a.Z_DEFAULT_CHUNK=16384,a.Z_MIN_MEMLEVEL=1,a.Z_MAX_MEMLEVEL=9,a.Z_DEFAULT_MEMLEVEL=8,a.Z_MIN_LEVEL=-1,a.Z_MAX_LEVEL=9,a.Z_DEFAULT_LEVEL=a.Z_DEFAULT_COMPRESSION,Object.keys(a).forEach(function(e){e.match(/^Z/)&&(n[e]=a[e])}),n.codes={Z_OK:a.Z_OK,Z_STREAM_END:a.Z_STREAM_END,Z_NEED_DICT:a.Z_NEED_DICT,Z_ERRNO:a.Z_ERRNO,Z_STREAM_ERROR:a.Z_STREAM_ERROR,Z_DATA_ERROR:a.Z_DATA_ERROR,Z_MEM_ERROR:a.Z_MEM_ERROR,Z_BUF_ERROR:a.Z_BUF_ERROR,Z_VERSION_ERROR:a.Z_VERSION_ERROR},Object.keys(n.codes).forEach(function(e){n.codes[n.codes[e]]=e}),n.Deflate=f,n.Inflate=c,n.Gzip=h,n.Gunzip=p,n.DeflateRaw=d,n.InflateRaw=g,n.Unzip=v,n.createDeflate=function(e){return new f(e)},n.createInflate=function(e){return new c(e)},n.createDeflateRaw=function(e){return new d(e)},n.createInflateRaw=function(e){return new g(e)},n.createGzip=function(e){return new h(e)},n.createGunzip=function(e){return new p(e)},n.createUnzip=function(e){return new v(e)},n.deflate=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new f(t),e,n)},n.deflateSync=function(e,t){return l(new f(t),e)},n.gzip=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new h(t),e,n)},n.gzipSync=function(e,t){return l(new h(t),e)},n.deflateRaw=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new d(t),e,n)},n.deflateRawSync=function(e,t){return l(new d(t),e)},n.unzip=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new v(t),e,n)},n.unzipSync=function(e,t){return l(new v(t),e)},n.inflate=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new c(t),e,n)},n.inflateSync=function(e,t){return l(new c(t),e)},n.gunzip=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new p(t),e,n)},n.gunzipSync=function(e,t){return l(new p(t),e)},n.inflateRaw=function(e,t,n){return"function"==typeof t&&(n=t,t={}),u(new g(t),e,n)},n.inflateRawSync=function(e,t){return l(new g(t),e)},o.inherits(m,i),m.prototype.params=function(e,r,i){if(en.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+e);if(r!=n.Z_FILTERED&&r!=n.Z_HUFFMAN_ONLY&&r!=n.Z_RLE&&r!=n.Z_FIXED&&r!=n.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+r);if(this._level!==e||this._strategy!==r){var o=this;this.flush(a.Z_SYNC_FLUSH,function(){o._binding.params(e,r),o._hadError||(o._level=e,o._strategy=r,i&&i())})}else t.nextTick(i)},m.prototype.reset=function(){return this._binding.reset()},m.prototype._flush=function(e){this._transform(new r(0),"",e)},m.prototype.flush=function(e,n){var i=this._writableState;if(("function"==typeof e||void 0===e&&!n)&&(n=e,e=a.Z_FULL_FLUSH),i.ended)n&&t.nextTick(n);else if(i.ending)n&&this.once("end",n);else if(i.needDrain){var o=this;this.once("drain",function(){o.flush(n)})}else this._flushFlag=e,this.write(new r(0),"",n)},m.prototype.close=function(e){if(e&&t.nextTick(e),!this._closed){this._closed=!0,this._binding.close();var n=this;t.nextTick(function(){n.emit("close")})}},m.prototype._transform=function(e,t,n){var i,o=this._writableState,s=(o.ending||o.ended)&&(!e||o.length===e.length);if(null===!e&&!r.isBuffer(e))return n(new Error("invalid input"));s?i=a.Z_FINISH:(i=this._flushFlag,e.length>=o.length&&(this._flushFlag=this._opts.flush||a.Z_NO_FLUSH));this._processChunk(e,i,n)},m.prototype._processChunk=function(e,t,n){var i=e&&e.length,a=this._chunkSize-this._offset,o=0,u=this,l="function"==typeof n;if(!l){var f,c=[],h=0;this.on("error",function(e){f=e});do{var p=this._binding.writeSync(t,e,o,i,this._buffer,this._offset,a)}while(!this._hadError&&v(p[0],p[1]));if(this._hadError)throw f;var d=r.concat(c,h);return this.close(),d}var g=this._binding.write(t,e,o,i,this._buffer,this._offset,a);function v(f,p){if(!u._hadError){var d=a-p;if(s(d>=0,"have should not go down"),d>0){var g=u._buffer.slice(u._offset,u._offset+d);u._offset+=d,l?u.push(g):(c.push(g),h+=g.length)}if((0===p||u._offset>=u._chunkSize)&&(a=u._chunkSize,u._offset=0,u._buffer=new r(u._chunkSize)),0===p){if(o+=i-f,i=f,!l)return!0;var m=u._binding.write(t,e,o,i,u._buffer,u._offset,u._chunkSize);return m.callback=v,void(m.buffer=e)}if(!l)return!1;n()}}g.buffer=e,g.callback=v},o.inherits(f,m),o.inherits(c,m),o.inherits(h,m),o.inherits(p,m),o.inherits(d,m),o.inherits(g,m),o.inherits(v,m)}).call(this,e("_process"),e("buffer").Buffer)},{"./binding":5,_process:104,_stream_transform:115,assert:1,buffer:8,util:131}],7:[function(e,t,n){arguments[4][4][0].apply(n,arguments)},{dup:4}],8:[function(e,t,n){(function(t){"use strict";var r=e("base64-js"),i=e("ieee754"),a=e("isarray");function o(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function d(e,t){if(u.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return U(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return F(e).length;default:if(r)return U(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:m(e,t,n,r,i);if("number"==typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):m(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function m(e,t,n,r,i){var a,o=1,s=e.length,u=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;o=2,s/=2,u/=2,n/=2}function l(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var f=-1;for(a=n;as&&(n=s-u),a=n;a>=0;a--){for(var c=!0,h=0;hi&&(r=i):r=i;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var o=0;o>8,i=n%256,a.push(i),a.push(r);return a}(t,e.length-n),e,n,r)}function E(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function A(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:l>223?3:l>191?2:1;if(i+c<=n)switch(c){case 1:l<128&&(f=l);break;case 2:128==(192&(a=e[i+1]))&&(u=(31&l)<<6|63&a)>127&&(f=u);break;case 3:a=e[i+1],o=e[i+2],128==(192&a)&&128==(192&o)&&(u=(15&l)<<12|(63&a)<<6|63&o)>2047&&(u<55296||u>57343)&&(f=u);break;case 4:a=e[i+1],o=e[i+2],s=e[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(u=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&u<1114112&&(f=u)}null===f?(f=65533,c=1):f>65535&&(f-=65536,r.push(f>>>10&1023|55296),f=56320|1023&f),r.push(f),i+=c}return function(e){var t=e.length;if(t<=S)return String.fromCharCode.apply(String,e);var n="",r=0;for(;rthis.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return R(this,t,n);case"utf8":case"utf-8":return A(this,t,n);case"ascii":return T(this,t,n);case"latin1":case"binary":return M(this,t,n);case"base64":return E(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}.apply(this,arguments)},u.prototype.equals=function(e){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===u.compare(this,e)},u.prototype.inspect=function(){var e="",t=n.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(e+=" ... ")),""},u.prototype.compare=function(e,t,n,r,i){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;for(var a=i-r,o=n-t,s=Math.min(a,o),l=this.slice(r,i),f=e.slice(t,n),c=0;ci)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return _(this,e,t,n);case"utf8":case"utf-8":return w(this,e,t,n);case"ascii":return b(this,e,t,n);case"latin1":case"binary":return y(this,e,t,n);case"base64":return x(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var S=4096;function T(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",a=t;an)throw new RangeError("Trying to access beyond buffer length")}function C(e,t,n,r,i,a){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function L(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function B(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function D(e,t,n,r,i,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function z(e,t,n,r,a){return a||D(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function P(e,t,n,r,a){return a||D(e,0,n,8),i.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if(e=~~e,t=void 0===t?r:~~t,e<0?(e+=r)<0&&(e=0):e>r&&(e=r),t<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(i*=256);)r+=this[e+--t]*i;return r},u.prototype.readUInt8=function(e,t){return t||j(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||j(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||j(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||j(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||j(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||j(e,t,this.length);for(var r=this[e],i=1,a=0;++a=(i*=128)&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||j(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},u.prototype.readInt8=function(e,t){return t||j(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||j(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||j(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||j(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||j(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||j(e,4,this.length),i.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||j(e,4,this.length),i.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||j(e,8,this.length),i.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||j(e,8,this.length),i.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||C(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+i]=e/a&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):L(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):L(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):B(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);C(this,e,t,n,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);C(this,e,t,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):L(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):L(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):B(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return z(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return z(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return P(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return P(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(a<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function F(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(O,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function q(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"base64-js":2,ieee754:51,isarray:9}],9:[function(e,t,n){var r={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},{}],10:[function(e,t,n){(function(t){"use strict";var r=e("buffer"),i=r.Buffer,a=r.SlowBuffer,o=r.kMaxLength||2147483647;n.alloc=function(e,t,n){if("function"==typeof i.alloc)return i.alloc(e,t,n);if("number"==typeof n)throw new TypeError("encoding must not be number");if("number"!=typeof e)throw new TypeError("size must be a number");if(e>o)throw new RangeError("size is too large");var r=n,a=t;void 0===a&&(r=void 0,a=0);var s=new i(e);if("string"==typeof a)for(var u=new i(a,r),l=u.length,f=-1;++fo)throw new RangeError("size is too large");return new i(e)},n.from=function(e,n,r){if("function"==typeof i.from&&(!t.Uint8Array||Uint8Array.from!==i.from))return i.from(e,n,r);if("number"==typeof e)throw new TypeError('"value" argument must not be a number');if("string"==typeof e)return new i(e,n);if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer){var a=n;if(1===arguments.length)return new i(e);void 0===a&&(a=0);var o=r;if(void 0===o&&(o=e.byteLength-a),a>=e.byteLength)throw new RangeError("'offset' is out of bounds");if(o>e.byteLength-a)throw new RangeError("'length' is out of bounds");return new i(e.slice(a,a+o))}if(i.isBuffer(e)){var s=new i(e.length);return e.copy(s,0,0,e.length),s}if(e){if(Array.isArray(e)||"undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return new i(e);if("Buffer"===e.type&&Array.isArray(e.data))return new i(e.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")},n.allocUnsafeSlow=function(e){if("function"==typeof i.allocUnsafeSlow)return i.allocUnsafeSlow(e);if("number"!=typeof e)throw new TypeError("size must be a number");if(e>=o)throw new RangeError("size is too large");return new a(e)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{buffer:8}],11:[function(e,t,n){(function(n){var r=e("tty"),i=e("./lib/encode"),a=e("stream").Stream,o=t.exports=function(){var e=null;function t(t){if(e)throw new Error("multiple inputs specified");e=t}var i=null;function a(e){if(i)throw new Error("multiple outputs specified");i=e}for(var o=0;o0&&this.down(t),e>0?this.right(e):e<0&&this.left(-e),this},s.prototype.up=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"A")),this},s.prototype.down=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"B")),this},s.prototype.right=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"C")),this},s.prototype.left=function(e){return void 0===e&&(e=1),this.write(i("["+Math.floor(e)+"D")),this},s.prototype.column=function(e){return this.write(i("["+Math.floor(e)+"G")),this},s.prototype.push=function(e){return this.write(i(e?"7":"[s")),this},s.prototype.pop=function(e){return this.write(i(e?"8":"[u")),this},s.prototype.erase=function(e){return"end"===e||"$"===e?this.write(i("[K")):"start"===e||"^"===e?this.write(i("[1K")):"line"===e?this.write(i("[2K")):"down"===e?this.write(i("[J")):"up"===e?this.write(i("[1J")):"screen"===e?this.write(i("[1J")):this.emit("error",new Error("Unknown erase type: "+e)),this},s.prototype.display=function(e){var t={reset:0,bright:1,dim:2,underscore:4,blink:5,reverse:7,hidden:8}[e];return void 0===t&&this.emit("error",new Error("Unknown attribute: "+e)),this.write(i("["+t+"m")),this},s.prototype.foreground=function(e){if("number"==typeof e)(e<0||e>=256)&&this.emit("error",new Error("Color out of range: "+e)),this.write(i("[38;5;"+e+"m"));else{var t={black:30,red:31,green:32,yellow:33,blue:34,magenta:35,cyan:36,white:37}[e.toLowerCase()];t||this.emit("error",new Error("Unknown color: "+e)),this.write(i("["+t+"m"))}return this},s.prototype.background=function(e){if("number"==typeof e)(e<0||e>=256)&&this.emit("error",new Error("Color out of range: "+e)),this.write(i("[48;5;"+e+"m"));else{var t={black:40,red:41,green:42,yellow:43,blue:44,magenta:45,cyan:46,white:47}[e.toLowerCase()];t||this.emit("error",new Error("Unknown color: "+e)),this.write(i("["+t+"m"))}return this},s.prototype.cursor=function(e){return this.write(i(e?"[?25h":"[?25l")),this};var u=o.extractCodes=function(e){for(var t=[],n=-1,r=0;r=0&&t.push(e.slice(n,r)),n=r):n>=0&&r===e.length-1&&t.push(e.slice(n));return t}}).call(this,e("_process"))},{"./lib/encode":12,_process:104,stream:121,tty:124}],12:[function(e,t,n){(function(e){var n=(t.exports=function(t){return new e([27].concat(function e(t){return"string"==typeof t?t.split("").map(n):Array.isArray(t)?t.reduce(function(t,n){return t.concat(e(n))},[]):void 0}(t)))}).ord=function(e){return e.charCodeAt(0)}}).call(this,e("buffer").Buffer)},{buffer:8}],13:[function(e,t,n){(function(n){"use strict";var r=e("readable-stream").Readable,i=e("util");function a(e,t){if(!(this instanceof a))return new a(e,t);r.call(this,t),null!==e&&void 0!==e||(e=String(e)),this._obj=e}t.exports=a,i.inherits(a,r),a.prototype._read=function(e){var t=this._obj;"string"==typeof t?this.push(new n(t)):n.isBuffer(t)?this.push(t):this.push(new n(JSON.stringify(t))),this.push(null)}}).call(this,e("buffer").Buffer)},{buffer:8,"readable-stream":20,util:131}],14:[function(e,t,n){t.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},{}],15:[function(e,t,n){(function(n){t.exports=s;var r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t},i=e("core-util-is");i.inherits=e("inherits");var a=e("./_stream_readable"),o=e("./_stream_writable");function s(e){if(!(this instanceof s))return new s(e);a.call(this,e),o.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",u)}function u(){this.allowHalfOpen||this._writableState.ended||n.nextTick(this.end.bind(this))}i.inherits(s,a),function(e,t){for(var n=0,r=e.length;n0?d(e):b(e)}(e,t);else if(t.objectMode||r&&r.length>0)if(t.ended&&!o){var u=new Error("stream.push() after EOF");e.emit("error",u)}else if(t.endEmitted&&o){u=new Error("stream.unshift() after end event");e.emit("error",u)}else!t.decoder||o||a||(r=t.decoder.write(r)),t.length+=t.objectMode?1:r.length,o?t.buffer.unshift(r):(t.reading=!1,t.buffer.push(r)),t.needReadable&&d(e),function(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(function(){!function(e,t){var n=t.length;for(;!t.reading&&!t.flowing&&!t.ended&&t.lengtht.highWaterMark&&(t.highWaterMark=function(e){if(e>=h)e=h;else{e--;for(var t=1;t<32;t<<=1)e|=e>>t;e++}return e}(e)),e>t.length?t.ended?t.length:(t.needReadable=!0,0):e)}function d(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,t.sync?n.nextTick(function(){g(e)}):g(e))}function g(e){e.emit("readable")}function v(e){var t,n=e._readableState;function r(e,r,i){!1===e.write(t)&&n.awaitDrain++}for(n.awaitDrain=0;n.pipesCount&&null!==(t=e.read());)if(1===n.pipesCount?r(n.pipes):y(n.pipes,r),e.emit("data",t),n.awaitDrain>0)return;if(0===n.pipesCount)return n.flowing=!1,void(a.listenerCount(e,"data")>0&&_(e));n.ranOut=!0}function m(){this._readableState.ranOut&&(this._readableState.ranOut=!1,v(this))}function _(e,t){if(e._readableState.flowing)throw new Error("Cannot switch to old mode now.");var r=t||!1,i=!1;e.readable=!0,e.pipe=s.prototype.pipe,e.on=e.addListener=s.prototype.on,e.on("readable",function(){var t;for(i=!0;!r&&null!==(t=e.read());)e.emit("data",t);null===t&&(i=!1,e._readableState.needReadable=!0)}),e.pause=function(){r=!0,this.emit("pause")},e.resume=function(){r=!1,i?n.nextTick(function(){e.emit("readable")}):this.read(0),this.emit("resume")},e.emit("readable")}function w(e,t){var n,r=t.buffer,a=t.length,o=!!t.decoder,s=!!t.objectMode;if(0===r.length)return null;if(0===a)n=null;else if(s)n=r.shift();else if(!e||e>=a)n=o?r.join(""):i.concat(r,a),r.length=0;else{if(e0)throw new Error("endReadable called on non-empty stream");!t.endEmitted&&t.calledRead&&(t.ended=!0,n.nextTick(function(){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}))}function y(e,t){for(var n=0,r=e.length;n0)&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return d(this),null;if(0===(e=p(e,t))&&t.ended)return n=null,t.length>0&&t.decoder&&(n=w(e,t),t.length-=n.length),0===t.length&&b(this),n;var i=t.needReadable;return t.length-e<=t.highWaterMark&&(i=!0),(t.ended||t.reading)&&(i=!1),i&&(t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1),i&&!t.reading&&(e=p(r,t)),null===(n=e>0?w(e,t):null)&&(t.needReadable=!0,e=0),t.length-=e,0!==t.length||t.ended||(t.needReadable=!0),t.ended&&!t.endEmitted&&0===t.length&&b(this),n},f.prototype._read=function(e){this.emit("error",new Error("not implemented"))},f.prototype.pipe=function(e,t){var i=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1;var s=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?l:c;function u(e){e===i&&c()}function l(){e.end()}o.endEmitted?n.nextTick(s):i.once("end",s),e.on("unpipe",u);var f=function(e){return function(){var t=e._readableState;t.awaitDrain--,0===t.awaitDrain&&v(e)}}(i);function c(){e.removeListener("close",p),e.removeListener("finish",d),e.removeListener("drain",f),e.removeListener("error",h),e.removeListener("unpipe",u),i.removeListener("end",l),i.removeListener("end",c),e._writableState&&!e._writableState.needDrain||f()}function h(t){g(),e.removeListener("error",h),0===a.listenerCount(e,"error")&&e.emit("error",t)}function p(){e.removeListener("finish",d),g()}function d(){e.removeListener("close",p),g()}function g(){i.unpipe(e)}return e.on("drain",f),e._events&&e._events.error?r(e._events.error)?e._events.error.unshift(h):e._events.error=[h,e._events.error]:e.on("error",h),e.once("close",p),e.once("finish",d),e.emit("pipe",i),o.flowing||(this.on("readable",m),o.flowing=!0,n.nextTick(function(){v(i)})),e},f.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,this.removeListener("readable",m),t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,this.removeListener("readable",m),t.flowing=!1;for(var i=0;i=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived=55296&&i<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var r=e.length;this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,r),r-=this.charReceived);var i;r=(t+=e.toString(this.encoding,0,r)).length-1;if((i=t.charCodeAt(r))>=55296&&i<=56319){var a=this.surrogateSize;return this.charLength+=a,this.charReceived+=a,this.charBuffer.copy(this.charBuffer,a,0,a),e.copy(this.charBuffer,0,0,a),t.substring(0,r)}return t},a.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var n=e[e.length-t];if(1==t&&n>>5==6){this.charLength=2;break}if(t<=2&&n>>4==14){this.charLength=3;break}if(t<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=t},a.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.charReceived,r=this.charBuffer,i=this.encoding;t+=r.slice(0,n).toString(i)}return t}},{buffer:8}],22:[function(e,t,n){(function(e){function t(e){return Object.prototype.toString.call(e)}n.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===t(e)},n.isBoolean=function(e){return"boolean"==typeof e},n.isNull=function(e){return null===e},n.isNullOrUndefined=function(e){return null==e},n.isNumber=function(e){return"number"==typeof e},n.isString=function(e){return"string"==typeof e},n.isSymbol=function(e){return"symbol"==typeof e},n.isUndefined=function(e){return void 0===e},n.isRegExp=function(e){return"[object RegExp]"===t(e)},n.isObject=function(e){return"object"==typeof e&&null!==e},n.isDate=function(e){return"[object Date]"===t(e)},n.isError=function(e){return"[object Error]"===t(e)||e instanceof Error},n.isFunction=function(e){return"function"==typeof e},n.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},n.isBuffer=e.isBuffer}).call(this,{isBuffer:e("../../is-buffer/index.js")})},{"../../is-buffer/index.js":54}],23:[function(e,t,n){"use strict";var r=e("./lib/thunk.js");t.exports=function(e){var t=new function(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1};t.pre=e.pre,t.body=e.body,t.post=e.post;var n=e.args.slice(0);t.argTypes=n;for(var i=0;i0)throw new Error("cwise: pre() block may not reference array args");if(i0)throw new Error("cwise: post() block may not reference array args")}else if("scalar"===a)t.scalarArgs.push(i),t.shimArgs.push("scalar"+i);else if("index"===a){if(t.indexArgs.push(i),i0)throw new Error("cwise: pre() block may not reference array index");if(i0)throw new Error("cwise: post() block may not reference array index")}else if("shape"===a){if(t.shapeArgs.push(i),in.length)throw new Error("cwise: Too many arguments in pre() block");if(t.body.args.length>n.length)throw new Error("cwise: Too many arguments in body() block");if(t.post.args.length>n.length)throw new Error("cwise: Too many arguments in post() block");return t.debug=!!e.printCode||!!e.debug,t.funcName=e.funcName||"cwise",t.blockSize=e.blockSize||64,r(t)}},{"./lib/thunk.js":25}],24:[function(e,t,n){"use strict";var r=e("uniq");function i(e,t,n){var r,i,a=e.length,o=t.arrayArgs.length,s=t.indexArgs.length>0,u=[],l=[],f=0,c=0;for(r=0;r=0;--r)f=e[r],u.push(["for(i",r,"=0;i",r,"0&&u.push(["index[",c,"]-=s",c].join("")),u.push(["++index[",f,"]"].join(""))),u.push("}")}return u.join("\n")}function a(e,t,n){for(var r=e.body,i=[],a=[],o=0;o0&&_.push("shape=SS.slice(0)"),e.indexArgs.length>0){var w=new Array(n);for(u=0;u3&&m.push(a(e.pre,e,s));var k=a(e.body,e,s),E=function(e){for(var t=0,n=e[0].length;t0,l=[],f=0;f0;){"].join("")),l.push(["if(j",f,"<",s,"){"].join("")),l.push(["s",t[f],"=j",f].join("")),l.push(["j",f,"=0"].join("")),l.push(["}else{s",t[f],"=",s].join("")),l.push(["j",f,"-=",s,"}"].join("")),u&&l.push(["index[",t[f],"]=j",f].join(""));for(f=0;f3&&m.push(a(e.post,e,s)),e.debug&&console.log("-----Generated cwise routine for ",t,":\n"+m.join("\n")+"\n----------");var A=[e.funcName||"unnamed","_cwise_loop_",o[0].join("s"),"m",E,function(e){for(var t=new Array(e.length),n=!0,r=0;r0&&(n=n&&t[r]===t[r-1])}return n?t[0]:t.join("")}(s)].join("");return new Function(["function ",A,"(",v.join(","),"){",m.join("\n"),"} return ",A].join(""))()}},{uniq:126}],25:[function(e,t,n){"use strict";var r=e("./compile.js");t.exports=function(e){var t=["'use strict'","var CACHED={}"],n=[],i=e.funcName+"_cwise_thunk";t.push(["return function ",i,"(",e.shimArgs.join(","),"){"].join(""));for(var a=[],o=[],s=[["array",e.arrayArgs[0],".shape.slice(",Math.max(0,e.arrayBlockIndices[0]),e.arrayBlockIndices[0]<0?","+e.arrayBlockIndices[0]+")":")"].join("")],u=[],l=[],f=0;f0&&(u.push("array"+e.arrayArgs[0]+".shape.length===array"+c+".shape.length+"+(Math.abs(e.arrayBlockIndices[0])-Math.abs(e.arrayBlockIndices[f]))),l.push("array"+e.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,e.arrayBlockIndices[0])+"]===array"+c+".shape[shapeIndex+"+Math.max(0,e.arrayBlockIndices[f])+"]"))}for(e.arrayArgs.length>1&&(t.push("if (!("+u.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),t.push("for(var shapeIndex=array"+e.arrayArgs[0]+".shape.length-"+Math.abs(e.arrayBlockIndices[0])+"; shapeIndex--\x3e0;) {"),t.push("if (!("+l.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),t.push("}")),f=0;f0)return function(e,t){var n,r;for(n=new Array(e),r=0;r0&&this._events[e].length>n&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){if(!i(t))throw TypeError("listener must be a function");var n=!1;function r(){this.removeListener(e,r),n||(n=!0,t.apply(this,arguments))}return r.listener=t,this.on(e,r),this},r.prototype.removeListener=function(e,t){var n,r,o,s;if(!i(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(o=(n=this._events[e]).length,r=-1,n===t||i(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(a(n)){for(s=o;s-- >0;)if(n[s]===t||n[s].listener&&n[s].listener===t){r=s;break}if(r<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(r,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(i(n=this._events[e]))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?i(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(i(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},{}],30:[function(e,t,n){var r=function(t){(t=t||{}).width=t.width||800,t.height=t.height||600;var n=t.model||{vertex:[-1,-1,0,1,-1,0,1,1,0,-1,1,0],indices:[0,1,2,0,2,3,2,1,0,3,2,0],textureCoords:[0,0,1,0,1,1,0,1]},r=t.lens||{a:1,b:1,Fx:0,Fy:0,scale:1.5},i=t.fov||{x:1,y:1},a=t.image||"images/barrel-distortion.png",o=function(e){var t=document.querySelector(e);if(null==t)throw new Error("there is no canvas on this page");for(var n=["webgl","experimental-webgl","webkit-3d","moz-webgl"],r=0;r 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],33:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec4 uLens;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 TextureCoord2GLCoord(vec2 textureCoord) {\n\treturn (textureCoord - vec2(0.5, 0.5)) * 2.0;\n}\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord / 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tfloat correctionRadius = 0.5;\n\tfloat distance = sqrt(vPosition.x * vPosition.x + vPosition.y * vPosition.y) / correctionRadius;\n\tfloat theta = 1.0;\n\tif(distance != 0.0){\n\t\ttheta = atan(distance);\n\t}\n\tvec2 vMapping = theta * vPosition.xy;\n\tvMapping = GLCoord2TextureCoord(vMapping);\n\t\t\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],34:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec3 uLensS;\nuniform vec2 uLensF;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord * vec2(1.0, -1.0)/ 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tfloat scale = uLensS.z;\n\tvec3 vPos = vPosition;\n\tfloat Fx = uLensF.x;\n\tfloat Fy = uLensF.y;\n\tvec2 vMapping = vPos.xy;\n\tvMapping.x = vMapping.x + ((pow(vPos.y, 2.0)/scale)*vPos.x/scale)*-Fx;\n\tvMapping.y = vMapping.y + ((pow(vPos.x, 2.0)/scale)*vPos.y/scale)*-Fy;\n\tvMapping = vMapping * uLensS.xy;\n\tvMapping = GLCoord2TextureCoord(vMapping/scale);\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t}\n\tgl_FragColor = texture;\n}\n"},{}],35:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec4 uLens;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 TextureCoord2GLCoord(vec2 textureCoord) {\n\treturn (textureCoord - vec2(0.5, 0.5)) * 2.0;\n}\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord / 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tvec2 vMapping = vec2(vTextureCoord.x, 1.0 - vTextureCoord.y);\n\tvMapping = TextureCoord2GLCoord(vMapping);\n\t//TODO insert Code\n\tfloat F = uLens.x/ uLens.w;\n\tfloat seta = length(vMapping) / F;\n\tvMapping = sin(seta) * F / length(vMapping) * vMapping;\n\tvMapping *= uLens.w * 1.414;\n\tvMapping = GLCoord2TextureCoord(vMapping);\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],36:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec4 uLens;\nuniform vec2 uFov;\nuniform sampler2D uSampler;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvec2 TextureCoord2GLCoord(vec2 textureCoord) {\n\treturn (textureCoord - vec2(0.5, 0.5)) * 2.0;\n}\nvec2 GLCoord2TextureCoord(vec2 glCoord) {\n\treturn glCoord / 2.0 + vec2(0.5, 0.5);\n}\nvoid main(void){\n\tvec2 vMapping = vec2(vTextureCoord.x, 1.0 - vTextureCoord.y);\n\tvMapping = TextureCoord2GLCoord(vMapping);\n\t//TOD insert Code\n\tfloat F = uLens.x/ uLens.w;\n\tfloat seta = length(vMapping) / F;\n\tvMapping = sin(seta) * F / length(vMapping) * vMapping;\n\tvMapping *= uLens.w * 1.414;\n\tvMapping = GLCoord2TextureCoord(vMapping);\n\tvec4 texture = texture2D(uSampler, vMapping);\n\tif(vMapping.x > 0.99 || vMapping.x < 0.01 || vMapping.y > 0.99 || vMapping.y < 0.01){\n\t\ttexture = vec4(0.0, 0.0, 0.0, 1.0);\n\t} \n\tgl_FragColor = texture;\n}\n"},{}],37:[function(e,t,n){t.exports="#ifdef GL_ES\nprecision highp float;\n#endif\nattribute vec3 aVertexPosition;\nattribute vec2 aTextureCoord;\nvarying vec3 vPosition;\nvarying vec2 vTextureCoord;\nvoid main(void){\n\tvPosition = aVertexPosition;\n\tvTextureCoord = aTextureCoord;\n\tgl_Position = vec4(vPosition,1.0);\n}\n"},{}],38:[function(e,t,n){(function(n,r){"use strict";var i=e("path"),a=e("ndarray"),o=e("omggif").GifReader,s=(e("ndarray-pack"),e("through"),e("data-uri-to-buffer"));function u(e,t){var n;try{n=new o(e)}catch(e){return void t(e)}if(n.numFrames()>0){var r=[n.numFrames(),n.height,n.width,4],i=new Uint8Array(r[0]*r[1]*r[2]*r[3]),s=a(i,r);try{for(var u=0;u=0&&(this.dispose=e)},u.prototype.setRepeat=function(e){this.repeat=e},u.prototype.setTransparent=function(e){this.transparent=e},u.prototype.analyzeImage=function(e){this.setImagePixels(this.removeAlphaChannel(e)),this.analyzePixels()},u.prototype.writeImageInfo=function(){this.firstFrame&&(this.writeLSD(),this.writePalette(),this.repeat>=0&&this.writeNetscapeExt()),this.writeGraphicCtrlExt(),this.writeImageDesc(),this.firstFrame||this.writePalette(),this.firstFrame=!1},u.prototype.outputImage=function(){this.writePixels()},u.prototype.addFrame=function(e){this.emit("frame#start"),this.analyzeImage(e),this.writeImageInfo(),this.outputImage(),this.emit("frame#stop")},u.prototype.finish=function(){this.emit("finish#start"),this.writeByte(59),this.emit("finish#stop")},u.prototype.setQuality=function(e){e<1&&(e=1),this.sample=e},u.prototype.writeHeader=function(){this.emit("writeHeader#start"),this.writeUTFBytes("GIF89a"),this.emit("writeHeader#stop")},u.prototype.analyzePixels=function(){var e=this.pixels.length/3;this.indexedPixels=new Uint8Array(e);var t=new a(this.pixels,this.sample);t.buildColormap(),this.colorTab=t.getColormap();for(var n=0,r=0;r>16,n=(65280&e)>>8,r=255&e,i=0,a=16777216,o=this.colorTab.length,s=0;s=0&&(t=7&dispose),t<<=2,this.writeByte(0|t|e),this.writeShort(this.delay),this.writeByte(this.transIndex),this.writeByte(0)},u.prototype.writeImageDesc=function(){this.writeByte(44),this.writeShort(0),this.writeShort(0),this.writeShort(this.width),this.writeShort(this.height),this.firstFrame?this.writeByte(0):this.writeByte(128|this.palSize)},u.prototype.writeLSD=function(){this.writeShort(this.width),this.writeShort(this.height),this.writeByte(240|this.palSize),this.writeByte(0),this.writeByte(0)},u.prototype.writeNetscapeExt=function(){this.writeByte(33),this.writeByte(255),this.writeByte(11),this.writeUTFBytes("NETSCAPE2.0"),this.writeByte(3),this.writeByte(1),this.writeShort(this.repeat),this.writeByte(0)},u.prototype.writePalette=function(){this.writeBytes(this.colorTab);for(var e=768-this.colorTab.length,t=0;t>8&255)},u.prototype.writePixels=function(){new o(this.width,this.height,this.indexedPixels,this.colorDepth).encode(this)},u.prototype.stream=function(){return this},u.ByteCapacitor=s,t.exports=u}).call(this,e("buffer").Buffer)},{"./LZWEncoder.js":41,"./TypedNeuQuant.js":42,assert:1,buffer:8,events:29,"readable-stream":49,util:131}],41:[function(e,t,n){var r=-1,i=12,a=5003,o=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535];t.exports=function(e,t,n,s){var u,l,f,c,h,p,d,g,v,m=Math.max(2,s),_=new Uint8Array(256),w=new Int32Array(a),b=new Int32Array(a),y=0,x=0,k=!1;function E(e,t){_[l++]=e,l>=254&&T(t)}function A(e){S(a),x=g+2,k=!0,I(g,e)}function S(e){for(var t=0;t0&&(e.writeByte(l),e.writeBytes(_,0,l),l=0)}function M(e){return(1<0?u|=e<=8;)E(255&u,t),u>>=8,y-=8;if((x>f||k)&&(k?(f=M(p=d),k=!1):f=++p==i?1<0;)E(255&u,t),u>>=8,y-=8;T(t)}}this.encode=function(n){n.writeByte(m),c=e*t,h=0,function(e,t){var n,o,s,u,c,h,m;for(k=!1,f=M(p=d=e),v=1+(g=1<=0){c=h-s,0===s&&(c=1);do{if((s-=c)<0&&(s+=h),w[s]===n){u=b[s];continue e}}while(w[s]>=0)}I(u,t),u=o,x<1<>f,h=u<>3)*(1<l;)u=T[p++],cl&&((s=n[h--])[0]-=u*(s[0]-r)/_,s[1]-=u*(s[1]-a)/_,s[2]-=u*(s[2]-o)/_)}function I(e,t,r){var a,u,p,d,g,v=~(1<<31),m=v,_=-1,w=_;for(a=0;a>s-o))>f,S[a]-=g,A[a]+=g<>3),e=0;e>p;for(S<=1&&(S=0),n=0;n=f&&(j-=f),n++,0===_&&(_=1),n%_==0)for(E-=E/c,(S=(A-=A/g)>>p)<=1&&(S=0),l=0;l>=o,n[e][1]>>=o,n[e][2]>>=o,n[e][3]=e}(),function(){var e,t,r,o,s,u,l=0,f=0;for(e=0;e>1,t=l+1;t>1,t=l+1;t<256;t++)E[t]=a}()},this.getColormap=function(){for(var e=[],t=[],r=0;r=0;)f=u?f=i:(f++,s<0&&(s=-s),(a=o[0]-e)<0&&(a=-a),(s+=a)=0&&((s=t-(o=n[c])[1])>=u?c=-1:(c--,s<0&&(s=-s),(a=o[0]-e)<0&&(a=-a),(s+=a)0)if(t.ended&&!a){var s=new Error("stream.push() after EOF");e.emit("error",s)}else if(t.endEmitted&&a){s=new Error("stream.unshift() after end event");e.emit("error",s)}else!t.decoder||a||i||(r=t.decoder.write(r)),a||(t.reading=!1),t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,a?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&g(e)),function(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(function(){!function(e,t){var n=t.length;for(;!t.reading&&!t.flowing&&!t.ended&&t.lengtht.highWaterMark&&(t.highWaterMark=function(e){if(e>=p)e=p;else{e--;for(var t=1;t<32;t<<=1)e|=e>>t;e++}return e}(e)),e>t.length?t.ended?t.length:(t.needReadable=!0,0):e)}function g(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(function(){v(e)}):v(e))}function v(e){l("emit readable"),e.emit("readable"),m(e)}function m(e){var t=e._readableState;if(l("flow",t.flowing),t.flowing)do{var n=e.read()}while(null!==n&&t.flowing)}function _(e,t){var n,r=t.buffer,a=t.length,o=!!t.decoder,s=!!t.objectMode;if(0===r.length)return null;if(0===a)n=null;else if(s)n=r.shift();else if(!e||e>=a)n=o?r.join(""):i.concat(r,a),r.length=0;else{if(e0)throw new Error("endReadable called on non-empty stream");t.endEmitted||(t.ended=!0,n.nextTick(function(){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}))}c.prototype.read=function(e){l("read",e);var t=this._readableState,n=e;if((!u.isNumber(e)||e>0)&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?w(this):g(this),null;if(0===(e=d(e,t))&&t.ended)return 0===t.length&&w(this),null;var r,i=t.needReadable;return l("need readable",i),(0===t.length||t.length-e0?_(e,t):null,u.isNull(r)&&(t.needReadable=!0,e=0),t.length-=e,0!==t.length||t.ended||(t.needReadable=!0),n!==e&&t.ended&&0===t.length&&w(this),u.isNull(r)||this.emit("data",r),r},c.prototype._read=function(e){this.emit("error",new Error("not implemented"))},c.prototype.pipe=function(e,t){var i=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,l("pipe count=%d opts=%j",o.pipesCount,t);var s=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?f:h;function u(e){l("onunpipe"),e===i&&h()}function f(){l("onend"),e.end()}o.endEmitted?n.nextTick(s):i.once("end",s),e.on("unpipe",u);var c=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a.listenerCount(e,"data")&&(t.flowing=!0,m(e))}}(i);function h(){l("cleanup"),e.removeListener("close",g),e.removeListener("finish",v),e.removeListener("drain",c),e.removeListener("error",d),e.removeListener("unpipe",u),i.removeListener("end",f),i.removeListener("end",h),i.removeListener("data",p),!o.awaitDrain||e._writableState&&!e._writableState.needDrain||c()}function p(t){l("ondata"),!1===e.write(t)&&(l("false write response, pause",i._readableState.awaitDrain),i._readableState.awaitDrain++,i.pause())}function d(t){l("onerror",t),_(),e.removeListener("error",d),0===a.listenerCount(e,"error")&&e.emit("error",t)}function g(){e.removeListener("finish",v),_()}function v(){l("onfinish"),e.removeListener("close",g),_()}function _(){l("unpipe"),i.unpipe(e)}return e.on("drain",c),i.on("data",p),e._events&&e._events.error?r(e._events.error)?e._events.error.unshift(d):e._events.error=[d,e._events.error]:e.on("error",d),e.once("close",g),e.once("finish",v),e.emit("pipe",i),o.flowing||(l("pipe resume"),i.resume()),e},c.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i1){for(var n=[],r=0;r>1,f=-7,c=n?i-1:0,h=n?-1:1,p=e[t+c];for(c+=h,a=p&(1<<-f)-1,p>>=-f,f+=s;f>0;a=256*a+e[t+c],c+=h,f-=8);for(o=a&(1<<-f)-1,a>>=-f,f+=r;f>0;o=256*o+e[t+c],c+=h,f-=8);if(0===a)a=1-l;else{if(a===u)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,r),a-=l}return(p?-1:1)*o*Math.pow(2,a-r)},n.write=function(e,t,n,r,i,a){var o,s,u,l=8*a-i-1,f=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:a-1,d=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=f):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),(t+=o+c>=1?h/u:h*Math.pow(2,1-c))*u>=2&&(o++,u/=2),o+c>=f?(s=0,o=f):o+c>=1?(s=(t*u-1)*Math.pow(2,i),o+=c):(s=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[n+p]=255&s,p+=d,s/=256,i-=8);for(o=o<0;e[n+p]=255&o,p+=d,o/=256,l-=8);e[n+p-d]|=128*g}},{}],52:[function(e,t,n){"function"==typeof Object.create?t.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},{}],53:[function(e,t,n){"use strict";t.exports=function(e){for(var t=new Array(e),n=0;n>i;0!=(t&o)&&p++;var d=n>>i;return 0!=(n&o)&&d++,function(e,t,n,o,s,u){function l(e,t,n){return en?n:e}var f=r.BitMatrix.createEmpty(o,s);function c(e,t,n,r,i){for(var o=n*i+t,s=0;sd&&(p=d);for(var g=0;gm&&(v=m);for(var _=l(g,2,t-3),w=l(h,2,n-3),b=0,y=-2;y<=2;y++){var x=u[w+y];b+=x[_-2],b+=x[_-1],b+=x[_],b+=x[_+1],b+=x[_+2]}c(e,v,p,b/25,o)}}return f}(u,p,d,t,n,function(e,t,n,r,o){for(var u=new Array(n),l=0;lh&&(c=h);for(var p=0;pg&&(d=g);for(var v=0,m=255,_=0,w=0,b=c*r+d;w_&&(_=x)}if(_-m>s)for(w++,b+=r;w>2*i;if(_-m<=s&&(k=m>>1,f>0&&p>0)){var E=u[f-1][p]+2*u[f][p-1]+u[f-1][p-1]>>2;m=n&&(e++,r+=t.estimatedModuleSize)}),e<3)return!1;for(var a=r/i,o=0,s=0;s=0&&f(n,l);)o[2]++,l--;if(l<0)return null;for(;l>=0&&!f(n,l)&&o[1]<=r;)o[1]++,l--;if(l<0||o[1]>r)return null;for(;l>=0&&f(n,l)&&o[0]<=r;)o[0]++,l--;if(o[0]>r)return null;for(l=t+1;l=r)return null;for(;l=r)return null;var c=o[0]+o[1]+o[2]+o[3]+o[4];return 5*Math.abs(c-i)>=2*i?null:s(o)?u(o,l):null}(r,Math.floor(c),n[2],l);if(null!=h&&null!=(c=function(t,n,r,i){for(var a=e.width,o=[0,0,0,0,0],l=t;l>=0&&f(l,n);)o[2]++,l--;if(l<0)return null;for(;l>=0&&!f(l,n)&&o[1]<=r;)o[1]++,l--;if(l<0||o[1]>r)return null;for(;l>=0&&f(l,n)&&o[0]<=r;)o[0]++,l--;if(o[0]>r)return null;for(l=t+1;l=r)return null;for(;l=r)return null;var c=o[0]+o[1]+o[2]+o[3]+o[4];return 5*Math.abs(c-i)>=i?null:s(o)?u(o,l):null}(Math.floor(c),Math.floor(h),n[2],l))&&(!a||function(t,n,r,i){for(var a=e.height,o=e.width,u=[0,0,0,0,0],l=0;t-l>=0&&f(n-l,t-l);)u[2]++,l++;if(t-l<0||n-l<0)return!1;for(;t-l>=0&&n-l>=0&&!f(n-l,t-l)&&u[1]<=r;)u[1]++,l++;if(t-l<0||n-l<0||u[1]>r)return!1;for(;t-l>=0&&n-l>=0&&f(n-l,t-l)&&u[0]<=r;)u[0]++,l++;if(u[0]>r)return!1;for(l=1;t+l=a||n+l>=o)return!1;for(;t+l=a||n+l>=o||u[3]>=r)return!1;for(;t+l=r)return!1;var c=u[0]+u[1]+u[2]+u[3]+u[4];return Math.abs(c-i)<2*i&&s(u)}(Math.floor(h),Math.floor(c),n[2],l))){for(var p=l/7,d=!1,g=0;g=n){if(null!=e)return a=!0,Math.floor(Math.abs(e.x-t.x)-Math.abs(e.y-t.y))/2;e=t}}),0}var d=e.height,g=e.width,v=Math.floor(3*d/(4*i));v_[2]&&(w+=x-_[2]-v,y=g-1)}_=[0,0,0,0,0],b=0}else _=[_[2],_[3],_[4],1,0],b=3;else _[++b]++;else _[b]++;s(_)&&h(_,w,g,!1)&&(v=_[0],a&&(m=c()))}var k=function(){var e=t.length;if(e<3)return null;if(e>3){var n=0,r=0;t.forEach(function(e){var t=e.estimatedModuleSize;n+=t,r+=t*t});var i=n/e,a=Math.sqrt(r/e-i*i);t.sort(function(e,t){var n=Math.abs(t.estimatedModuleSize-i),r=Math.abs(e.estimatedModuleSize-i);return n3;s++){var u=t[s];Math.abs(u.estimatedModuleSize-i)>o&&(t.splice(s,1),s--)}}return t.length>3&&(n=0,t.forEach(function(e){n+=e.estimatedModuleSize}),i=n/t.length,t.sort(function(e,t){if(t.count===e.count){var n=Math.abs(t.estimatedModuleSize-i),r=Math.abs(e.estimatedModuleSize-i);return n=i&&a>=o?(n=e[0],t=e[1],r=e[2]):o>=a&&o>=i?(n=e[1],t=e[0],r=e[2]):(n=e[2],t=e[0],r=e[1]),function(e,t,n){var r=t.x,i=t.y;return(n.x-r)*(e.y-i)-(n.y-i)*(e.x-r)}(t,n,r)<0){var s=t;t=r,r=s}return{bottomLeft:{x:t.x,y:t.y},topLeft:{x:n.x,y:n.y},topRight:{x:r.x,y:r.y}}}(k):null}},function(e,t,n){"use strict";var r=n(5),i=n(7),a=n(8),o=n(2),s=n(6);function u(e,t,n){for(var r=!0,i=0;ie||o<-1||o>t)throw new Error;r=!1,-1==a?(n[i]=0,r=!0):a==e&&(n[i]=e-1,r=!0),-1==o?(n[i+1]=0,r=!0):o==t&&(n[i+1]=t-1,r=!0)}r=!0;for(i=n.length-2;i>=0&&r;i-=2){a=Math.floor(n[i]),o=Math.floor(n[i+1]);if(a<-1||a>e||o<-1||o>t)throw new Error;r=!1,-1==a?(n[i]=0,r=!0):a==e&&(n[i]=e-1,r=!0),-1==o?(n[i+1]=0,r=!0):o==t&&(n[i+1]=t-1,r=!0)}return n}function l(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))}function f(e,t,n,i,a){t=Math.floor(t),n=Math.floor(n);var o=Math.floor(i*e),s=Math.max(0,t-o),u=Math.min(a.width,t+o);if(u-s<3*e)return null;var l=Math.max(0,n-o),f=Math.min(a.height-1,n+o);return r.findAlignment(s,l,u-s,f-l,e,a)}function c(e,t,n,r,i){e=Math.floor(e),t=Math.floor(t),n=Math.floor(n),r=Math.floor(r);var a=Math.abs(r-t)>Math.abs(n-e);if(a){var o=e;e=t,t=o,o=n,n=r,r=o}for(var s=Math.abs(n-e),u=Math.abs(r-t),f=-s>>1,c=e0){if(v==r)break;v+=h,f-=s}}return 2==p?l(n+c,r,e,t):NaN}function h(e,t,n,r,i){var a=c(e,t,n,r,i),o=1,s=e-(n-e);s<0?(o=e/(e-s),s=0):s>=i.width&&(o=(i.width-1-e)/(s-e),s=i.width-1);var u=t-(r-t)*o;return o=1,u<0?(o=t/(t-u),u=0):u>=i.height&&(o=(i.height-1-t)/(u-t),u=i.height-1),(a+=c(e,t,s=e+(s-e)*o,u,i))-1}function p(e,t,n){var r=h(e.x,e.y,t.x,t.y,n),i=h(t.x,t.y,e.x,e.y,n);return s.isNaN(r)?i/7:s.isNaN(i)?r/7:(r+i)/14}t.extract=function(e,t){var n=function(e,t,n,r){return(p(e,t,r)+p(e,n,r))/2}(t.topLeft,t.topRight,t.bottomLeft,e);if(n<1)return null;var r=function(e,t,n,r){var i=7+(Math.round(l(e.x,e.y,t.x,t.y)/r)+Math.round(l(e.x,e.y,n.x,n.y)/r)>>1);switch(3&i){case 0:i++;break;case 2:i--}return i}(t.topLeft,t.topRight,t.bottomLeft,n);if(!r)return null;var s=function(e){if(e%4!=1)return null;var t=e-17>>2;return t<1||t>40?null:a.getVersionForNumber(t)}(r);if(null==s)return null;var c=s.getDimensionForVersion()-7,h=null;if(s.alignmentPatternCenters.length>0)for(var d=t.topRight.x-t.topLeft.x+t.bottomLeft.x,g=t.topRight.y-t.topLeft.y+t.bottomLeft.y,v=1-3/c,m=t.topLeft.x+v*(d-t.topLeft.x),_=t.topLeft.y+v*(g-t.topLeft.y),w=4;w<=16&&!(h=f(n,m,_,w,e));w<<=1);return function(e,t,n){if(t<=0)return null;for(var r=o.BitMatrix.createEmpty(t,t),a=new Array(t<<1),s=0;s>1),a[c+1]=f;a=i.transformPoints(n,a);try{var h=u(e.width,e.height,a)}catch(e){return null}for(c=0;c>1,s,e.get(Math.floor(h[c]),Math.floor(h[c+1])))}return r}(e,r,function(e,t,n,r,a){var o,s,u,l,f=a-3.5;return null!=r?(o=r.x,s=r.y,u=l=f-3):(o=t.x-e.x+n.x,s=t.y-e.y+n.y,u=l=f),i.quadrilateralToQuadrilateral(3.5,3.5,f,3.5,u,l,3.5,f,e.x,e.y,t.x,t.y,o,s,n.x,n.y)}(t.topLeft,t.topRight,t.bottomLeft,h,r))}},function(e,t,n){"use strict";var r=n(6);function i(e,t,n,r){if(Math.abs(n-e.y)<=t&&Math.abs(r-e.x)<=t){var i=Math.abs(t-e.estimatedModuleSize);return i<=1||i<=e.estimatedModuleSize}return!1}function a(e,t,n,r){return{x:(e.x+n)/2,y:(e.y+t)/2,estimatedModuleSize:(e.estimatedModuleSize+r)/2}}function o(e,t){for(var n=t/2,r=0;r<3;r++)if(Math.abs(t-e[r])>=n)return!1;return!0}function s(e,t){var n=t-e[2]-e[1]/2;return r.isNaN(n)?null:n}t.findAlignment=function(e,t,n,r,u,l){var f=[];function c(e,t,n,r){var u=e[0]+e[1]+e[2],c=s(e,n);if(null==c)return null;var h=function(e,t,n,r,i,a){for(var u=a.height,l=[0,0,0],f=e;f>=0&&a.get(t,f)&&l[1]<=n;)l[1]++,f--;if(f<0||l[1]>n)return null;for(;f>=0&&!a.get(t,f)&&l[0]<=n;)l[0]++,f--;if(l[0]>n)return null;for(f=e+1;fn)return null;for(;fn)return null;var c=l[0]+l[1]+l[2];return 5*Math.abs(c-r)>=2*r?null:o(l,i)?s(l,f):null}(t,Math.floor(c),2*e[1],u,r,l);if(null!=h){var p=(e[0]+e[1]+e[2])/3;for(var d in f){var g=f[d];if(i(g,p,h,c))return a(g,h,c,p)}var v={x:c,y:h,estimatedModuleSize:p};f.push(v)}return null}for(var h=e+n,p=t+(r>>1),d=[0,0,0],g=0;g>1:-(g+1>>1));d[0]=0,d[1]=0,d[2]=0;for(var m=e;m>4&15]+n[e>>8&15]+n[e>>12&15]+n[e>>16&15]+n[e>>20&15]+n[e>>24&15]+n[e>>28&15]},t.isNaN=function(e){return"[object Number]"===Object.prototype.toString.call(e)&&e!==+e}},function(e,t){"use strict";function n(e,t,n,r,i,a,o,s){var u=e-n+i-o,l=t-r+a-s;if(0==u&&0==l)return{a11:n-e,a21:i-n,a31:e,a12:r-t,a22:a-r,a32:t,a13:0,a23:0,a33:1};var f=n-i,c=o-i,h=r-a,p=s-a,d=f*p-c*h,g=(u*p-c*l)/d,v=(f*l-u*h)/d;return{a11:n-e+g*n,a21:o-e+v*o,a31:e,a12:r-t+g*r,a22:s-t+v*s,a32:t,a13:g,a23:v,a33:1}}t.transformPoints=function(e,t){for(var n=t.length,r=e.a11,i=e.a12,a=e.a13,o=e.a21,s=e.a22,u=e.a23,l=e.a31,f=e.a32,c=e.a33,h=0;h40)throw new Error("Invalid version number "+e);return u[e-1]}t.getVersionForNumber=l},function(e,t,n){"use strict";var r=n(2),i=n(10),a=n(6),o=n(12),s=n(8),u=21522,l=[[21522,0],[20773,1],[24188,2],[23371,3],[17913,4],[16590,5],[20375,6],[19104,7],[30660,8],[29427,9],[32170,10],[30877,11],[26159,12],[25368,13],[27713,14],[26998,15],[5769,16],[5054,17],[7399,18],[6608,19],[1890,20],[597,21],[3340,22],[2107,23],[13663,24],[12392,25],[16177,26],[14854,27],[9396,28],[8579,29],[11994,30],[11245,31]],f=[function(e,t){return 0==(e+t&1)},function(e,t){return 0==(1&e)},function(e,t){return t%3==0},function(e,t){return(e+t)%3==0},function(e,t){return 0==((e>>1)+t/3&1)},function(e,t){return(e*t&1)+e*t%3==0},function(e,t){return 0==((e*t&1)+e*t%3&1)},function(e,t){return 0==((e+t&1)+e*t%3&1)}],c=[{ordinal:1,bits:0,name:"M"},{ordinal:0,bits:1,name:"L"},{ordinal:3,bits:2,name:"H"},{ordinal:2,bits:3,name:"Q"}];function h(e,t,n){for(var i=f[n.dataMask],a=e.height,o=function(e){for(var t=e.getDimensionForVersion(),n=new Array(t*t),i=0;i6&&(a.setRegion(t-11,0,3,6),a.setRegion(0,t-11,6,3)),a}(t),s=!0,u=[],l=0,c=0,h=0,p=a-1;p>0;p-=2){6==p&&p--;for(var d=0;d>3&3],dataMask:7&e}}function d(e,t){for(var n=1/0,r=0,i=0;i=0;r--)t=e.copyBit(8,r,t);var i=e.height,a=0,o=i-7;for(r=i-1;r>=o;r--)a=e.copyBit(8,r,a);for(n=i-8;n>2;if(n<=6)return s.getVersionForNumber(n);for(var r=0,i=t-11,a=5;a>=0;a--)for(var o=t-9;o>=i;o--)r=e.copyBit(o,a,r);var u=s.Version.decodeVersionInformation(r);if(null!=u&&u.getDimensionForVersion()==t)return u;for(r=0,o=5;o>=0;o--)for(a=t-9;a>=i;a--)r=e.copyBit(o,a,r);return null!=(u=s.Version.decodeVersionInformation(r))&&u.getDimensionForVersion()==t?u:null}(e);if(!t)return null;var n=g(e);if(!n)return null;var r=n.errorCorrectionLevel,a=h(e,t,n);if(!a)return null;var o=function(e,t,n){if(e.length!=t.totalCodewords)throw new Error("Invalid number of codewords for version; got "+e.length+" expected "+t.totalCodewords);var r=t.getECBlocksForLevel(n),i=0,a=r.ecBlocks;a.forEach(function(e){i+=e.count});var o=new Array(i),s=0;a.forEach(function(e){for(var t=0;t=0&&o[l].codewords.length!=u;)l--;l++;for(var f=u-r.ecCodewordsPerBlock,c=0,h=0;h=t.length)throw new Error("Could not decode alphanumeric char");return t[e].charCodeAt(0)}var a=function(){function e(e,t){this.characterCountBitsForVersions=e,this.bits=t}return e.prototype.getCharacterCountBits=function(e){if(null==this.characterCountBitsForVersions)throw new Error("Character count doesn't apply to this mode");var t;return t=e<=9?0:e<=26?1:2,this.characterCountBitsForVersions[t]},e}(),o=new a([0,0,0],0),s=new a([10,12,14],1),u=new a([9,11,13],2),l=new a([0,0,0],3),f=new a([8,16,16],4),c=new a(null,7),h=new a([8,10,12],8),p=new a(null,5),d=new a(null,9),g=new a([8,10,12],13);function v(e){switch(e){case 0:return o;case 1:return s;case 2:return u;case 3:return l;case 4:return f;case 5:return p;case 7:return c;case 8:return h;case 9:return d;case 13:return g;default:throw new Error("Couldn't decode mode from byte array")}}function m(e){var t=e.readBits(8);if(0==(128&t))return 127&t;if(128==(192&t))return(63&t)<<8|e.readBits(8);if(192==(224&t))return(31&t)<<16|e.readBits(16);throw new Error("Bad ECI bits starting with byte "+t)}function _(e,t,n){if(13*n>e.available())return!1;for(var r=new Array(2*n),i=0;n>0;){var a=e.readBits(13),o=Math.floor(a/96)<<8|a%96;o+=o<959?41377:42657,r[i]=o>>8&255,r[i+1]=255&o,i+=2,n--}return t.val=r,!0}function w(e,t,n){for(;n>=3;){if(e.available()<10)return!1;var r=e.readBits(10);if(r>=1e3)return!1;t.val.push(i(Math.floor(r/100))),t.val.push(i(Math.floor(r/10)%10)),t.val.push(i(r%10)),n-=3}if(2==n){if(e.available()<7)return!1;var a=e.readBits(7);if(a>=100)return!1;t.val.push(i(Math.floor(a/10))),t.val.push(i(a%10))}else if(1==n){if(e.available()<4)return!1;var o=e.readBits(4);if(o>=10)return!1;t.val.push(i(o))}return!0}function b(e,t,n,r){for(var a=t.val.length;n>1;){if(e.available()<11)return!1;var o=e.readBits(11);t.val.push(i(Math.floor(o/45))),t.val.push(i(o%45)),n-=2}if(1==n){if(e.available()<6)return!1;t.val.push(i(e.readBits(6)))}if(r)for(var s=a;se.available())return!1;for(var r=new Array(n),i=0;i30)return null}else if(i==g){var S=a.readBits(4),T=a.readBits(i.getCharacterCountBits(t));if(S==x&&!_(a,k,T))return null}else{var M=a.readBits(i.getCharacterCountBits(t));if(i==s){if(!w(a,k,M))return null}else if(i==u){if(!b(a,k,M,E))return null}else if(i==f){if(!y(a,k,M))return null}else if(i!=h)return null}return k.val}},function(e,t){"use strict";var n=function(){function e(e){this.byteOffset=0,this.bitOffset=0,this.bytes=e}return e.prototype.readBits=function(e){if(e<1||e>32||e>this.available())throw new Error("Cannot read "+e.toString()+" bits");var t=0;if(this.bitOffset>0){var n=8-this.bitOffset,r=e>8-r<<(a=n-r);t=(this.bytes[this.byteOffset]&i)>>a,e-=r,this.bitOffset+=r,8==this.bitOffset&&(this.bitOffset=0,this.byteOffset++)}if(e>0){for(;e>=8;)t=t<<8|255&this.bytes[this.byteOffset],this.byteOffset++,e-=8;if(e>0){var a;i=255>>(a=8-e)<>a,this.bitOffset+=e}}return t},e.prototype.available=function(){return 8*(this.bytes.length-this.byteOffset)-this.bitOffset},e}();t.BitStream=n},function(e,t){"use strict";var n=function(){function e(){this.field=new i(285,256,0)}return e.prototype.decode=function(e,t){for(var n=new r(this.field,e),a=new Array(t),o=!0,s=0;s=n/2;){var u=i,l=o;if(o=s,(i=a).isZero())return null;a=u;for(var f=this.field.zero,c=i.getCoefficient(i.degree()),h=this.field.inverse(c);a.degree()>=i.degree()&&!a.isZero();){var p=a.degree()-i.degree(),d=this.field.multiply(a.getCoefficient(a.degree()),h);f=f.addOrSubtract(this.field.buildMonomial(p,d)),a=a.addOrSubtract(i.multiplyByMonomial(p,d))}if(s=f.multiplyPoly(o).addOrSubtract(l),a.degree()>=i.degree())return null}var g=s.getCoefficient(0);if(0==g)return null;var v=this.field.inverse(g);return[s.multiply(v),a.multiply(v)]},e.prototype.findErrorLocations=function(e){var t=e.degree();if(1==t)return[e.getCoefficient(1)];for(var n=new Array(t),r=0,i=1;i1&&0==t[0]){for(var r=1;rr.length){var a=n;n=r,r=a}for(var o=new Array(r.length),s=r.length-n.length,u=0;u=this.size&&(e^=this.primitive,e&=this.size-1);for(t=0;t>>1,O=[["ary",x],["bind",g],["bindKey",v],["curry",_],["curryRight",w],["flip",E],["partial",b],["partialRight",y],["rearg",k]],N="[object Arguments]",U="[object Array]",F="[object AsyncFunction]",q="[object Boolean]",V="[object Date]",W="[object DOMException]",Z="[object Error]",G="[object Function]",Y="[object GeneratorFunction]",H="[object Map]",X="[object Number]",$="[object Null]",K="[object Object]",J="[object Proxy]",Q="[object RegExp]",ee="[object Set]",te="[object String]",ne="[object Symbol]",re="[object Undefined]",ie="[object WeakMap]",ae="[object WeakSet]",oe="[object ArrayBuffer]",se="[object DataView]",ue="[object Float32Array]",le="[object Float64Array]",fe="[object Int8Array]",ce="[object Int16Array]",he="[object Int32Array]",pe="[object Uint8Array]",de="[object Uint8ClampedArray]",ge="[object Uint16Array]",ve="[object Uint32Array]",me=/\b__p \+= '';/g,_e=/\b(__p \+=) '' \+/g,we=/(__e\(.*?\)|\b__t\)) \+\n'';/g,be=/&(?:amp|lt|gt|quot|#39);/g,ye=/[&<>"']/g,xe=RegExp(be.source),ke=RegExp(ye.source),Ee=/<%-([\s\S]+?)%>/g,Ae=/<%([\s\S]+?)%>/g,Se=/<%=([\s\S]+?)%>/g,Te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Me=/^\w*$/,Re=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ie=/[\\^$.*+?()[\]{}|]/g,je=RegExp(Ie.source),Ce=/^\s+|\s+$/g,Le=/^\s+/,Be=/\s+$/,De=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ze=/\{\n\/\* \[wrapped with (.+)\] \*/,Pe=/,? & /,Oe=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ne=/\\(\\)?/g,Ue=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Fe=/\w*$/,qe=/^[-+]0x[0-9a-f]+$/i,Ve=/^0b[01]+$/i,We=/^\[object .+?Constructor\]$/,Ze=/^0o[0-7]+$/i,Ge=/^(?:0|[1-9]\d*)$/,Ye=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,He=/($^)/,Xe=/['\n\r\u2028\u2029\\]/g,$e="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ke="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Je="[\\ud800-\\udfff]",Qe="["+Ke+"]",et="["+$e+"]",tt="\\d+",nt="[\\u2700-\\u27bf]",rt="[a-z\\xdf-\\xf6\\xf8-\\xff]",it="[^\\ud800-\\udfff"+Ke+tt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",at="\\ud83c[\\udffb-\\udfff]",ot="[^\\ud800-\\udfff]",st="(?:\\ud83c[\\udde6-\\uddff]){2}",ut="[\\ud800-\\udbff][\\udc00-\\udfff]",lt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",ft="(?:"+rt+"|"+it+")",ct="(?:"+lt+"|"+it+")",ht="(?:"+et+"|"+at+")"+"?",pt="[\\ufe0e\\ufe0f]?"+ht+("(?:\\u200d(?:"+[ot,st,ut].join("|")+")[\\ufe0e\\ufe0f]?"+ht+")*"),dt="(?:"+[nt,st,ut].join("|")+")"+pt,gt="(?:"+[ot+et+"?",et,st,ut,Je].join("|")+")",vt=RegExp("['’]","g"),mt=RegExp(et,"g"),_t=RegExp(at+"(?="+at+")|"+gt+pt,"g"),wt=RegExp([lt+"?"+rt+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[Qe,lt,"$"].join("|")+")",ct+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[Qe,lt+ft,"$"].join("|")+")",lt+"?"+ft+"+(?:['’](?:d|ll|m|re|s|t|ve))?",lt+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",tt,dt].join("|"),"g"),bt=RegExp("[\\u200d\\ud800-\\udfff"+$e+"\\ufe0e\\ufe0f]"),yt=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,xt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],kt=-1,Et={};Et[ue]=Et[le]=Et[fe]=Et[ce]=Et[he]=Et[pe]=Et[de]=Et[ge]=Et[ve]=!0,Et[N]=Et[U]=Et[oe]=Et[q]=Et[se]=Et[V]=Et[Z]=Et[G]=Et[H]=Et[X]=Et[K]=Et[Q]=Et[ee]=Et[te]=Et[ie]=!1;var At={};At[N]=At[U]=At[oe]=At[se]=At[q]=At[V]=At[ue]=At[le]=At[fe]=At[ce]=At[he]=At[H]=At[X]=At[K]=At[Q]=At[ee]=At[te]=At[ne]=At[pe]=At[de]=At[ge]=At[ve]=!0,At[Z]=At[G]=At[ie]=!1;var St={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Tt=parseFloat,Mt=parseInt,Rt="object"==typeof e&&e&&e.Object===Object&&e,It="object"==typeof self&&self&&self.Object===Object&&self,jt=Rt||It||Function("return this")(),Ct="object"==typeof n&&n&&!n.nodeType&&n,Lt=Ct&&"object"==typeof t&&t&&!t.nodeType&&t,Bt=Lt&&Lt.exports===Ct,Dt=Bt&&Rt.process,zt=function(){try{return Dt&&Dt.binding&&Dt.binding("util")}catch(e){}}(),Pt=zt&&zt.isArrayBuffer,Ot=zt&&zt.isDate,Nt=zt&&zt.isMap,Ut=zt&&zt.isRegExp,Ft=zt&&zt.isSet,qt=zt&&zt.isTypedArray;function Vt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function Wt(e,t,n,r){for(var i=-1,a=null==e?0:e.length;++i-1}function $t(e,t,n){for(var r=-1,i=null==e?0:e.length;++r-1;);return n}function wn(e,t){for(var n=e.length;n--&&on(t,e[n],0)>-1;);return n}var bn=cn({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),yn=cn({"&":"&","<":"<",">":">",'"':""","'":"'"});function xn(e){return"\\"+St[e]}function kn(e){return bt.test(e)}function En(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}function An(e,t){return function(n){return e(t(n))}}function Sn(e,t){for(var n=-1,r=e.length,i=0,a=[];++n",""":'"',"'":"'"});var Ln=function e(t){var n,$e=(t=null==t?jt:Ln.defaults(jt.Object(),t,Ln.pick(jt,xt))).Array,Ke=t.Date,Je=t.Error,Qe=t.Function,et=t.Math,tt=t.Object,nt=t.RegExp,rt=t.String,it=t.TypeError,at=$e.prototype,ot=Qe.prototype,st=tt.prototype,ut=t["__core-js_shared__"],lt=ot.toString,ft=st.hasOwnProperty,ct=0,ht=(n=/[^.]+$/.exec(ut&&ut.keys&&ut.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",pt=st.toString,dt=lt.call(tt),gt=jt._,_t=nt("^"+lt.call(ft).replace(Ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),bt=Bt?t.Buffer:r,St=t.Symbol,Rt=t.Uint8Array,It=bt?bt.allocUnsafe:r,Ct=An(tt.getPrototypeOf,tt),Lt=tt.create,Dt=st.propertyIsEnumerable,zt=at.splice,nn=St?St.isConcatSpreadable:r,cn=St?St.iterator:r,Bn=St?St.toStringTag:r,Dn=function(){try{var e=Na(tt,"defineProperty");return e({},"",{}),e}catch(e){}}(),zn=t.clearTimeout!==jt.clearTimeout&&t.clearTimeout,Pn=Ke&&Ke.now!==jt.Date.now&&Ke.now,On=t.setTimeout!==jt.setTimeout&&t.setTimeout,Nn=et.ceil,Un=et.floor,Fn=tt.getOwnPropertySymbols,qn=bt?bt.isBuffer:r,Vn=t.isFinite,Wn=at.join,Zn=An(tt.keys,tt),Gn=et.max,Yn=et.min,Hn=Ke.now,Xn=t.parseInt,$n=et.random,Kn=at.reverse,Jn=Na(t,"DataView"),Qn=Na(t,"Map"),er=Na(t,"Promise"),tr=Na(t,"Set"),nr=Na(t,"WeakMap"),rr=Na(tt,"create"),ir=nr&&new nr,ar={},or=fo(Jn),sr=fo(Qn),ur=fo(er),lr=fo(tr),fr=fo(nr),cr=St?St.prototype:r,hr=cr?cr.valueOf:r,pr=cr?cr.toString:r;function dr(e){if(Ms(e)&&!ms(e)&&!(e instanceof _r)){if(e instanceof mr)return e;if(ft.call(e,"__wrapped__"))return co(e)}return new mr(e)}var gr=function(){function e(){}return function(t){if(!Ts(t))return{};if(Lt)return Lt(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function vr(){}function mr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function _r(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=D,this.__views__=[]}function wr(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function zr(e,t,n,i,a,o){var s,u=t&f,l=t&c,p=t&h;if(n&&(s=a?n(e,i,a,o):n(e)),s!==r)return s;if(!Ts(e))return e;var d=ms(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&ft.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!u)return ra(e,s)}else{var g=qa(e),v=g==G||g==Y;if(ys(e))return Ki(e,u);if(g==K||g==N||v&&!a){if(s=l||v?{}:Wa(e),!u)return l?function(e,t){return ia(e,Fa(e),t)}(e,function(e,t){return e&&ia(t,au(t),e)}(s,e)):function(e,t){return ia(e,Ua(e),t)}(e,Cr(s,e))}else{if(!At[g])return a?e:{};s=function(e,t,n){var r,i,a,o=e.constructor;switch(t){case oe:return Ji(e);case q:case V:return new o(+e);case se:return function(e,t){var n=t?Ji(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case ue:case le:case fe:case ce:case he:case pe:case de:case ge:case ve:return Qi(e,n);case H:return new o;case X:case te:return new o(e);case Q:return(a=new(i=e).constructor(i.source,Fe.exec(i))).lastIndex=i.lastIndex,a;case ee:return new o;case ne:return r=e,hr?tt(hr.call(r)):{}}}(e,g,u)}}o||(o=new kr);var m=o.get(e);if(m)return m;if(o.set(e,s),Ls(e))return e.forEach(function(r){s.add(zr(r,t,n,r,e,o))}),s;if(Rs(e))return e.forEach(function(r,i){s.set(i,zr(r,t,n,i,e,o))}),s;var _=d?r:(p?l?Ca:ja:l?au:iu)(e);return Zt(_||e,function(r,i){_&&(r=e[i=r]),Rr(s,i,zr(r,t,n,i,e,o))}),s}function Pr(e,t,n){var i=n.length;if(null==e)return!i;for(e=tt(e);i--;){var a=n[i],o=t[a],s=e[a];if(s===r&&!(a in e)||!o(s))return!1}return!0}function Or(e,t,n){if("function"!=typeof e)throw new it(o);return ro(function(){e.apply(r,n)},t)}function Nr(e,t,n,r){var a=-1,o=Xt,s=!0,u=e.length,l=[],f=t.length;if(!u)return l;n&&(t=Kt(t,gn(n))),r?(o=$t,s=!1):t.length>=i&&(o=mn,s=!1,t=new xr(t));e:for(;++a-1},br.prototype.set=function(e,t){var n=this.__data__,r=Ir(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},yr.prototype.clear=function(){this.size=0,this.__data__={hash:new wr,map:new(Qn||br),string:new wr}},yr.prototype.delete=function(e){var t=Pa(this,e).delete(e);return this.size-=t?1:0,t},yr.prototype.get=function(e){return Pa(this,e).get(e)},yr.prototype.has=function(e){return Pa(this,e).has(e)},yr.prototype.set=function(e,t){var n=Pa(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},xr.prototype.add=xr.prototype.push=function(e){return this.__data__.set(e,s),this},xr.prototype.has=function(e){return this.__data__.has(e)},kr.prototype.clear=function(){this.__data__=new br,this.size=0},kr.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},kr.prototype.get=function(e){return this.__data__.get(e)},kr.prototype.has=function(e){return this.__data__.has(e)},kr.prototype.set=function(e,t){var n=this.__data__;if(n instanceof br){var r=n.__data__;if(!Qn||r.length0&&n(s)?t>1?Zr(s,t-1,n,r,i):Jt(i,s):r||(i[i.length]=s)}return i}var Gr=ua(),Yr=ua(!0);function Hr(e,t){return e&&Gr(e,t,iu)}function Xr(e,t){return e&&Yr(e,t,iu)}function $r(e,t){return Ht(t,function(t){return Es(e[t])})}function Kr(e,t){for(var n=0,i=(t=Yi(t,e)).length;null!=e&&nt}function ti(e,t){return null!=e&&ft.call(e,t)}function ni(e,t){return null!=e&&t in tt(e)}function ri(e,t,n){for(var i=n?$t:Xt,a=e[0].length,o=e.length,s=o,u=$e(o),l=1/0,f=[];s--;){var c=e[s];s&&t&&(c=Kt(c,gn(t))),l=Yn(c.length,l),u[s]=!n&&(t||a>=120&&c.length>=120)?new xr(s&&c):r}c=e[0];var h=-1,p=u[0];e:for(;++h=s)return u;var l=n[r];return u*("desc"==l?-1:1)}}return e.index-t.index}(e,t,n)})}function wi(e,t,n){for(var r=-1,i=t.length,a={};++r-1;)s!==e&&zt.call(s,u,1),zt.call(e,u,1);return e}function yi(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==a){var a=i;Ga(i)?zt.call(e,i,1):Ni(e,i)}}return e}function xi(e,t){return e+Un($n()*(t-e+1))}function ki(e,t){var n="";if(!e||t<1||t>C)return n;do{t%2&&(n+=e),(t=Un(t/2))&&(e+=e)}while(t);return n}function Ei(e,t){return io(eo(e,t,Iu),e+"")}function Ai(e){return Ar(pu(e))}function Si(e,t){var n=pu(e);return so(n,Dr(t,0,n.length))}function Ti(e,t,n,i){if(!Ts(e))return e;for(var a=-1,o=(t=Yi(t,e)).length,s=o-1,u=e;null!=u&&++ai?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var a=$e(i);++r>>1,o=e[a];null!==o&&!Ds(o)&&(n?o<=t:o=i){var f=t?null:ka(e);if(f)return Mn(f);s=!1,a=mn,l=new xr}else l=t?[]:u;e:for(;++r=i?e:ji(e,t,n)}var $i=zn||function(e){return jt.clearTimeout(e)};function Ki(e,t){if(t)return e.slice();var n=e.length,r=It?It(n):new e.constructor(n);return e.copy(r),r}function Ji(e){var t=new e.constructor(e.byteLength);return new Rt(t).set(new Rt(e)),t}function Qi(e,t){var n=t?Ji(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function ea(e,t){if(e!==t){var n=e!==r,i=null===e,a=e==e,o=Ds(e),s=t!==r,u=null===t,l=t==t,f=Ds(t);if(!u&&!f&&!o&&e>t||o&&s&&l&&!u&&!f||i&&s&&l||!n&&l||!a)return 1;if(!i&&!o&&!f&&e1?n[a-1]:r,s=a>2?n[2]:r;for(o=e.length>3&&"function"==typeof o?(a--,o):r,s&&Ya(n[0],n[1],s)&&(o=a<3?r:o,a=1),t=tt(t);++i-1?a[o?t[s]:s]:r}}function pa(e){return Ia(function(t){var n=t.length,i=n,a=mr.prototype.thru;for(e&&t.reverse();i--;){var s=t[i];if("function"!=typeof s)throw new it(o);if(a&&!u&&"wrapper"==Ba(s))var u=new mr([],!0)}for(i=u?i:n;++i1&&_.reverse(),c&&lu))return!1;var f=o.get(e);if(f&&o.get(t))return f==t;var c=-1,h=!0,g=n&d?new xr:r;for(o.set(e,t),o.set(t,e);++c-1&&e%1==0&&e1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(De,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return Zt(O,function(n){var r="_."+n[0];t&n[1]&&!Xt(e,r)&&e.push(r)}),e.sort()}(function(e){var t=e.match(ze);return t?t[1].split(Pe):[]}(r),n)))}function oo(e){var t=0,n=0;return function(){var i=Hn(),a=M-(i-n);if(n=i,a>0){if(++t>=T)return arguments[0]}else t=0;return e.apply(r,arguments)}}function so(e,t){var n=-1,i=e.length,a=i-1;for(t=t===r?i:t;++n1?e[t-1]:r;return Co(e,n="function"==typeof n?(e.pop(),n):r)});function No(e){var t=dr(e);return t.__chain__=!0,t}function Uo(e,t){return t(e)}var Fo=Ia(function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,a=function(t){return Br(t,e)};return!(t>1||this.__actions__.length)&&i instanceof _r&&Ga(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:Uo,args:[a],thisArg:r}),new mr(i,this.__chain__).thru(function(e){return t&&!e.length&&e.push(r),e})):this.thru(a)});var qo=aa(function(e,t,n){ft.call(e,n)?++e[n]:Lr(e,n,1)});var Vo=ha(vo),Wo=ha(mo);function Zo(e,t){return(ms(e)?Zt:Ur)(e,za(t,3))}function Go(e,t){return(ms(e)?Gt:Fr)(e,za(t,3))}var Yo=aa(function(e,t,n){ft.call(e,n)?e[n].push(t):Lr(e,n,[t])});var Ho=Ei(function(e,t,n){var r=-1,i="function"==typeof t,a=ws(e)?$e(e.length):[];return Ur(e,function(e){a[++r]=i?Vt(t,e,n):ii(e,t,n)}),a}),Xo=aa(function(e,t,n){Lr(e,n,t)});function $o(e,t){return(ms(e)?Kt:pi)(e,za(t,3))}var Ko=aa(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]});var Jo=Ei(function(e,t){if(null==e)return[];var n=t.length;return n>1&&Ya(e,t[0],t[1])?t=[]:n>2&&Ya(t[0],t[1],t[2])&&(t=[t[0]]),_i(e,Zr(t,1),[])}),Qo=Pn||function(){return jt.Date.now()};function es(e,t,n){return t=n?r:t,t=e&&null==t?e.length:t,Aa(e,x,r,r,r,r,t)}function ts(e,t){var n;if("function"!=typeof t)throw new it(o);return e=Fs(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var ns=Ei(function(e,t,n){var r=g;if(n.length){var i=Sn(n,Da(ns));r|=b}return Aa(e,r,t,n,i)}),rs=Ei(function(e,t,n){var r=g|v;if(n.length){var i=Sn(n,Da(rs));r|=b}return Aa(t,r,e,n,i)});function is(e,t,n){var i,a,s,u,l,f,c=0,h=!1,p=!1,d=!0;if("function"!=typeof e)throw new it(o);function g(t){var n=i,o=a;return i=a=r,c=t,u=e.apply(o,n)}function v(e){var n=e-f;return f===r||n>=t||n<0||p&&e-c>=s}function m(){var e=Qo();if(v(e))return _(e);l=ro(m,function(e){var n=t-(e-f);return p?Yn(n,s-(e-c)):n}(e))}function _(e){return l=r,d&&i?g(e):(i=a=r,u)}function w(){var e=Qo(),n=v(e);if(i=arguments,a=this,f=e,n){if(l===r)return function(e){return c=e,l=ro(m,t),h?g(e):u}(f);if(p)return l=ro(m,t),g(f)}return l===r&&(l=ro(m,t)),u}return t=Vs(t)||0,Ts(n)&&(h=!!n.leading,s=(p="maxWait"in n)?Gn(Vs(n.maxWait)||0,t):s,d="trailing"in n?!!n.trailing:d),w.cancel=function(){l!==r&&$i(l),c=0,i=f=a=l=r},w.flush=function(){return l===r?u:_(Qo())},w}var as=Ei(function(e,t){return Or(e,1,t)}),os=Ei(function(e,t,n){return Or(e,Vs(t)||0,n)});function ss(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new it(o);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(ss.Cache||yr),n}function us(e){if("function"!=typeof e)throw new it(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}ss.Cache=yr;var ls=Hi(function(e,t){var n=(t=1==t.length&&ms(t[0])?Kt(t[0],gn(za())):Kt(Zr(t,1),gn(za()))).length;return Ei(function(r){for(var i=-1,a=Yn(r.length,n);++i=t}),vs=ai(function(){return arguments}())?ai:function(e){return Ms(e)&&ft.call(e,"callee")&&!Dt.call(e,"callee")},ms=$e.isArray,_s=Pt?gn(Pt):function(e){return Ms(e)&&Qr(e)==oe};function ws(e){return null!=e&&Ss(e.length)&&!Es(e)}function bs(e){return Ms(e)&&ws(e)}var ys=qn||Vu,xs=Ot?gn(Ot):function(e){return Ms(e)&&Qr(e)==V};function ks(e){if(!Ms(e))return!1;var t=Qr(e);return t==Z||t==W||"string"==typeof e.message&&"string"==typeof e.name&&!js(e)}function Es(e){if(!Ts(e))return!1;var t=Qr(e);return t==G||t==Y||t==F||t==J}function As(e){return"number"==typeof e&&e==Fs(e)}function Ss(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=C}function Ts(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ms(e){return null!=e&&"object"==typeof e}var Rs=Nt?gn(Nt):function(e){return Ms(e)&&qa(e)==H};function Is(e){return"number"==typeof e||Ms(e)&&Qr(e)==X}function js(e){if(!Ms(e)||Qr(e)!=K)return!1;var t=Ct(e);if(null===t)return!0;var n=ft.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&<.call(n)==dt}var Cs=Ut?gn(Ut):function(e){return Ms(e)&&Qr(e)==Q};var Ls=Ft?gn(Ft):function(e){return Ms(e)&&qa(e)==ee};function Bs(e){return"string"==typeof e||!ms(e)&&Ms(e)&&Qr(e)==te}function Ds(e){return"symbol"==typeof e||Ms(e)&&Qr(e)==ne}var zs=qt?gn(qt):function(e){return Ms(e)&&Ss(e.length)&&!!Et[Qr(e)]};var Ps=ba(hi),Os=ba(function(e,t){return e<=t});function Ns(e){if(!e)return[];if(ws(e))return Bs(e)?jn(e):ra(e);if(cn&&e[cn])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[cn]());var t=qa(e);return(t==H?En:t==ee?Mn:pu)(e)}function Us(e){return e?(e=Vs(e))===j||e===-j?(e<0?-1:1)*L:e==e?e:0:0===e?e:0}function Fs(e){var t=Us(e),n=t%1;return t==t?n?t-n:t:0}function qs(e){return e?Dr(Fs(e),0,D):0}function Vs(e){if("number"==typeof e)return e;if(Ds(e))return B;if(Ts(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Ts(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(Ce,"");var n=Ve.test(e);return n||Ze.test(e)?Mt(e.slice(2),n?2:8):qe.test(e)?B:+e}function Ws(e){return ia(e,au(e))}function Zs(e){return null==e?"":Pi(e)}var Gs=oa(function(e,t){if(Ka(t)||ws(t))ia(t,iu(t),e);else for(var n in t)ft.call(t,n)&&Rr(e,n,t[n])}),Ys=oa(function(e,t){ia(t,au(t),e)}),Hs=oa(function(e,t,n,r){ia(t,au(t),e,r)}),Xs=oa(function(e,t,n,r){ia(t,iu(t),e,r)}),$s=Ia(Br);var Ks=Ei(function(e,t){e=tt(e);var n=-1,i=t.length,a=i>2?t[2]:r;for(a&&Ya(t[0],t[1],a)&&(i=1);++n1),t}),ia(e,Ca(e),n),r&&(n=zr(n,f|c|h,Ma));for(var i=t.length;i--;)Ni(n,t[i]);return n});var lu=Ia(function(e,t){return null==e?{}:function(e,t){return wi(e,t,function(t,n){return eu(e,n)})}(e,t)});function fu(e,t){if(null==e)return{};var n=Kt(Ca(e),function(e){return[e]});return t=za(t),wi(e,n,function(e,n){return t(e,n[0])})}var cu=Ea(iu),hu=Ea(au);function pu(e){return null==e?[]:vn(e,iu(e))}var du=fa(function(e,t,n){return t=t.toLowerCase(),e+(n?gu(t):t)});function gu(e){return ku(Zs(e).toLowerCase())}function vu(e){return(e=Zs(e))&&e.replace(Ye,bn).replace(mt,"")}var mu=fa(function(e,t,n){return e+(n?"-":"")+t.toLowerCase()}),_u=fa(function(e,t,n){return e+(n?" ":"")+t.toLowerCase()}),wu=la("toLowerCase");var bu=fa(function(e,t,n){return e+(n?"_":"")+t.toLowerCase()});var yu=fa(function(e,t,n){return e+(n?" ":"")+ku(t)});var xu=fa(function(e,t,n){return e+(n?" ":"")+t.toUpperCase()}),ku=la("toUpperCase");function Eu(e,t,n){return e=Zs(e),(t=n?r:t)===r?function(e){return yt.test(e)}(e)?function(e){return e.match(wt)||[]}(e):function(e){return e.match(Oe)||[]}(e):e.match(t)||[]}var Au=Ei(function(e,t){try{return Vt(e,r,t)}catch(e){return ks(e)?e:new Je(e)}}),Su=Ia(function(e,t){return Zt(t,function(t){t=lo(t),Lr(e,t,ns(e[t],e))}),e});function Tu(e){return function(){return e}}var Mu=pa(),Ru=pa(!0);function Iu(e){return e}function ju(e){return li("function"==typeof e?e:zr(e,f))}var Cu=Ei(function(e,t){return function(n){return ii(n,e,t)}}),Lu=Ei(function(e,t){return function(n){return ii(e,n,t)}});function Bu(e,t,n){var r=iu(t),i=$r(t,r);null!=n||Ts(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=$r(t,iu(t)));var a=!(Ts(n)&&"chain"in n&&!n.chain),o=Es(e);return Zt(i,function(n){var r=t[n];e[n]=r,o&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=ra(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,Jt([this.value()],arguments))})}),e}function Du(){}var zu=ma(Kt),Pu=ma(Yt),Ou=ma(tn);function Nu(e){return Ha(e)?fn(lo(e)):function(e){return function(t){return Kr(t,e)}}(e)}var Uu=wa(),Fu=wa(!0);function qu(){return[]}function Vu(){return!1}var Wu=va(function(e,t){return e+t},0),Zu=xa("ceil"),Gu=va(function(e,t){return e/t},1),Yu=xa("floor");var Hu,Xu=va(function(e,t){return e*t},1),$u=xa("round"),Ku=va(function(e,t){return e-t},0);return dr.after=function(e,t){if("function"!=typeof t)throw new it(o);return e=Fs(e),function(){if(--e<1)return t.apply(this,arguments)}},dr.ary=es,dr.assign=Gs,dr.assignIn=Ys,dr.assignInWith=Hs,dr.assignWith=Xs,dr.at=$s,dr.before=ts,dr.bind=ns,dr.bindAll=Su,dr.bindKey=rs,dr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return ms(e)?e:[e]},dr.chain=No,dr.chunk=function(e,t,n){t=(n?Ya(e,t,n):t===r)?1:Gn(Fs(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var a=0,o=0,s=$e(Nn(i/t));aa?0:a+n),(i=i===r||i>a?a:Fs(i))<0&&(i+=a),i=n>i?0:qs(i);n>>0)?(e=Zs(e))&&("string"==typeof t||null!=t&&!Cs(t))&&!(t=Pi(t))&&kn(e)?Xi(jn(e),0,n):e.split(t,n):[]},dr.spread=function(e,t){if("function"!=typeof e)throw new it(o);return t=null==t?0:Gn(Fs(t),0),Ei(function(n){var r=n[t],i=Xi(n,0,t);return r&&Jt(i,r),Vt(e,this,i)})},dr.tail=function(e){var t=null==e?0:e.length;return t?ji(e,1,t):[]},dr.take=function(e,t,n){return e&&e.length?ji(e,0,(t=n||t===r?1:Fs(t))<0?0:t):[]},dr.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?ji(e,(t=i-(t=n||t===r?1:Fs(t)))<0?0:t,i):[]},dr.takeRightWhile=function(e,t){return e&&e.length?Fi(e,za(t,3),!1,!0):[]},dr.takeWhile=function(e,t){return e&&e.length?Fi(e,za(t,3)):[]},dr.tap=function(e,t){return t(e),e},dr.throttle=function(e,t,n){var r=!0,i=!0;if("function"!=typeof e)throw new it(o);return Ts(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),is(e,t,{leading:r,maxWait:t,trailing:i})},dr.thru=Uo,dr.toArray=Ns,dr.toPairs=cu,dr.toPairsIn=hu,dr.toPath=function(e){return ms(e)?Kt(e,lo):Ds(e)?[e]:ra(uo(Zs(e)))},dr.toPlainObject=Ws,dr.transform=function(e,t,n){var r=ms(e),i=r||ys(e)||zs(e);if(t=za(t,4),null==n){var a=e&&e.constructor;n=i?r?new a:[]:Ts(e)&&Es(a)?gr(Ct(e)):{}}return(i?Zt:Hr)(e,function(e,r,i){return t(n,e,r,i)}),n},dr.unary=function(e){return es(e,1)},dr.union=Mo,dr.unionBy=Ro,dr.unionWith=Io,dr.uniq=function(e){return e&&e.length?Oi(e):[]},dr.uniqBy=function(e,t){return e&&e.length?Oi(e,za(t,2)):[]},dr.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?Oi(e,r,t):[]},dr.unset=function(e,t){return null==e||Ni(e,t)},dr.unzip=jo,dr.unzipWith=Co,dr.update=function(e,t,n){return null==e?e:Ui(e,t,Gi(n))},dr.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:Ui(e,t,Gi(n),i)},dr.values=pu,dr.valuesIn=function(e){return null==e?[]:vn(e,au(e))},dr.without=Lo,dr.words=Eu,dr.wrap=function(e,t){return fs(Gi(t),e)},dr.xor=Bo,dr.xorBy=Do,dr.xorWith=zo,dr.zip=Po,dr.zipObject=function(e,t){return Wi(e||[],t||[],Rr)},dr.zipObjectDeep=function(e,t){return Wi(e||[],t||[],Ti)},dr.zipWith=Oo,dr.entries=cu,dr.entriesIn=hu,dr.extend=Ys,dr.extendWith=Hs,Bu(dr,dr),dr.add=Wu,dr.attempt=Au,dr.camelCase=du,dr.capitalize=gu,dr.ceil=Zu,dr.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=Vs(n))==n?n:0),t!==r&&(t=(t=Vs(t))==t?t:0),Dr(Vs(e),t,n)},dr.clone=function(e){return zr(e,h)},dr.cloneDeep=function(e){return zr(e,f|h)},dr.cloneDeepWith=function(e,t){return zr(e,f|h,t="function"==typeof t?t:r)},dr.cloneWith=function(e,t){return zr(e,h,t="function"==typeof t?t:r)},dr.conformsTo=function(e,t){return null==t||Pr(e,t,iu(t))},dr.deburr=vu,dr.defaultTo=function(e,t){return null==e||e!=e?t:e},dr.divide=Gu,dr.endsWith=function(e,t,n){e=Zs(e),t=Pi(t);var i=e.length,a=n=n===r?i:Dr(Fs(n),0,i);return(n-=t.length)>=0&&e.slice(n,a)==t},dr.eq=ps,dr.escape=function(e){return(e=Zs(e))&&ke.test(e)?e.replace(ye,yn):e},dr.escapeRegExp=function(e){return(e=Zs(e))&&je.test(e)?e.replace(Ie,"\\$&"):e},dr.every=function(e,t,n){var i=ms(e)?Yt:qr;return n&&Ya(e,t,n)&&(t=r),i(e,za(t,3))},dr.find=Vo,dr.findIndex=vo,dr.findKey=function(e,t){return rn(e,za(t,3),Hr)},dr.findLast=Wo,dr.findLastIndex=mo,dr.findLastKey=function(e,t){return rn(e,za(t,3),Xr)},dr.floor=Yu,dr.forEach=Zo,dr.forEachRight=Go,dr.forIn=function(e,t){return null==e?e:Gr(e,za(t,3),au)},dr.forInRight=function(e,t){return null==e?e:Yr(e,za(t,3),au)},dr.forOwn=function(e,t){return e&&Hr(e,za(t,3))},dr.forOwnRight=function(e,t){return e&&Xr(e,za(t,3))},dr.get=Qs,dr.gt=ds,dr.gte=gs,dr.has=function(e,t){return null!=e&&Va(e,t,ti)},dr.hasIn=eu,dr.head=wo,dr.identity=Iu,dr.includes=function(e,t,n,r){e=ws(e)?e:pu(e),n=n&&!r?Fs(n):0;var i=e.length;return n<0&&(n=Gn(i+n,0)),Bs(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&on(e,t,n)>-1},dr.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:Fs(n);return i<0&&(i=Gn(r+i,0)),on(e,t,i)},dr.inRange=function(e,t,n){return t=Us(t),n===r?(n=t,t=0):n=Us(n),function(e,t,n){return e>=Yn(t,n)&&e=-C&&e<=C},dr.isSet=Ls,dr.isString=Bs,dr.isSymbol=Ds,dr.isTypedArray=zs,dr.isUndefined=function(e){return e===r},dr.isWeakMap=function(e){return Ms(e)&&qa(e)==ie},dr.isWeakSet=function(e){return Ms(e)&&Qr(e)==ae},dr.join=function(e,t){return null==e?"":Wn.call(e,t)},dr.kebabCase=mu,dr.last=ko,dr.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var a=i;return n!==r&&(a=(a=Fs(n))<0?Gn(i+a,0):Yn(a,i-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,a):an(e,un,a,!0)},dr.lowerCase=_u,dr.lowerFirst=wu,dr.lt=Ps,dr.lte=Os,dr.max=function(e){return e&&e.length?Vr(e,Iu,ei):r},dr.maxBy=function(e,t){return e&&e.length?Vr(e,za(t,2),ei):r},dr.mean=function(e){return ln(e,Iu)},dr.meanBy=function(e,t){return ln(e,za(t,2))},dr.min=function(e){return e&&e.length?Vr(e,Iu,hi):r},dr.minBy=function(e,t){return e&&e.length?Vr(e,za(t,2),hi):r},dr.stubArray=qu,dr.stubFalse=Vu,dr.stubObject=function(){return{}},dr.stubString=function(){return""},dr.stubTrue=function(){return!0},dr.multiply=Xu,dr.nth=function(e,t){return e&&e.length?mi(e,Fs(t)):r},dr.noConflict=function(){return jt._===this&&(jt._=gt),this},dr.noop=Du,dr.now=Qo,dr.pad=function(e,t,n){e=Zs(e);var r=(t=Fs(t))?In(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return _a(Un(i),n)+e+_a(Nn(i),n)},dr.padEnd=function(e,t,n){e=Zs(e);var r=(t=Fs(t))?In(e):0;return t&&rt){var i=e;e=t,t=i}if(n||e%1||t%1){var a=$n();return Yn(e+a*(t-e+Tt("1e-"+((a+"").length-1))),t)}return xi(e,t)},dr.reduce=function(e,t,n){var r=ms(e)?Qt:hn,i=arguments.length<3;return r(e,za(t,4),n,i,Ur)},dr.reduceRight=function(e,t,n){var r=ms(e)?en:hn,i=arguments.length<3;return r(e,za(t,4),n,i,Fr)},dr.repeat=function(e,t,n){return t=(n?Ya(e,t,n):t===r)?1:Fs(t),ki(Zs(e),t)},dr.replace=function(){var e=arguments,t=Zs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},dr.result=function(e,t,n){var i=-1,a=(t=Yi(t,e)).length;for(a||(a=1,e=r);++iC)return[];var n=D,r=Yn(e,D);t=za(t),e-=D;for(var i=dn(r,t);++n=o)return e;var u=n-In(i);if(u<1)return i;var l=s?Xi(s,0,u).join(""):e.slice(0,u);if(a===r)return l+i;if(s&&(u+=l.length-u),Cs(a)){if(e.slice(u).search(a)){var f,c=l;for(a.global||(a=nt(a.source,Zs(Fe.exec(a))+"g")),a.lastIndex=0;f=a.exec(c);)var h=f.index;l=l.slice(0,h===r?u:h)}}else if(e.indexOf(Pi(a),u)!=u){var p=l.lastIndexOf(a);p>-1&&(l=l.slice(0,p))}return l+i},dr.unescape=function(e){return(e=Zs(e))&&xe.test(e)?e.replace(be,Cn):e},dr.uniqueId=function(e){var t=++ct;return Zs(e)+t},dr.upperCase=xu,dr.upperFirst=ku,dr.each=Zo,dr.eachRight=Go,dr.first=wo,Bu(dr,(Hu={},Hr(dr,function(e,t){ft.call(dr.prototype,t)||(Hu[t]=e)}),Hu),{chain:!1}),dr.VERSION="4.17.5",Zt(["bind","bindKey","curry","curryRight","partial","partialRight"],function(e){dr[e].placeholder=dr}),Zt(["drop","take"],function(e,t){_r.prototype[e]=function(n){n=n===r?1:Gn(Fs(n),0);var i=this.__filtered__&&!t?new _r(this):this.clone();return i.__filtered__?i.__takeCount__=Yn(n,i.__takeCount__):i.__views__.push({size:Yn(n,D),type:e+(i.__dir__<0?"Right":"")}),i},_r.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}}),Zt(["filter","map","takeWhile"],function(e,t){var n=t+1,r=n==R||3==n;_r.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:za(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}}),Zt(["head","last"],function(e,t){var n="take"+(t?"Right":"");_r.prototype[e]=function(){return this[n](1).value()[0]}}),Zt(["initial","tail"],function(e,t){var n="drop"+(t?"":"Right");_r.prototype[e]=function(){return this.__filtered__?new _r(this):this[n](1)}}),_r.prototype.compact=function(){return this.filter(Iu)},_r.prototype.find=function(e){return this.filter(e).head()},_r.prototype.findLast=function(e){return this.reverse().find(e)},_r.prototype.invokeMap=Ei(function(e,t){return"function"==typeof e?new _r(this):this.map(function(n){return ii(n,e,t)})}),_r.prototype.reject=function(e){return this.filter(us(za(e)))},_r.prototype.slice=function(e,t){e=Fs(e);var n=this;return n.__filtered__&&(e>0||t<0)?new _r(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=Fs(t))<0?n.dropRight(-t):n.take(t-e)),n)},_r.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},_r.prototype.toArray=function(){return this.take(D)},Hr(_r.prototype,function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),a=dr[i?"take"+("last"==t?"Right":""):t],o=i||/^find/.test(t);a&&(dr.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,u=t instanceof _r,l=s[0],f=u||ms(t),c=function(e){var t=a.apply(dr,Jt([e],s));return i&&h?t[0]:t};f&&n&&"function"==typeof l&&1!=l.length&&(u=f=!1);var h=this.__chain__,p=!!this.__actions__.length,d=o&&!h,g=u&&!p;if(!o&&f){t=g?t:new _r(this);var v=e.apply(t,s);return v.__actions__.push({func:Uo,args:[c],thisArg:r}),new mr(v,h)}return d&&g?e.apply(this,s):(v=this.thru(c),d?i?v.value()[0]:v.value():v)})}),Zt(["pop","push","shift","sort","splice","unshift"],function(e){var t=at[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);dr.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(ms(i)?i:[],e)}return this[n](function(n){return t.apply(ms(n)?n:[],e)})}}),Hr(_r.prototype,function(e,t){var n=dr[t];if(n){var r=n.name+"";(ar[r]||(ar[r]=[])).push({name:t,func:n})}}),ar[da(r,v).name]=[{name:"wrapper",func:r}],_r.prototype.clone=function(){var e=new _r(this.__wrapped__);return e.__actions__=ra(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=ra(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=ra(this.__views__),e},_r.prototype.reverse=function(){if(this.__filtered__){var e=new _r(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},_r.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=ms(e),r=t<0,i=n?e.length:0,a=function(e,t,n){for(var r=-1,i=n.length;++r=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},dr.prototype.plant=function(e){for(var t,n=this;n instanceof vr;){var i=co(n);i.__index__=0,i.__values__=r,t?a.__wrapped__=i:t=i;var a=i;n=n.__wrapped__}return a.__wrapped__=e,t},dr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof _r){var t=e;return this.__actions__.length&&(t=new _r(this)),(t=t.reverse()).__actions__.push({func:Uo,args:[To],thisArg:r}),new mr(t,this.__chain__)}return this.thru(To)},dr.prototype.toJSON=dr.prototype.valueOf=dr.prototype.value=function(){return qi(this.__wrapped__,this.__actions__)},dr.prototype.first=dr.prototype.head,cn&&(dr.prototype[cn]=function(){return this}),dr}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(jt._=Ln,define(function(){return Ln})):Lt?((Lt.exports=Ln)._=Ln,Ct._=Ln):jt._=Ln}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],58:[function(e,t,n){(function(n){e("path");var r=e("fs");function i(){this.types=Object.create(null),this.extensions=Object.create(null)}i.prototype.define=function(e){for(var t in e){for(var r=e[t],i=0;i=0;--s)if(h[s]=c,c*=l[s],p=Math.max(p,o.scratchMemory(l[s])),t.shape[s]!==n.shape[s])throw new Error("Shape mismatch, real and imaginary arrays must have same size");var d,g=4*c+p;d="array"===t.dtype||"float64"===t.dtype||"custom"===t.dtype?a.mallocDouble(g):a.mallocFloat(g);var v,m,_,w,b=i(d,l.slice(0),h,0),y=i(d,l.slice(0),h.slice(0),c),x=i(d,l.slice(0),h.slice(0),2*c),k=i(d,l.slice(0),h.slice(0),3*c),E=4*c;for(r.assign(b,t),r.assign(y,n),s=f-1;s>=0&&(o(e,c/l[s],l[s],d,b.offset,y.offset,E),0!==s);--s){for(m=1,_=x.stride,w=k.stride,u=s-1;u=0;--u)w[u]=_[u]=m,m*=l[u];r.assign(x,b),r.assign(k,y),v=b,b=x,x=v,v=y,y=k,k=v}r.assign(t,b),r.assign(n,y),a.free(d)}},{"./lib/fft-matrix.js":61,ndarray:66,"ndarray-ops":63,"typedarray-pool":125}],61:[function(e,t,n){var r=e("bit-twiddle");function i(e,t,n,i,a,o){var s,u,l,f,c,h,p,d,g,v,m,_,w,b,y,x,k,E,A,S,T,M,R,I;for(e|=0,t|=0,a|=0,o|=0,s=n|=0,u=r.log2(s),E=0;E>1,c=0,l=0;l>=1;c+=h}for(m=-1,_=0,v=1,d=0;d>",rrshift:">>>"};!function(){for(var e in s){var t=s[e];n[e]=o({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),n[e+"eq"]=o({args:["array","array"],body:{args:["a","b"],body:"a"+t+"=b"},rvalue:!0,funcName:e+"eq"}),n[e+"s"]=o({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),n[e+"seq"]=o({args:["array","scalar"],body:{args:["a","s"],body:"a"+t+"=s"},rvalue:!0,funcName:e+"seq"})}}();var u={not:"!",bnot:"~",neg:"-",recip:"1.0/"};!function(){for(var e in u){var t=u[e];n[e]=o({args:["array","array"],body:{args:["a","b"],body:"a="+t+"b"},funcName:e}),n[e+"eq"]=o({args:["array"],body:{args:["a"],body:"a="+t+"a"},rvalue:!0,count:2,funcName:e+"eq"})}}();var l={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};!function(){for(var e in l){var t=l[e];n[e]=o({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),n[e+"s"]=o({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),n[e+"eq"]=o({args:["array","array"],body:{args:["a","b"],body:"a=a"+t+"b"},rvalue:!0,count:2,funcName:e+"eq"}),n[e+"seq"]=o({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+t+"s"},rvalue:!0,count:2,funcName:e+"seq"})}}();var f=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];!function(){for(var e=0;ethis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"}),n.norm1=r({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"}),n.sup=r({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}}),n.inf=r({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}}),n.random=o({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"}),n.assign=o({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"}),n.assigns=o({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"}),n.equals=r({args:["array","array"],pre:i,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})},{"cwise-compiler":23}],64:[function(e,t,n){"use strict";var r=e("ndarray"),i=e("./doConvert.js");t.exports=function(e,t){for(var n=[],a=e,o=1;Array.isArray(a);)n.push(a.length),o*=a.length,a=a[0];return 0===n.length?r():(t||(t=r(new Float64Array(o),n)),i(t,e),t)}},{"./doConvert.js":65,ndarray:66}],65:[function(e,t,n){t.exports=e("cwise-compiler")({args:["array","scalar","index"],pre:{body:"{}",args:[],thisVars:[],localVars:[]},body:{body:"{\nvar _inline_1_v=_inline_1_arg1_,_inline_1_i\nfor(_inline_1_i=0;_inline_1_i<_inline_1_arg2_.length-1;++_inline_1_i) {\n_inline_1_v=_inline_1_v[_inline_1_arg2_[_inline_1_i]]\n}\n_inline_1_arg0_=_inline_1_v[_inline_1_arg2_[_inline_1_arg2_.length-1]]\n}",args:[{name:"_inline_1_arg0_",lvalue:!0,rvalue:!1,count:1},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:1},{name:"_inline_1_arg2_",lvalue:!1,rvalue:!0,count:4}],thisVars:[],localVars:["_inline_1_i","_inline_1_v"]},post:{body:"{}",args:[],thisVars:[],localVars:[]},funcName:"convert",blockSize:64})},{"cwise-compiler":23}],66:[function(e,t,n){var r=e("iota-array"),i=e("is-buffer"),a="undefined"!=typeof Float64Array;function o(e,t){return e[0]-t[0]}function s(){var e,t=this.stride,n=new Array(t.length);for(e=0;eMath.abs(this.stride[1]))?[1,0]:[0,1]}})"):3===t&&a.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")):a.push("ORDER})")),a.push("proto.set=function "+n+"_set("+u.join(",")+",v){"),i?a.push("return this.data.set("+f+",v)}"):a.push("return this.data["+f+"]=v}"),a.push("proto.get=function "+n+"_get("+u.join(",")+"){"),i?a.push("return this.data.get("+f+")}"):a.push("return this.data["+f+"]}"),a.push("proto.index=function "+n+"_index(",u.join(),"){return "+f+"}"),a.push("proto.hi=function "+n+"_hi("+u.join(",")+"){return new "+n+"(this.data,"+o.map(function(e){return["(typeof i",e,"!=='number'||i",e,"<0)?this.shape[",e,"]:i",e,"|0"].join("")}).join(",")+","+o.map(function(e){return"this.stride["+e+"]"}).join(",")+",this.offset)}");var p=o.map(function(e){return"a"+e+"=this.shape["+e+"]"}),d=o.map(function(e){return"c"+e+"=this.stride["+e+"]"});a.push("proto.lo=function "+n+"_lo("+u.join(",")+"){var b=this.offset,d=0,"+p.join(",")+","+d.join(","));for(var g=0;g=0){d=i"+g+"|0;b+=c"+g+"*d;a"+g+"-=d}");a.push("return new "+n+"(this.data,"+o.map(function(e){return"a"+e}).join(",")+","+o.map(function(e){return"c"+e}).join(",")+",b)}"),a.push("proto.step=function "+n+"_step("+u.join(",")+"){var "+o.map(function(e){return"a"+e+"=this.shape["+e+"]"}).join(",")+","+o.map(function(e){return"b"+e+"=this.stride["+e+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(g=0;g=0){c=(c+this.stride["+g+"]*i"+g+")|0}else{a.push(this.shape["+g+"]);b.push(this.stride["+g+"])}");return a.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),a.push("return function construct_"+n+"(data,shape,stride,offset){return new "+n+"(data,"+o.map(function(e){return"shape["+e+"]"}).join(",")+","+o.map(function(e){return"stride["+e+"]"}).join(",")+",offset)}"),new Function("CTOR_LIST","ORDER",a.join("\n"))(l[e],s)}var l={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],buffer:[],generic:[]};t.exports=function(e,t,n,r){if(void 0===e)return(0,l.array[0])([]);"number"==typeof e&&(e=[e]),void 0===t&&(t=[e.length]);var o=t.length;if(void 0===n){n=new Array(o);for(var s=o-1,f=1;s>=0;--s)n[s]=f,f*=t[s]}if(void 0===r)for(r=0,s=0;s>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,(e|=e>>>16)+1}},{}],68:[function(e,t,n){function r(e,t,n,r){for(var i=e[t++],a=1<>=u,f-=u,v!==a){if(v===o)break;for(var m=va;)w=d[w]>>8,++_;var b=w;if(h+_+(m!==v?1:0)>r)return void console.log("Warning, gif stream longer than expected.");n[h++]=b;var y=h+=_;for(m!==v&&(n[h++]=b),w=m;_--;)w=d[w],n[--y]=255&w,w>>=8;null!==g&&s<4096&&(d[s++]=g<<8|b,s>=l+1&&u<12&&(++u,l=l<<1|1)),g=v}else s=o+1,l=(1<<(u=i+1))-1,g=null}return h!==r&&console.log("Warning, gif stream shorter than expected."),n}try{n.GifWriter=function(e,t,n,r){var i=0,a=void 0===(r=void 0===r?{}:r).loop?null:r.loop,o=void 0===r.palette?null:r.palette;if(t<=0||n<=0||t>65535||n>65535)throw"Width/Height invalid.";function s(e){var t=e.length;if(t<2||t>256||t&t-1)throw"Invalid code/color length, must be power of 2 and 2 .. 256.";return t}e[i++]=71,e[i++]=73,e[i++]=70,e[i++]=56,e[i++]=57,e[i++]=97;var u=0,l=0;if(null!==o){for(var f=s(o);f>>=1;)++u;if(f=1<=f)throw"Background index out of range.";if(0===l)throw"Background index explicitly passed as 0."}}if(e[i++]=255&t,e[i++]=t>>8&255,e[i++]=255&n,e[i++]=n>>8&255,e[i++]=(null!==o?128:0)|u,e[i++]=l,e[i++]=0,null!==o)for(var c=0,h=o.length;c>16&255,e[i++]=p>>8&255,e[i++]=255&p}if(null!==a){if(a<0||a>65535)throw"Loop count invalid.";e[i++]=33,e[i++]=255,e[i++]=11,e[i++]=78,e[i++]=69,e[i++]=84,e[i++]=83,e[i++]=67,e[i++]=65,e[i++]=80,e[i++]=69,e[i++]=50,e[i++]=46,e[i++]=48,e[i++]=3,e[i++]=1,e[i++]=255&a,e[i++]=a>>8&255,e[i++]=0}var d=!1;this.addFrame=function(t,n,r,a,u,l){if(!0===d&&(--i,d=!1),l=void 0===l?{}:l,t<0||n<0||t>65535||n>65535)throw"x/y invalid.";if(r<=0||a<=0||r>65535||a>65535)throw"Width/Height invalid.";if(u.length>=1;)++p;h=1<3)throw"Disposal out of range.";var m=!1,_=0;if(void 0!==l.transparent&&null!==l.transparent&&(m=!0,(_=l.transparent)<0||_>=h))throw"Transparent color index.";if((0!==v||m||0!==g)&&(e[i++]=33,e[i++]=249,e[i++]=4,e[i++]=v<<2|(!0===m?1:0),e[i++]=255&g,e[i++]=g>>8&255,e[i++]=_,e[i++]=0),e[i++]=44,e[i++]=255&t,e[i++]=t>>8&255,e[i++]=255&n,e[i++]=n>>8&255,e[i++]=255&r,e[i++]=r>>8&255,e[i++]=255&a,e[i++]=a>>8&255,e[i++]=!0===f?128|p-1:0,!0===f)for(var w=0,b=c.length;w>16&255,e[i++]=y>>8&255,e[i++]=255&y}i=function(e,t,n,r){e[t++]=n;var i=t++,a=1<=n;)e[t++]=255&c,c>>=8,f-=8,t===i+256&&(e[i]=255,i=t++)}function p(e){c|=e<=8;)e[t++]=255&c,c>>=8,f-=8,t===i+256&&(e[i]=255,i=t++);4096===u?(p(a),u=s+1,l=n+1,g={}):(u>=1<>7,s=1<<1+(7&a);e[t++],e[t++];var u=null;o&&(u=t,t+=3*s);var l=!0,f=[],c=0,h=null,p=0,d=null;for(this.width=n,this.height=i;l&&t>2&7,t++;break;case 254:for(;0!==(A=e[t++]);)t+=A;break;default:throw"Unknown graphic control label: 0x"+e[t-1].toString(16)}break;case 44:var v=e[t++]|e[t++]<<8,m=e[t++]|e[t++]<<8,_=e[t++]|e[t++]<<8,w=e[t++]|e[t++]<<8,b=e[t++],y=b>>6&1,x=u,k=!1;b>>7&&(k=!0,x=t,t+=3*(1<<1+(7&b)));var E=t;for(t++;;){var A;if(0===(A=e[t++]))break;t+=A}f.push({x:v,y:m,width:_,height:w,has_local_palette:k,palette_offset:x,data_offset:E,data_length:t-E,transparent_index:h,interlaced:!!y,delay:c,disposal:p});break;case 59:l=!1;break;default:throw"Unknown gif block: 0x"+e[t-1].toString(16)}this.numFrames=function(){return f.length},this.loopCount=function(){return d},this.frameInfo=function(e){if(e<0||e>=f.length)throw"Frame index out of range.";return f[e]},this.decodeAndBlitFrameBGRA=function(t,i){var a=this.frameInfo(t),o=a.width*a.height,s=new Uint8Array(o);r(e,a.data_offset,s,o);var u=a.palette_offset,l=a.transparent_index;null===l&&(l=256);var f=a.width,c=n-f,h=f,p=4*(a.y*n+a.x),d=4*((a.y+a.height)*n+a.x),g=p,v=4*c;!0===a.interlaced&&(v+=4*n*7);for(var m=8,_=0,w=s.length;_=d&&(v=4*c+4*n*(m-1),g=p+(f+c)*(m<<1),m>>=1)),b===l)g+=4;else{var y=e[u+3*b],x=e[u+3*b+1],k=e[u+3*b+2];i[g++]=k,i[g++]=x,i[g++]=y,i[g++]=255}--h}},this.decodeAndBlitFrameRGBA=function(t,i){var a=this.frameInfo(t),o=a.width*a.height,s=new Uint8Array(o);r(e,a.data_offset,s,o);var u=a.palette_offset,l=a.transparent_index;null===l&&(l=256);var f=a.width,c=n-f,h=f,p=4*(a.y*n+a.x),d=4*((a.y+a.height)*n+a.x),g=p,v=4*c;!0===a.interlaced&&(v+=4*n*7);for(var m=8,_=0,w=s.length;_=d&&(v=4*c+4*n*(m-1),g=p+(f+c)*(m<<1),m>>=1)),b===l)g+=4;else{var y=e[u+3*b],x=e[u+3*b+1],k=e[u+3*b+2];i[g++]=y,i[g++]=x,i[g++]=k,i[g++]=255}--h}}}}catch(e){}},{}],69:[function(e,t,n){(function(n){var r=e("charm");function i(e){if(!(e=e||{}).total)throw new Error("You MUST specify the total number of operations that will be processed.");this.total=e.total,this.current=0,this.max_burden=e.maxBurden||.5,this.show_burden=e.showBurden||!1,this.started=!1,this.size=50,this.inner_time=0,this.outer_time=0,this.elapsed=0,this.time_start=0,this.time_end=0,this.time_left=0,this.time_burden=0,this.skip_steps=0,this.skipped=0,this.aborted=!1,this.charm=r(),this.charm.pipe(n.stdout),this.charm.write("\n\n\n")}function a(e,t,n){for(n=n||" ";e.length3&&(u[0]=u[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,o)),(u[1]||"").length=this.total&&this.finished(),this.time_end=(new Date).getTime(),this.inner_time=this.time_end-this.time_start)},i.prototype.updateTimes=function(){this.elapsed=this.time_start-this.started,this.time_end>0&&(this.outer_time=this.time_start-this.time_end),this.inner_time>0&&this.outer_time>0&&(this.time_burden=this.inner_time/(this.inner_time+this.outer_time)*100,this.time_left=this.elapsed/this.current*(this.total-this.current),this.time_left<0&&(this.time_left=0)),this.time_burden>this.max_burden&&this.skip_steps0&&this.current>>16&65535|0,o=0;0!==n;){n-=o=n>2e3?2e3:n;do{a=a+(i=i+t[r++]|0)|0}while(--o);i%=65521,a%=65521}return i|a<<16|0}},{}],72:[function(e,t,n){"use strict";t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],73:[function(e,t,n){"use strict";var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t,n,i){var a=r,o=i+n;e^=-1;for(var s=i;s>>8^a[255&(e^t[s])];return-1^e}},{}],74:[function(e,t,n){"use strict";var r,i=e("../utils/common"),a=e("./trees"),o=e("./adler32"),s=e("./crc32"),u=e("./messages"),l=0,f=1,c=3,h=4,p=5,d=0,g=1,v=-2,m=-3,_=-5,w=-1,b=1,y=2,x=3,k=4,E=0,A=2,S=8,T=9,M=15,R=8,I=286,j=30,C=19,L=2*I+1,B=15,D=3,z=258,P=z+D+1,O=32,N=42,U=69,F=73,q=91,V=103,W=113,Z=666,G=1,Y=2,H=3,X=4,$=3;function K(e,t){return e.msg=u[t],t}function J(e){return(e<<1)-(e>4?9:0)}function Q(e){for(var t=e.length;--t>=0;)e[t]=0}function ee(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function te(e,t){a._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ee(e.strm)}function ne(e,t){e.pending_buf[e.pending++]=t}function re(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function ie(e,t){var n,r,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,u=e.strstart>e.w_size-P?e.strstart-(e.w_size-P):0,l=e.window,f=e.w_mask,c=e.prev,h=e.strstart+z,p=l[a+o-1],d=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(n=t)+o]===d&&l[n+o-1]===p&&l[n]===l[a]&&l[++n]===l[a+1]){a+=2,n++;do{}while(l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&ao){if(e.match_start=t,o=r,r>=s)break;p=l[a+o-1],d=l[a+o]}}}while((t=c[t&f])>u&&0!=--i);return o<=e.lookahead?o:e.lookahead}function ae(e){var t,n,r,a,u,l,f,c,h,p,d=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=d+(d-P)){i.arraySet(e.window,e.window,d,d,0),e.match_start-=d,e.strstart-=d,e.block_start-=d,t=n=e.hash_size;do{r=e.head[--t],e.head[t]=r>=d?r-d:0}while(--n);t=n=d;do{r=e.prev[--t],e.prev[t]=r>=d?r-d:0}while(--n);a+=d}if(0===e.strm.avail_in)break;if(l=e.strm,f=e.window,c=e.strstart+e.lookahead,h=a,p=void 0,(p=l.avail_in)>h&&(p=h),n=0===p?0:(l.avail_in-=p,i.arraySet(f,l.input,l.next_in,p,c),1===l.state.wrap?l.adler=o(l.adler,f,p,c):2===l.state.wrap&&(l.adler=s(l.adler,f,p,c)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=n,e.lookahead+e.insert>=D)for(u=e.strstart-e.insert,e.ins_h=e.window[u],e.ins_h=(e.ins_h<=D&&(e.ins_h=(e.ins_h<=D)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-D),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=D){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<=D&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=D-1)),e.prev_length>=D&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-D,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-D),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<15&&(s=2,r-=16),a<1||a>T||n!==S||r<8||r>15||t<0||t>9||o<0||o>k)return K(e,v);8===r&&(r=9);var u=new function(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=S,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*L),this.dyn_dtree=new i.Buf16(2*(2*j+1)),this.bl_tree=new i.Buf16(2*(2*C+1)),Q(this.dyn_ltree),Q(this.dyn_dtree),Q(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(B+1),this.heap=new i.Buf16(2*I+1),Q(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*I+1),Q(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0};return e.state=u,u.strm=e,u.wrap=s,u.gzhead=null,u.w_bits=r,u.w_size=1<e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(ae(e),0===e.lookahead&&t===l)return G;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,te(e,!1),0===e.strm.avail_out))return G;if(e.strstart-e.block_start>=e.w_size-P&&(te(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(te(e,!0),0===e.strm.avail_out?H:X):(e.strstart>e.block_start&&(te(e,!1),e.strm.avail_out),G)}),new ue(4,4,8,4,oe),new ue(4,5,16,8,oe),new ue(4,6,32,32,oe),new ue(4,4,16,16,se),new ue(8,16,32,32,se),new ue(8,16,128,128,se),new ue(8,32,128,256,se),new ue(32,128,258,1024,se),new ue(32,258,258,4096,se)],n.deflateInit=function(e,t){return ce(e,t,S,M,R,E)},n.deflateInit2=ce,n.deflateReset=fe,n.deflateResetKeep=le,n.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?v:(e.state.gzhead=t,d):v},n.deflate=function(e,t){var n,i,o,u;if(!e||!e.state||t>p||t<0)return e?K(e,v):v;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===Z&&t!==h)return K(e,0===e.avail_out?_:v);if(i.strm=e,n=i.last_flush,i.last_flush=t,i.status===N)if(2===i.wrap)e.adler=0,ne(i,31),ne(i,139),ne(i,8),i.gzhead?(ne(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),ne(i,255&i.gzhead.time),ne(i,i.gzhead.time>>8&255),ne(i,i.gzhead.time>>16&255),ne(i,i.gzhead.time>>24&255),ne(i,9===i.level?2:i.strategy>=y||i.level<2?4:0),ne(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(ne(i,255&i.gzhead.extra.length),ne(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=U):(ne(i,0),ne(i,0),ne(i,0),ne(i,0),ne(i,0),ne(i,9===i.level?2:i.strategy>=y||i.level<2?4:0),ne(i,$),i.status=W);else{var m=S+(i.w_bits-8<<4)<<8;m|=(i.strategy>=y||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(m|=O),m+=31-m%31,i.status=W,re(i,m),0!==i.strstart&&(re(i,e.adler>>>16),re(i,65535&e.adler)),e.adler=1}if(i.status===U)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending!==i.pending_buf_size));)ne(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=F)}else i.status=F;if(i.status===F)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.gzindex=0,i.status=q)}else i.status=q;if(i.status===q)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),ee(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.status=V)}else i.status=V;if(i.status===V&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&ee(e),i.pending+2<=i.pending_buf_size&&(ne(i,255&e.adler),ne(i,e.adler>>8&255),e.adler=0,i.status=W)):i.status=W),0!==i.pending){if(ee(e),0===e.avail_out)return i.last_flush=-1,d}else if(0===e.avail_in&&J(t)<=J(n)&&t!==h)return K(e,_);if(i.status===Z&&0!==e.avail_in)return K(e,_);if(0!==e.avail_in||0!==i.lookahead||t!==l&&i.status!==Z){var w=i.strategy===y?function(e,t){for(var n;;){if(0===e.lookahead&&(ae(e),0===e.lookahead)){if(t===l)return G;break}if(e.match_length=0,n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(te(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(te(e,!0),0===e.strm.avail_out?H:X):e.last_lit&&(te(e,!1),0===e.strm.avail_out)?G:Y}(i,t):i.strategy===x?function(e,t){for(var n,r,i,o,s=e.window;;){if(e.lookahead<=z){if(ae(e),e.lookahead<=z&&t===l)return G;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=D&&e.strstart>0&&(r=s[i=e.strstart-1])===s[++i]&&r===s[++i]&&r===s[++i]){o=e.strstart+z;do{}while(r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=D?(n=a._tr_tally(e,1,e.match_length-D),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(te(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(te(e,!0),0===e.strm.avail_out?H:X):e.last_lit&&(te(e,!1),0===e.strm.avail_out)?G:Y}(i,t):r[i.level].func(i,t);if(w!==H&&w!==X||(i.status=Z),w===G||w===H)return 0===e.avail_out&&(i.last_flush=-1),d;if(w===Y&&(t===f?a._tr_align(i):t!==p&&(a._tr_stored_block(i,0,0,!1),t===c&&(Q(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),ee(e),0===e.avail_out))return i.last_flush=-1,d}return t!==h?d:i.wrap<=0?g:(2===i.wrap?(ne(i,255&e.adler),ne(i,e.adler>>8&255),ne(i,e.adler>>16&255),ne(i,e.adler>>24&255),ne(i,255&e.total_in),ne(i,e.total_in>>8&255),ne(i,e.total_in>>16&255),ne(i,e.total_in>>24&255)):(re(i,e.adler>>>16),re(i,65535&e.adler)),ee(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?d:g)},n.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==N&&t!==U&&t!==F&&t!==q&&t!==V&&t!==W&&t!==Z?K(e,v):(e.state=null,t===W?K(e,m):d):v},n.deflateSetDictionary=function(e,t){var n,r,a,s,u,l,f,c,h=t.length;if(!e||!e.state)return v;if(2===(s=(n=e.state).wrap)||1===s&&n.status!==N||n.lookahead)return v;for(1===s&&(e.adler=o(e.adler,t,h,0)),n.wrap=0,h>=n.w_size&&(0===s&&(Q(n.head),n.strstart=0,n.block_start=0,n.insert=0),c=new i.Buf8(n.w_size),i.arraySet(c,t,h-n.w_size,n.w_size,0),t=c,h=n.w_size),u=e.avail_in,l=e.next_in,f=e.input,e.avail_in=h,e.next_in=0,e.input=t,ae(n);n.lookahead>=D;){r=n.strstart,a=n.lookahead-(D-1);do{n.ins_h=(n.ins_h<>>=b=w>>>24,d-=b,0===(b=w>>>16&255))S[a++]=65535&w;else{if(!(16&b)){if(0==(64&b)){w=g[(65535&w)+(p&(1<>>=b,d-=b),d<15&&(p+=A[r++]<>>=b=w>>>24,d-=b,!(16&(b=w>>>16&255))){if(0==(64&b)){w=v[(65535&w)+(p&(1<u){e.msg="invalid distance too far back",n.mode=30;break e}if(p>>>=b,d-=b,x>(b=a-o)){if((b=x-b)>f&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(k=0,E=h,0===c){if(k+=l-b,b2;)S[a++]=E[k++],S[a++]=E[k++],S[a++]=E[k++],y-=3;y&&(S[a++]=E[k++],y>1&&(S[a++]=E[k++]))}else{k=a-x;do{S[a++]=S[k++],S[a++]=S[k++],S[a++]=S[k++],y-=3}while(y>2);y&&(S[a++]=S[k++],y>1&&(S[a++]=S[k++]))}break}}break}}while(r>3,p&=(1<<(d-=y<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function ie(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=x,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(ee),t.distcode=t.distdyn=new r.Buf32(te),t.sane=1,t.back=-1,d):m}function ae(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,ie(e)):m}function oe(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?m:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,ae(e))):m}function se(e,t){var n,i;return e?(i=new function(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0},e.state=i,i.window=null,(n=oe(e,t))!==d&&(e.state=null),n):m}var ue,le,fe=!0;function ce(e){if(fe){var t;for(ue=new r.Buf32(512),le=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(l,e.lens,0,288,ue,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(f,e.lens,0,32,le,0,e.work,{bits:5}),fe=!1}e.lencode=ue,e.lenbits=9,e.distcode=le,e.distbits=5}function he(e,t,n,i){var a,o=e.state;return null===o.window&&(o.wsize=1<=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((a=o.wsize-o.wnext)>i&&(a=i),r.arraySet(o.window,t,n-i,a,o.wnext),(i-=a)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,n.check=a(n.check,Te,2,0),se=0,ue=0,n.mode=k;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&se)<<8)+(se>>8))%31){e.msg="incorrect header check",n.mode=K;break}if((15&se)!==y){e.msg="unknown compression method",n.mode=K;break}if(ue-=4,xe=8+(15&(se>>>=4)),0===n.wbits)n.wbits=xe;else if(xe>n.wbits){e.msg="invalid window size",n.mode=K;break}n.dmax=1<>8&1),512&n.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,n.check=a(n.check,Te,2,0)),se=0,ue=0,n.mode=E;case E:for(;ue<32;){if(0===ae)break e;ae--,se+=ee[ne++]<>>8&255,Te[2]=se>>>16&255,Te[3]=se>>>24&255,n.check=a(n.check,Te,4,0)),se=0,ue=0,n.mode=A;case A:for(;ue<16;){if(0===ae)break e;ae--,se+=ee[ne++]<>8),512&n.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,n.check=a(n.check,Te,2,0)),se=0,ue=0,n.mode=S;case S:if(1024&n.flags){for(;ue<16;){if(0===ae)break e;ae--,se+=ee[ne++]<>>8&255,n.check=a(n.check,Te,2,0)),se=0,ue=0}else n.head&&(n.head.extra=null);n.mode=T;case T:if(1024&n.flags&&((pe=n.length)>ae&&(pe=ae),pe&&(n.head&&(xe=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,ee,ne,pe,xe)),512&n.flags&&(n.check=a(n.check,ee,pe,ne)),ae-=pe,ne+=pe,n.length-=pe),n.length))break e;n.length=0,n.mode=M;case M:if(2048&n.flags){if(0===ae)break e;pe=0;do{xe=ee[ne+pe++],n.head&&xe&&n.length<65536&&(n.head.name+=String.fromCharCode(xe))}while(xe&&pe>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=L;break;case j:for(;ue<32;){if(0===ae)break e;ae--,se+=ee[ne++]<>>=7&ue,ue-=7&ue,n.mode=H;break}for(;ue<3;){if(0===ae)break e;ae--,se+=ee[ne++]<>>=1)){case 0:n.mode=D;break;case 1:if(ce(n),n.mode=F,t===p){se>>>=2,ue-=2;break e}break;case 2:n.mode=O;break;case 3:e.msg="invalid block type",n.mode=K}se>>>=2,ue-=2;break;case D:for(se>>>=7&ue,ue-=7&ue;ue<32;){if(0===ae)break e;ae--,se+=ee[ne++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=K;break}if(n.length=65535&se,se=0,ue=0,n.mode=z,t===p)break e;case z:n.mode=P;case P:if(pe=n.length){if(pe>ae&&(pe=ae),pe>oe&&(pe=oe),0===pe)break e;r.arraySet(te,ee,ne,pe,ie),ae-=pe,ne+=pe,oe-=pe,ie+=pe,n.length-=pe;break}n.mode=L;break;case O:for(;ue<14;){if(0===ae)break e;ae--,se+=ee[ne++]<>>=5,ue-=5,n.ndist=1+(31&se),se>>>=5,ue-=5,n.ncode=4+(15&se),se>>>=4,ue-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=K;break}n.have=0,n.mode=N;case N:for(;n.have>>=3,ue-=3}for(;n.have<19;)n.lens[Me[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,Ee={bits:n.lenbits},ke=s(u,n.lens,0,19,n.lencode,0,n.work,Ee),n.lenbits=Ee.bits,ke){e.msg="invalid code lengths set",n.mode=K;break}n.have=0,n.mode=U;case U:for(;n.have>>16&255,_e=65535&Se,!((ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>>=ve,ue-=ve,n.lens[n.have++]=_e;else{if(16===_e){for(Ae=ve+2;ue>>=ve,ue-=ve,0===n.have){e.msg="invalid bit length repeat",n.mode=K;break}xe=n.lens[n.have-1],pe=3+(3&se),se>>>=2,ue-=2}else if(17===_e){for(Ae=ve+3;ue>>=ve)),se>>>=3,ue-=3}else{for(Ae=ve+7;ue>>=ve)),se>>>=7,ue-=7}if(n.have+pe>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=K;break}for(;pe--;)n.lens[n.have++]=xe}}if(n.mode===K)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=K;break}if(n.lenbits=9,Ee={bits:n.lenbits},ke=s(l,n.lens,0,n.nlen,n.lencode,0,n.work,Ee),n.lenbits=Ee.bits,ke){e.msg="invalid literal/lengths set",n.mode=K;break}if(n.distbits=6,n.distcode=n.distdyn,Ee={bits:n.distbits},ke=s(f,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,Ee),n.distbits=Ee.bits,ke){e.msg="invalid distances set",n.mode=K;break}if(n.mode=F,t===p)break e;case F:n.mode=q;case q:if(ae>=6&&oe>=258){e.next_out=ie,e.avail_out=oe,e.next_in=ne,e.avail_in=ae,n.hold=se,n.bits=ue,o(e,fe),ie=e.next_out,te=e.output,oe=e.avail_out,ne=e.next_in,ee=e.input,ae=e.avail_in,se=n.hold,ue=n.bits,n.mode===L&&(n.back=-1);break}for(n.back=0;me=(Se=n.lencode[se&(1<>>16&255,_e=65535&Se,!((ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>we)])>>>16&255,_e=65535&Se,!(we+(ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>>=we,ue-=we,n.back+=we}if(se>>>=ve,ue-=ve,n.back+=ve,n.length=_e,0===me){n.mode=Y;break}if(32&me){n.back=-1,n.mode=L;break}if(64&me){e.msg="invalid literal/length code",n.mode=K;break}n.extra=15&me,n.mode=V;case V:if(n.extra){for(Ae=n.extra;ue>>=n.extra,ue-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=W;case W:for(;me=(Se=n.distcode[se&(1<>>16&255,_e=65535&Se,!((ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>we)])>>>16&255,_e=65535&Se,!(we+(ve=Se>>>24)<=ue);){if(0===ae)break e;ae--,se+=ee[ne++]<>>=we,ue-=we,n.back+=we}if(se>>>=ve,ue-=ve,n.back+=ve,64&me){e.msg="invalid distance code",n.mode=K;break}n.offset=_e,n.extra=15&me,n.mode=Z;case Z:if(n.extra){for(Ae=n.extra;ue>>=n.extra,ue-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=K;break}n.mode=G;case G:if(0===oe)break e;if(pe=fe-oe,n.offset>pe){if((pe=n.offset-pe)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=K;break}pe>n.wnext?(pe-=n.wnext,de=n.wsize-pe):de=n.wnext-pe,pe>n.length&&(pe=n.length),ge=n.window}else ge=te,de=ie-n.offset,pe=n.length;pe>oe&&(pe=oe),oe-=pe,n.length-=pe;do{te[ie++]=ge[de++]}while(--pe);0===n.length&&(n.mode=q);break;case Y:if(0===oe)break e;te[ie++]=n.length,oe--,n.mode=q;break;case H:if(n.wrap){for(;ue<32;){if(0===ae)break e;ae--,se|=ee[ne++]<=1&&0===D[S];S--);if(T>S&&(T=S),0===S)return l[f++]=20971520,l[f++]=20971520,h.bits=1,0;for(A=1;A0&&(0===e||1!==S))return-1;for(z[1]=0,k=1;k<15;k++)z[k+1]=z[k]+D[k];for(E=0;E852||2===e&&j>592)return 1;for(;;){0,w=k-R,c[E]<_?(b=0,y=c[E]):c[E]>_?(b=P[O+c[E]],y=L[B+c[E]]):(b=96,y=0),p=1<>R)+(d-=p)]=w<<24|b<<16|y|0}while(0!==d);for(p=1<>=1;if(0!==p?(C&=p-1,C+=p):C=0,E++,0==--D[k]){if(k===S)break;k=t[n+c[E]]}if(k>T&&(C&v)!==g){for(0===R&&(R=T),m+=A,I=1<<(M=k-R);M+R852||2===e&&j>592)return 1;l[g=C&v]=T<<24|M<<16|m-f|0}}return 0!==C&&(l[m+C]=k-R<<24|64<<16|0),h.bits=T,0}},{"../utils/common":70}],78:[function(e,t,n){"use strict";t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],79:[function(e,t,n){"use strict";var r=e("../utils/common"),i=4,a=0,o=1,s=2;function u(e){for(var t=e.length;--t>=0;)e[t]=0}var l=0,f=1,c=2,h=29,p=256,d=p+1+h,g=30,v=19,m=2*d+1,_=15,w=16,b=7,y=256,x=16,k=17,E=18,A=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],S=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],T=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],M=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],R=new Array(2*(d+2));u(R);var I=new Array(2*g);u(I);var j=new Array(512);u(j);var C=new Array(256);u(C);var L=new Array(h);u(L);var B,D,z,P=new Array(g);function O(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function N(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function U(e){return e<256?j[e]:j[256+(e>>>7)]}function F(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function q(e,t,n){e.bi_valid>w-n?(e.bi_buf|=t<>w-e.bi_valid,e.bi_valid+=n-w):(e.bi_buf|=t<>>=1,n<<=1}while(--t>0);return n>>>1}function Z(e,t,n){var r,i,a=new Array(_+1),o=0;for(r=1;r<=_;r++)a[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=W(a[s]++,s))}}function G(e){var t;for(t=0;t8?F(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function H(e,t,n,r){var i=2*t,a=2*n;return e[i]>1;n>=1;n--)X(e,a,n);i=u;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],X(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,a[2*i]=a[2*n]+a[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,a[2*n+1]=a[2*r+1]=i,e.heap[1]=i++,X(e,a,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,a,o,s,u=t.dyn_tree,l=t.max_code,f=t.stat_desc.static_tree,c=t.stat_desc.has_stree,h=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,d=t.stat_desc.max_length,g=0;for(a=0;a<=_;a++)e.bl_count[a]=0;for(u[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;nd&&(a=d,g++),u[2*r+1]=a,r>l||(e.bl_count[a]++,o=0,r>=p&&(o=h[r-p]),s=u[2*r],e.opt_len+=s*(a+o),c&&(e.static_len+=s*(f[2*r+1]+o)));if(0!==g){do{for(a=d-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[d]--,g-=2}while(g>0);for(a=d;0!==a;a--)for(r=e.bl_count[a];0!==r;)(i=e.heap[--n])>l||(u[2*i+1]!==a&&(e.opt_len+=(a-u[2*i+1])*u[2*i],u[2*i+1]=a),r--)}}(e,t),Z(a,l,e.bl_count)}function J(e,t,n){var r,i,a=-1,o=t[1],s=0,u=7,l=4;for(0===o&&(u=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=o,o=t[2*(r+1)+1],++s>=7;r0?(e.strm.data_type===s&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return a;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return o;for(t=32;t=3&&0===e.bl_tree[2*M[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),u=e.opt_len+3+7>>>3,(l=e.static_len+3+7>>>3)<=u&&(u=l)):u=l=n+5,n+4<=u&&-1!==t?te(e,t,n,r):e.strategy===i||l===u?(q(e,(f<<1)+(r?1:0),3),$(e,R,I)):(q(e,(c<<1)+(r?1:0),3),function(e,t,n,r){var i;for(q(e,t-257,5),q(e,n-1,5),q(e,r-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(C[n]+p+1)]++,e.dyn_dtree[2*U(t)]++),e.last_lit===e.lit_bufsize-1},n._tr_align=function(e){q(e,f<<1,3),V(e,y,R),function(e){16===e.bi_valid?(F(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":70}],80:[function(e,t,n){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],81:[function(e,t,n){(function(e){function t(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}var r=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,i=function(e){return r.exec(e).slice(1)};function a(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!r;i--){var o=i>=0?arguments[i]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(n=o+"/"+n,r="/"===o.charAt(0))}return n=t(a(n.split("/"),function(e){return!!e}),!r).join("/"),(r?"/":"")+n||"."},n.normalize=function(e){var r=n.isAbsolute(e),i="/"===o(e,-1);return(e=t(a(e.split("/"),function(e){return!!e}),!r).join("/"))||r||(e="."),e&&i&&(e+="/"),(r?"/":"")+e},n.isAbsolute=function(e){return"/"===e.charAt(0)},n.join=function(){var e=Array.prototype.slice.call(arguments,0);return n.normalize(a(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},n.relative=function(e,t){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=n.resolve(e).substr(1),t=n.resolve(t).substr(1);for(var i=r(e.split("/")),a=r(t.split("/")),o=Math.min(i.length,a.length),s=o,u=0;u>4,n.push(c,f);break;case 2:u=3&h,l=h>>2&3,f=h>>4&3,c=h>>6&3,n.push(c,f,l,u);break;case 1:i=1&h,a=h>>1&1,o=h>>2&1,s=h>>3&1,u=h>>4&1,l=h>>5&1,f=h>>6&1,c=h>>7&1,n.push(c,f,l,u,s,o,a,i)}}return{get:function(e){for(;n.length0&&(this._paused=!1,this.emit("drain"))}.bind(this))},o.prototype.write=function(e,t){return this.writable?(n=r.isBuffer(e)?e:new r(e,t||this._encoding),this._buffers.push(n),this._buffered+=n.length,this._process(),this._reads&&0===this._reads.length&&(this._paused=!0),this.writable&&!this._paused):(this.emit("error",new Error("Stream not writable")),!1);var n},o.prototype.end=function(e,t){e&&this.write(e,t),this.writable=!1,this._buffers&&(0===this._buffers.length?this._end():(this._buffers.push(null),this._process()))},o.prototype.destroySoon=o.prototype.end,o.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("There are some read requests waitng on finished stream")),this.destroy()},o.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},o.prototype._processReadAllowingLess=function(e){this._reads.shift();var t=this._buffers[0];t.length>e.length?(this._buffered-=e.length,this._buffers[0]=t.slice(e.length),e.func.call(this,t.slice(0,e.length))):(this._buffered-=t.length,this._buffers.shift(),e.func.call(this,t))},o.prototype._processRead=function(e){this._reads.shift();for(var t=0,n=0,i=new r(e.length);t0&&this._buffers.splice(0,n),this._buffered-=e.length,e.func.call(this,i)},o.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){var e=this._reads[0];if(e.allowLess)this._processReadAllowingLess(e);else{if(!(this._buffered>=e.length))break;this._processRead(e)}}this._buffers&&this._buffers.length>0&&null===this._buffers[0]&&this._end()}catch(e){this.emit("error",e)}}}).call(this,e("_process"),e("buffer").Buffer)},{_process:104,buffer:8,stream:121,util:131}],85:[function(e,t,n){"use strict";t.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}},{}],86:[function(e,t,n){"use strict";var r=[];!function(){for(var e=0;e<256;e++){for(var t=e,n=0;n<8;n++)1&t?t=3988292384^t>>>1:t>>>=1;r[e]=t}}();var i=t.exports=function(){this._crc=-1};i.prototype.write=function(e){for(var t=0;t>>8;return!0},i.prototype.crc32=function(){return-1^this._crc},i.crc32=function(e){for(var t=-1,n=0;n>>8;return-1^t}},{}],87:[function(e,t,n){(function(n){"use strict";var r=e("./paeth-predictor");var i={0:function(e,t,n,r,i){e.copy(r,i,t,t+n)},1:function(e,t,n,r,i,a){for(var o=0;o=a?e[t+o-a]:0,u=e[t+o]-s;r[i+o]=u}},2:function(e,t,n,r,i){for(var a=0;a0?e[t+a-n]:0,s=e[t+a]-o;r[i+a]=s}},3:function(e,t,n,r,i,a){for(var o=0;o=a?e[t+o-a]:0,u=t>0?e[t+o-n]:0,l=e[t+o]-(s+u>>1);r[i+o]=l}},4:function(e,t,n,i,a,o){for(var s=0;s=o?e[t+s-o]:0,l=t>0?e[t+s-n]:0,f=t>0&&s>=o?e[t+s-(n+o)]:0,c=e[t+s]-r(u,l,f);i[a+s]=c}}},a={0:function(e,t,n){for(var r=0,i=t+n,a=t;a=r?e[t+a-r]:0,s=e[t+a]-o;i+=Math.abs(s)}return i},2:function(e,t,n){for(var r=0,i=t+n,a=t;a0?e[a-n]:0,s=e[a]-o;r+=Math.abs(s)}return r},3:function(e,t,n,r){for(var i=0,a=0;a=r?e[t+a-r]:0,s=t>0?e[t+a-n]:0,u=e[t+a]-(o+s>>1);i+=Math.abs(u)}return i},4:function(e,t,n,i){for(var a=0,o=0;o=i?e[t+o-i]:0,u=t>0?e[t+o-n]:0,l=t>0&&o>=i?e[t+o-(n+i)]:0,f=e[t+o]-r(s,u,l);a+=Math.abs(f)}return a}};t.exports=function(e,t,r,o,s){var u;if("filterType"in o&&-1!==o.filterType){if("number"!=typeof o.filterType)throw new Error("unrecognised filter types");u=[o.filterType]}else u=[0,1,2,3,4];for(var l=t*s,f=0,c=0,h=new n((l+1)*r),p=u[0],d=0;d1)for(var g=1/0,v=0;vi?t[a-r]:0;t[a]=o+s}},o.prototype._unFilterType2=function(e,t,n){for(var r=this._lastLine,i=0;ii?t[o-r]:0,f=Math.floor((l+u)/2);t[o]=s+f}},o.prototype._unFilterType4=function(e,t,n){for(var r=this._xComparison,a=r-1,o=this._lastLine,s=0;sa?t[s-r]:0,c=s>a&&o?o[s-r]:0,h=i(f,l,c);t[s]=u+h}},o.prototype._reverseFilterLine=function(e){var t,r=e[0],i=this._images[this._imageIndex],a=i.byteWidth;if(0===r)t=e.slice(1,a+1);else switch(t=new n(a),r){case 1:this._unFilterType1(e,t,a);break;case 2:this._unFilterType2(e,t,a);break;case 3:this._unFilterType3(e,t,a);break;case 4:this._unFilterType4(e,t,a);break;default:throw new Error("Unrecognised filter type - "+r)}this.write(t),i.lineIndex++,i.lineIndex>=i.height?(this._lastLine=null,this._imageIndex++,i=this._images[this._imageIndex]):this._lastLine=t,i?this.read(i.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}}).call(this,e("buffer").Buffer)},{"./interlace":92,"./paeth-predictor":96,buffer:8}],91:[function(e,t,n){(function(e){"use strict";t.exports=function(t,n){var r=n.depth,i=n.width,a=n.height,o=n.colorType,s=n.transColor,u=n.palette,l=t;return 3===o?function(e,t,n,r,i){for(var a=0,o=0;o0&&c>0&&n.push({width:f,height:c,index:u})}return n},n.getInterlaceIterator=function(e){return function(t,n,i){var a=t%r[i].x.length,o=(t-a)/r[i].x.length*8+r[i].x[a],s=n%r[i].y.length;return 4*o+((n-s)/r[i].y.length*8+r[i].y[s])*e*4}}},{}],93:[function(e,t,n){(function(n){"use strict";var r=e("util"),i=e("stream"),a=e("./constants"),o=e("./packer"),s=t.exports=function(e){i.call(this);var t=e||{};this._packer=new o(t),this._deflate=this._packer.createDeflate(),this.readable=!0};r.inherits(s,i),s.prototype.pack=function(e,t,r,i){this.emit("data",new n(a.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(t,r)),i&&this.emit("data",this._packer.packGAMA(i));var o=this._packer.filterData(e,t,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(e){this.emit("data",this._packer.packIDAT(e))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(o)}}).call(this,e("buffer").Buffer)},{"./constants":85,"./packer":95,buffer:8,stream:121,util:131}],94:[function(e,t,n){(function(n){"use strict";var r=!0,i=e("zlib");i.deflateSync||(r=!1);var a=e("./constants"),o=e("./packer");t.exports=function(e,t){if(!r)throw new Error("To use the sync capability of this library in old node versions, please also add a dependency on node-zlb-backport");var s=new o(t||{}),u=[];u.push(new n(a.PNG_SIGNATURE)),u.push(s.packIHDR(e.width,e.height)),e.gamma&&u.push(s.packGAMA(e.gamma));var l=s.filterData(e.data,e.width,e.height),f=i.deflateSync(l,s.getDeflateOptions());if(l=null,!f||!f.length)throw new Error("bad png - invalid compressed data response");return u.push(s.packIDAT(f)),u.push(s.packIEND()),n.concat(u)}}).call(this,e("buffer").Buffer)},{"./constants":85,"./packer":95,buffer:8,zlib:6}],95:[function(e,t,n){(function(n){"use strict";var r=e("./constants"),i=e("./crc"),a=e("./bitpacker"),o=e("./filter-pack"),s=e("zlib"),u=t.exports=function(e){if(this._options=e,e.deflateChunkSize=e.deflateChunkSize||32768,e.deflateLevel=null!=e.deflateLevel?e.deflateLevel:9,e.deflateStrategy=null!=e.deflateStrategy?e.deflateStrategy:3,e.inputHasAlpha=null==e.inputHasAlpha||e.inputHasAlpha,e.deflateFactory=e.deflateFactory||s.createDeflate,e.bitDepth=e.bitDepth||8,e.colorType="number"==typeof e.colorType?e.colorType:r.COLORTYPE_COLOR_ALPHA,e.colorType!==r.COLORTYPE_COLOR&&e.colorType!==r.COLORTYPE_COLOR_ALPHA)throw new Error("option color type:"+e.colorType+" is not supported at present");if(8!==e.bitDepth)throw new Error("option bit depth:"+e.bitDepth+" is not supported at present")};u.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},u.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},u.prototype.filterData=function(e,t,n){var i=a(e,t,n,this._options),s=r.COLORTYPE_TO_BPP_MAP[this._options.colorType];return o(i,t,n,this._options,s)},u.prototype._packChunk=function(e,t){var r=t?t.length:0,a=new n(r+12);return a.writeUInt32BE(r,0),a.writeUInt32BE(e,4),t&&t.copy(a,8),a.writeInt32BE(i.crc32(a.slice(4,a.length-4)),a.length-4),a},u.prototype.packGAMA=function(e){var t=new n(4);return t.writeUInt32BE(Math.floor(e*r.GAMMA_DIVISION),0),this._packChunk(r.TYPE_gAMA,t)},u.prototype.packIHDR=function(e,t){var i=new n(13);return i.writeUInt32BE(e,0),i.writeUInt32BE(t,4),i[8]=this._options.bitDepth,i[9]=this._options.colorType,i[10]=0,i[11]=0,i[12]=0,this._packChunk(r.TYPE_IHDR,i)},u.prototype.packIDAT=function(e){return this._packChunk(r.TYPE_IDAT,e)},u.prototype.packIEND=function(){return this._packChunk(r.TYPE_IEND,null)}}).call(this,e("buffer").Buffer)},{"./bitpacker":83,"./constants":85,"./crc":86,"./filter-pack":87,buffer:8,zlib:6}],96:[function(e,t,n){"use strict";t.exports=function(e,t,n){var r=e+t-n,i=Math.abs(r-e),a=Math.abs(r-t),o=Math.abs(r-n);return i<=a&&i<=o?e:a<=o?t:n}},{}],97:[function(e,t,n){"use strict";var r=e("util"),i=e("zlib"),a=e("./chunkstream"),o=e("./filter-parse-async"),s=e("./parser"),u=e("./bitmapper"),l=e("./format-normaliser"),f=t.exports=function(e){a.call(this),this._parser=new s(e,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this)}),this._options=e,this.writable=!0,this._parser.start()};r.inherits(f,a),f.prototype._handleError=function(e){this.emit("error",e),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this.errord=!0},f.prototype._inflateData=function(e){this._inflate||(this._inflate=i.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter)),this._inflate.write(e)},f.prototype._handleMetaData=function(e){this.emit("metadata",e),this._bitmapInfo=Object.create(e),this._filter=new o(this._bitmapInfo)},f.prototype._handleTransColor=function(e){this._bitmapInfo.transColor=e},f.prototype._handlePalette=function(e){this._bitmapInfo.palette=e},f.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"),this.destroySoon())},f.prototype._complete=function(e){if(!this.errord){try{var t=u.dataToBitMap(e,this._bitmapInfo),n=l(t,this._bitmapInfo);t=null}catch(e){return void this._handleError(e)}this.emit("parsed",n)}}},{"./bitmapper":82,"./chunkstream":84,"./filter-parse-async":88,"./format-normaliser":91,"./parser":99,util:131,zlib:6}],98:[function(e,t,n){(function(n){"use strict";var r=!0,i=e("zlib");i.deflateSync||(r=!1);var a=e("./sync-reader"),o=e("./filter-parse-sync"),s=e("./parser"),u=e("./bitmapper"),l=e("./format-normaliser");t.exports=function(e,t){if(!r)throw new Error("To use the sync capability of this library in old node versions, please also add a dependency on node-zlb-backport");var f,c,h;var p=[];var d=new a(e);if(new s(t,{read:d.read.bind(d),error:function(e){f=e},metadata:function(e){c=e},gamma:function(e){h=e},palette:function(e){c.palette=e},transColor:function(e){c.transColor=e},inflateData:function(e){p.push(e)}}).start(),d.process(),f)throw f;var g=n.concat(p);p.length=0;var v=i.inflateSync(g);if(g=null,!v||!v.length)throw new Error("bad png - invalid inflate data response");var m=o.process(v,c);g=null;var _=u.dataToBitMap(m,c);m=null;var w=l(_,c);return c.data=w,c.gamma=h||0,c}}).call(this,e("buffer").Buffer)},{"./bitmapper":82,"./filter-parse-sync":89,"./format-normaliser":91,"./parser":99,"./sync-reader":102,buffer:8,zlib:6}],99:[function(e,t,n){(function(n){"use strict";var r=e("./constants"),i=e("./crc"),a=t.exports=function(e,t){this._options=e,e.checkCRC=!1!==e.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[r.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[r.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[r.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[r.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[r.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[r.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=t.read,this.error=t.error,this.metadata=t.metadata,this.gamma=t.gamma,this.transColor=t.transColor,this.palette=t.palette,this.parsed=t.parsed,this.inflateData=t.inflateData,this.inflateData=t.inflateData,this.finished=t.finished};a.prototype.start=function(){this.read(r.PNG_SIGNATURE.length,this._parseSignature.bind(this))},a.prototype._parseSignature=function(e){for(var t=r.PNG_SIGNATURE,n=0;nthis._palette.length)return void this.error(new Error("More transparent colors than palette size"));for(var t=0;t0?this._handleIDAT(n):this._handleChunkEnd()},a.prototype._handleIEND=function(e){this.read(e,this._parseIEND.bind(this))},a.prototype._parseIEND=function(e){this._crc.write(e),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}}).call(this,e("buffer").Buffer)},{"./constants":85,"./crc":86,buffer:8}],100:[function(e,t,n){"use strict";var r=e("./parser-sync"),i=e("./packer-sync");n.read=function(e,t){return r(e,t||{})},n.write=function(e){return i(e)}},{"./packer-sync":94,"./parser-sync":98}],101:[function(e,t,n){(function(t,r){"use strict";var i=e("util"),a=e("stream"),o=e("./parser-async"),s=e("./packer-async"),u=e("./png-sync"),l=n.PNG=function(e){a.call(this),e=e||{},this.width=e.width||0,this.height=e.height||0,this.data=this.width>0&&this.height>0?new r(4*this.width*this.height):null,e.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new o(e),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new s(e),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};i.inherits(l,a),l.sync=u,l.prototype.pack=function(){return this.data&&this.data.length?(t.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this):(this.emit("error","No data provided"),this)},l.prototype.parse=function(e,t){var n,r;t&&(n=function(e){this.removeListener("error",r),this.data=e,t(null,this)}.bind(this),r=function(e){this.removeListener("parsed",n),t(e,null)}.bind(this),this.once("parsed",n),this.once("error",r));return this.end(e),this},l.prototype.write=function(e){return this._parser.write(e),!0},l.prototype.end=function(e){this._parser.end(e)},l.prototype._metadata=function(e){this.width=e.width,this.height=e.height,this.emit("metadata",e)},l.prototype._gamma=function(e){this.gamma=e},l.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},l.bitblt=function(e,t,n,r,i,a,o,s){if(n>e.width||r>e.height||n+i>e.width||r+a>e.height)throw new Error("bitblt reading outside image");if(o>t.width||s>t.height||o+i>t.width||s+a>t.height)throw new Error("bitblt writing outside image");for(var u=0;u0&&this._buffer.length;){var e=this._reads[0];if(!this._buffer.length||!(this._buffer.length>=e.length||e.allowLess))break;this._reads.shift();var t=this._buffer;this._buffer=t.slice(e.length),e.func.call(this,t.slice(0,e.length))}return this._reads.length>0?new Error("There are some read requests waitng on finished stream"):this._buffer.length>0?new Error("unrecognised content at end of stream"):void 0}},{}],103:[function(e,t,n){(function(e){"use strict";!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?t.exports=function(t,n,r,i){if("function"!=typeof t)throw new TypeError('"callback" argument must be a function');var a,o,s=arguments.length;switch(s){case 0:case 1:return e.nextTick(t);case 2:return e.nextTick(function(){t.call(null,n)});case 3:return e.nextTick(function(){t.call(null,n,r)});case 4:return e.nextTick(function(){t.call(null,n,r,i)});default:for(a=new Array(s-1),o=0;o1)for(var n=1;n0)if(t.ended&&!a){var s=new Error("stream.push() after EOF");e.emit("error",s)}else if(t.endEmitted&&a){var l=new Error("stream.unshift() after end event");e.emit("error",l)}else{var f;!t.decoder||a||r||(n=t.decoder.write(n),f=!t.objectMode&&0===n.length),a||(t.reading=!1),f||(t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,a?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&y(e))),function(e,t){t.readingMore||(t.readingMore=!0,i(k,e,t))}(e,t)}else a||(t.reading=!1);return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=w?e=w:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function y(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i(x,e):x(e))}function x(e){h("emit readable"),e.emit("readable"),S(e)}function k(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;ea.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=l.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(a.copy(n,n.length-e,0,o),0===(e-=o)){o===a.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function M(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i(R,t,e))}function R(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function I(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?M(this):y(this),null;if(0===(e=b(e,t))&&t.ended)return 0===t.length&&M(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?T(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&M(this)),null!==r&&this.emit("data",r),r},m.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(e,t){var r=this,s=this._readableState;switch(s.pipesCount){case 0:s.pipes=e;break;case 1:s.pipes=[s.pipes,e];break;default:s.pipes.push(e)}s.pipesCount+=1,h("pipe count=%d opts=%j",s.pipesCount,t);var u=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?f:d;function l(e){h("onunpipe"),e===r&&d()}function f(){h("onend"),e.end()}s.endEmitted?i(u):r.once("end",u),e.on("unpipe",l);var c=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,S(e))}}(r);e.on("drain",c);var p=!1;function d(){h("cleanup"),e.removeListener("close",_),e.removeListener("finish",w),e.removeListener("drain",c),e.removeListener("error",m),e.removeListener("unpipe",l),r.removeListener("end",f),r.removeListener("end",d),r.removeListener("data",v),p=!0,!s.awaitDrain||e._writableState&&!e._writableState.needDrain||c()}var g=!1;function v(t){h("ondata"),g=!1,!1!==e.write(t)||g||((1===s.pipesCount&&s.pipes===e||s.pipesCount>1&&-1!==I(s.pipes,e))&&!p&&(h("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,g=!0),r.pause())}function m(t){h("onerror",t),b(),e.removeListener("error",m),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",w),b()}function w(){h("onfinish"),e.removeListener("close",_),b()}function b(){h("unpipe"),r.unpipe(e)}return r.on("data",v),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",m),e.once("close",_),e.once("finish",w),e.emit("pipe",r),s.flowing||(h("pipe resume"),r.resume()),e},m.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i-1?setImmediate:i;d.WritableState=p;var o=e("core-util-is");o.inherits=e("inherits");var s,u={deprecate:e("util-deprecate")},l=e("./internal/streams/stream"),f=e("buffer").Buffer,c=e("buffer-shims");function h(){}function p(t,n){r=r||e("./_stream_duplex"),t=t||{},this.objectMode=!!t.objectMode,n instanceof r&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var o=t.highWaterMark,s=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:s,this.highWaterMark=~~this.highWaterMark,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1;var u=!1===t.decodeStrings;this.decodeStrings=!u,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,a){--t.pendingcb,n?i(a,r):a(r);e._writableState.errorEmitted=!0,e.emit("error",r)}(e,n,r,t,o);else{var s=_(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||m(e,n),r?a(v,e,n,s,o):v(e,n,s,o)}}(n,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new y(this)}function d(t){if(r=r||e("./_stream_duplex"),!(s.call(d,this)||this instanceof r))return new d(t);this._writableState=new p(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev)),l.call(this)}function g(e,t,n,r,i,a,o){t.writelen=r,t.writecb=o,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function v(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),b(e,t)}function m(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var o=0;n;)i[o]=n,n=n.next,o+=1;g(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new y(t)}else{for(;n;){var s=n.chunk,u=n.encoding,l=n.callback;if(g(e,t,!1,t.objectMode?1:s.length,s,u,l),n=n.next,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=n,t.bufferProcessing=!1}function _(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function w(e,t){t.prefinished||(t.prefinished=!0,e.emit("prefinish"))}function b(e,t){var n=_(t);return n&&(0===t.pendingcb?(w(e,t),t.finished=!0,e.emit("finish")):w(e,t)),n}function y(e){var t=this;this.next=null,this.entry=null,this.finish=function(n){var r=t.entry;for(t.entry=null;r;){var i=r.callback;e.pendingcb--,i(n),r=r.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}}o.inherits(d,l),p.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(p.prototype,"buffer",{get:u.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(s=Function.prototype[Symbol.hasInstance],Object.defineProperty(d,Symbol.hasInstance,{value:function(e){return!!s.call(this,e)||e&&e._writableState instanceof p}})):s=function(e){return e instanceof this},d.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},d.prototype.write=function(e,t,n){var r=this._writableState,a=!1,o=f.isBuffer(e);return"function"==typeof t&&(n=t,t=null),o?t="buffer":t||(t=r.defaultEncoding),"function"!=typeof n&&(n=h),r.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),i(t,n)}(this,n):(o||function(e,t,n,r){var a=!0,o=!1;return null===n?o=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),i(r,o),a=!1),a}(this,r,e,n))&&(r.pendingcb++,a=function(e,t,n,r,i,a){n||(r=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=c.from(t,n));return t}(t,r,i),f.isBuffer(r)&&(i="buffer"));var o=t.objectMode?1:r.length;t.length+=o;var s=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},d.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},d.prototype._writev=null,d.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!==e&&void 0!==e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,b(e,t),n&&(t.finished?i(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)}}).call(this,e("_process"))},{"./_stream_duplex":106,"./internal/streams/stream":112,_process:104,buffer:8,"buffer-shims":10,"core-util-is":22,inherits:52,"process-nextick-args":103,"util-deprecate":128}],111:[function(e,t,n){"use strict";e("buffer").Buffer;var r=e("buffer-shims");function i(){this.head=null,this.tail=null,this.length=0}t.exports=i,i.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},i.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},i.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},i.prototype.clear=function(){this.head=this.tail=null,this.length=0},i.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},i.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t=r.allocUnsafe(e>>>0),n=this.head,i=0;n;)n.data.copy(t,i),i+=n.data.length,n=n.next;return t}},{buffer:8,"buffer-shims":10}],112:[function(e,t,n){t.exports=e("events").EventEmitter},{events:29}],113:[function(e,t,n){t.exports=e("./readable").PassThrough},{"./readable":114}],114:[function(e,t,n){(n=t.exports=e("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=e("./lib/_stream_writable.js"),n.Duplex=e("./lib/_stream_duplex.js"),n.Transform=e("./lib/_stream_transform.js"),n.PassThrough=e("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":106,"./lib/_stream_passthrough.js":107,"./lib/_stream_readable.js":108,"./lib/_stream_transform.js":109,"./lib/_stream_writable.js":110}],115:[function(e,t,n){t.exports=e("./readable").Transform},{"./readable":114}],116:[function(e,t,n){t.exports=e("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":110}],117:[function(e,t,n){var r=e("./lib/encoder"),i=e("./lib/decoder");t.exports={encode:r,decode:i}},{"./lib/decoder":118,"./lib/encoder":119}],118:[function(e,t,n){(function(e){var n=function(){"use strict";var e=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),t=4017,n=799,r=3406,i=2276,a=1567,o=3784,s=5793,u=2896;function l(){}function f(e,t){for(var n,r,i=0,a=[],o=16;o>0&&!e[o-1];)o--;a.push({children:[],index:0});var s,u=a[0];for(n=0;n0;)u=a.pop();for(u.index++,a.push(u);a.length<=n;)a.push(s={children:[],index:0}),u.children[u.index]=s.children,u=s;i++}n+10)return p>>--d&1;if(255==(p=t[n++])){var e=t[n++];if(e)throw"unexpected marker: "+(p<<8|e).toString(16)}return d=7,p>>>7}function v(e){for(var t,n=e;null!==(t=g());){if("number"==typeof(n=n[t]))return n;if("object"!=typeof n)throw"invalid huffman sequence"}return null}function m(e){for(var t=0;e>0;){var n=g();if(null===n)return;t=t<<1|n,e--}return t}function _(e){var t=m(e);return t>=1<0)w--;else for(var r=o,i=s;r<=i;){var a=v(t.huffmanTableAC),u=15&a,f=a>>4;if(0!==u)n[e[r+=f]]=_(u)*(1<>4,0===c)a<15?(w=m(a)+(1<>4;if(0!==s)n[e[a+=u]]=_(s),a++;else{if(u<15)break;a+=16}}};var j,C,L,B,D=0;for(C=1==I?i[0].blocksPerLine*i[0].blocksPerColumn:f*r.mcusPerColumn,a||(a=C);D=65488&&j<=65495))break;n+=2}return n-h}function h(e,l){var f,c,h=[],p=l.blocksPerLine,d=l.blocksPerColumn,g=p<<3,v=new Int32Array(64),m=new Uint8Array(64);function _(e,f,c){var h,p,d,g,v,m,_,w,b,y,x=l.quantizationTable,k=c;for(y=0;y<64;y++)k[y]=e[y]*x[y];for(y=0;y<8;++y){var E=8*y;0!=k[1+E]||0!=k[2+E]||0!=k[3+E]||0!=k[4+E]||0!=k[5+E]||0!=k[6+E]||0!=k[7+E]?(h=s*k[0+E]+128>>8,p=s*k[4+E]+128>>8,d=k[2+E],g=k[6+E],v=u*(k[1+E]-k[7+E])+128>>8,w=u*(k[1+E]+k[7+E])+128>>8,m=k[3+E]<<4,_=k[5+E]<<4,b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*o+g*a+128>>8,d=d*a-g*o+128>>8,g=b,b=v-_+1>>1,v=v+_+1>>1,_=b,b=w+m+1>>1,m=w-m+1>>1,w=b,b=h-g+1>>1,h=h+g+1>>1,g=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=v*i+w*r+2048>>12,v=v*r-w*i+2048>>12,w=b,b=m*n+_*t+2048>>12,m=m*t-_*n+2048>>12,_=b,k[0+E]=h+w,k[7+E]=h-w,k[1+E]=p+_,k[6+E]=p-_,k[2+E]=d+m,k[5+E]=d-m,k[3+E]=g+v,k[4+E]=g-v):(b=s*k[0+E]+512>>10,k[0+E]=b,k[1+E]=b,k[2+E]=b,k[3+E]=b,k[4+E]=b,k[5+E]=b,k[6+E]=b,k[7+E]=b)}for(y=0;y<8;++y){var A=y;0!=k[8+A]||0!=k[16+A]||0!=k[24+A]||0!=k[32+A]||0!=k[40+A]||0!=k[48+A]||0!=k[56+A]?(h=s*k[0+A]+2048>>12,p=s*k[32+A]+2048>>12,d=k[16+A],g=k[48+A],v=u*(k[8+A]-k[56+A])+2048>>12,w=u*(k[8+A]+k[56+A])+2048>>12,m=k[24+A],_=k[40+A],b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*o+g*a+2048>>12,d=d*a-g*o+2048>>12,g=b,b=v-_+1>>1,v=v+_+1>>1,_=b,b=w+m+1>>1,m=w-m+1>>1,w=b,b=h-g+1>>1,h=h+g+1>>1,g=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=v*i+w*r+2048>>12,v=v*r-w*i+2048>>12,w=b,b=m*n+_*t+2048>>12,m=m*t-_*n+2048>>12,_=b,k[0+A]=h+w,k[56+A]=h-w,k[8+A]=p+_,k[48+A]=p-_,k[16+A]=d+m,k[40+A]=d-m,k[24+A]=g+v,k[32+A]=g-v):(b=s*c[y+0]+8192>>14,k[0+A]=b,k[8+A]=b,k[16+A]=b,k[24+A]=b,k[32+A]=b,k[40+A]=b,k[48+A]=b,k[56+A]=b)}for(y=0;y<64;++y){var S=128+(k[y]+8>>4);f[y]=S<0?0:S>255?255:S}}for(var w=0;w255?255:e}return l.prototype={load:function(e){var t=new XMLHttpRequest;t.open("GET",e,!0),t.responseType="arraybuffer",t.onload=function(){var e=new Uint8Array(t.response||t.mozResponseArrayBuffer);this.parse(e),this.onload&&this.onload()}.bind(this),t.send(null)},parse:function(t){var n=0;t.length;function r(){var e=t[n]<<8|t[n+1];return n+=2,e}function i(){var e=r(),i=t.subarray(n,n+e-2);return n+=i.length,i}function a(e){var t,n,r=0,i=0;for(n in e.components)e.components.hasOwnProperty(n)&&(r<(t=e.components[n]).h&&(r=t.h),i>4==0)for(_=0;_<64;_++){x[e[_]]=t[n++]}else{if(y>>4!=1)throw"DQT: invalid table spec";for(_=0;_<64;_++){x[e[_]]=r()}}p[15&y]=x}break;case 65472:case 65473:case 65474:r(),(o={}).extended=65473===m,o.progressive=65474===m,o.precision=t[n++],o.scanLines=r(),o.samplesPerLine=r(),o.components={},o.componentsOrder=[];var k,E=t[n++];for(U=0;U>4,S=15&t[n+1],T=t[n+2];o.componentsOrder.push(k),o.components[k]={h:A,v:S,quantizationTable:p[T]},n+=3}a(o),d.push(o);break;case 65476:var M=r();for(U=2;U>4==0?v:g)[15&R]=f(I,C)}break;case 65501:r(),s=r();break;case 65498:r();var L=t[n++],B=[];for(U=0;U>4],F.huffmanTableAC=g[15&D],B.push(F)}var z=t[n++],P=t[n++],O=t[n++],N=c(t,n,o,B,s,z,P,O>>4,15&O);n+=N;break;default:if(255==t[n-3]&&t[n-2]>=192&&t[n-2]<=254){n-=3;break}throw"unknown JPEG marker "+m.toString(16)}m=r()}if(1!=d.length)throw"only single frame JPEGs supported";this.width=o.samplesPerLine,this.height=o.scanLines,this.jfif=u,this.adobe=l,this.components=[];for(var U=0;U=0;)t&1<>8&255),D(255&e)}function P(e,t,n,r,i){var a,o=i[0],s=i[240];for(var u=function(e,t){var n,r,i,a,o,s,u,l,f,c,h=0;for(f=0;f<8;++f){n=e[h],r=e[h+1],i=e[h+2],a=e[h+3],o=e[h+4],s=e[h+5],u=e[h+6];var p=n+(l=e[h+7]),g=n-l,v=r+u,m=r-u,_=i+s,w=i-s,b=a+o,y=a-o,x=p+b,k=p-b,E=v+_,A=v-_;e[h]=x+E,e[h+4]=x-E;var S=.707106781*(A+k);e[h+2]=k+S,e[h+6]=k-S;var T=.382683433*((x=y+w)-(A=m+g)),M=.5411961*x+T,R=1.306562965*A+T,I=.707106781*(E=w+m),j=g+I,C=g-I;e[h+5]=C+M,e[h+3]=C-M,e[h+1]=j+R,e[h+7]=j-R,h+=8}for(h=0,f=0;f<8;++f){n=e[h],r=e[h+8],i=e[h+16],a=e[h+24],o=e[h+32],s=e[h+40],u=e[h+48];var L=n+(l=e[h+56]),B=n-l,D=r+u,z=r-u,P=i+s,O=i-s,N=a+o,U=a-o,F=L+N,q=L-N,V=D+P,W=D-P;e[h]=F+V,e[h+32]=F-V;var Z=.707106781*(W+q);e[h+16]=q+Z,e[h+48]=q-Z;var G=.382683433*((F=U+O)-(W=z+B)),Y=.5411961*F+G,H=1.306562965*W+G,X=.707106781*(V=O+z),$=B+X,K=B-X;e[h+40]=K+Y,e[h+24]=K-Y,e[h+8]=$+H,e[h+56]=$-H,h++}for(f=0;f<64;++f)c=e[f]*t[f],d[f]=c>0?c+.5|0:c-.5|0;return d}(e,t),l=0;l<64;++l)g[E[l]]=u[l];var f=g[0]-n;n=g[0],0==f?B(r[0]):(B(r[p[a=32767+f]]),B(h[a]));for(var c=63;c>0&&0==g[c];c--);if(0==c)return B(o),n;for(var v,m=1;m<=c;){for(var _=m;0==g[m]&&m<=c;++m);var w=m-_;if(w>=16){v=w>>4;for(var b=1;b<=v;++b)B(s);w&=15}a=32767+g[m],B(i[(w<<4)+p[a]]),B(h[a]),m++}return 63!=c&&B(o),n}function O(e){if(e<=0&&(e=1),e>100&&(e=100),o!=e){(function(e){for(var t=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],n=0;n<64;n++){var r=s((t[n]*e+50)/100);r<1?r=1:r>255&&(r=255),u[E[n]]=r}for(var i=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],a=0;a<64;a++){var o=s((i[a]*e+50)/100);o<1?o=1:o>255&&(o=255),l[E[a]]=o}for(var h=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],p=0,d=0;d<8;d++)for(var g=0;g<8;g++)f[p]=1/(u[E[p]]*h[d]*h[g]*8),c[p]=1/(l[E[p]]*h[d]*h[g]*8),p++})(e<50?Math.floor(5e3/e):Math.floor(200-2*e)),o=e}}this.encode=function(t,o){(new Date).getTime();o&&O(o),v=new Array,m=0,_=7,z(65496),z(65504),z(16),D(74),D(70),D(73),D(70),D(0),D(1),D(1),D(0),z(1),z(1),D(0),D(0),function(){z(65499),z(132),D(0);for(var e=0;e<64;e++)D(u[e]);D(1);for(var t=0;t<64;t++)D(l[t])}(),function(e,t){z(65472),z(17),D(8),z(t),z(e),D(3),D(1),D(17),D(0),D(2),D(17),D(1),D(3),D(17),D(1)}(t.width,t.height),function(){z(65476),z(418),D(0);for(var e=0;e<16;e++)D(A[e+1]);for(var t=0;t<=11;t++)D(S[t]);D(16);for(var n=0;n<16;n++)D(T[n+1]);for(var r=0;r<=161;r++)D(M[r]);D(1);for(var i=0;i<16;i++)D(R[i+1]);for(var a=0;a<=11;a++)D(I[a]);D(17);for(var o=0;o<16;o++)D(j[o+1]);for(var s=0;s<=161;s++)D(C[s])}(),z(65498),z(12),D(3),D(1),D(0),D(2),D(17),D(3),D(17),D(0),D(63),D(0);var s=0,h=0,p=0;m=0,_=7,this.encode.displayName="_encode_";for(var d,g,x,E,L,N,U,F,q,V=t.data,W=t.width,Z=t.height,G=4*W,Y=0;Y>3)*G+(U=4*(7&q)),Y+F>=Z&&(N-=G*(Y+1+F-Z)),d+U>=G&&(N-=d+U-G+4),g=V[N++],x=V[N++],E=V[N++],w[q]=(k[g]+k[x+256>>0]+k[E+512>>0]>>16)-128,b[q]=(k[g+768>>0]+k[x+1024>>0]+k[E+1280>>0]>>16)-128,y[q]=(k[g+1280>>0]+k[x+1536>>0]+k[E+1792>>0]>>16)-128;s=P(w,f,s,n,i),h=P(b,c,h,r,a),p=P(y,c,p,r,a),d+=32}Y+=8}if(_>=0){var H=[];H[1]=_+1,H[0]=(1<<_+1)-1,B(H)}return z(65497),new e(v)},function(){(new Date).getTime();t||(t=50),function(){for(var e=String.fromCharCode,t=0;t<256;t++)x[t]=e(t)}(),n=L(A,S),r=L(R,I),i=L(T,M),a=L(j,C),function(){for(var e=1,t=2,n=1;n<=15;n++){for(var r=e;r>0]=38470*e,k[e+512>>0]=7471*e+32768,k[e+768>>0]=-11059*e,k[e+1024>>0]=-21709*e,k[e+1280>>0]=32768*e+8421375,k[e+1536>>0]=-27439*e,k[e+1792>>0]=-5329*e}(),O(t),(new Date).getTime()}()}t.exports=function(e,t){void 0===t&&(t=50);return{data:new n(t).encode(e,t),width:e.width,height:e.height}}}).call(this,e("buffer").Buffer)},{buffer:8}],120:[function(e,t,n){(function(n){"use strict";var r=e("contentstream"),i=e("gif-encoder"),a=e("jpeg-js"),o=e("pngjs-nozlib").PNG,s=e("ndarray"),u=e("ndarray-ops"),l=e("through");function f(e,t,n){if(4===e.shape.length)return f(e.pick(n),t,0);if(3===e.shape.length)if(3===e.shape[2])u.assign(s(t,[e.shape[0],e.shape[1],3],[4,4*e.shape[0],1]),e),u.assigns(s(t,[e.shape[0]*e.shape[1]],[4],3),255);else if(4===e.shape[2])u.assign(s(t,[e.shape[0],e.shape[1],4],[4,4*e.shape[0],1]),e);else{if(1!==e.shape[2])return new Error("Incompatible array shape");u.assign(s(t,[e.shape[0],e.shape[1],3],[4,4*e.shape[0],1]),s(e.data,[e.shape[0],e.shape[1],3],[e.stride[0],e.stride[1],0],e.offset)),u.assigns(s(t,[e.shape[0]*e.shape[1]],[4],3),255)}else{if(2!==e.shape.length)return new Error("Incompatible array shape");u.assign(s(t,[e.shape[0],e.shape[1],3],[4,4*e.shape[0],1]),s(e.data,[e.shape[0],e.shape[1],3],[e.stride[0],e.stride[1],0],e.offset)),u.assigns(s(t,[e.shape[0]*e.shape[1]],[4],3),255)}return t}function c(e){var t=l();return t.emit("error",e),t}t.exports=function(e,t,s){switch(s=s||{},t.toUpperCase()){case"JPG":case".JPG":case"JPEG":case".JPEG":case"JPE":case".JPE":var u=e.shape[0],l=e.shape[1],h={data:g=f(e,g=new n(u*l*4)),width:u,height:l},p=a.encode(h,s.quality);return new r(p.data);case"GIF":case".GIF":var d=4===e.shape.length?e.shape[0]:1,g=(u=4===e.shape.length?e.shape[1]:e.shape[0],l=4===e.shape.length?e.shape[2]:e.shape[1],new n(u*l*4)),v=new i(u,l);v.writeHeader();for(var m=0;m>5==6?2:e>>4==14?3:e>>3==30?4:-1}function u(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�".repeat(n);if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�".repeat(n+1);if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�".repeat(n+2)}}(this,e,t);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function l(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function c(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function p(e){return e.toString(this.encoding)}function d(e){return e&&e.length?this.write(e):""}n.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},{buffer:8,"buffer-shims":10}],123:[function(e,t,n){(function(n){var r=e("stream");function i(e,t,i){e=e||function(e){this.queue(e)},t=t||function(){this.queue(null)};var a=!1,o=!1,s=[],u=!1,l=new r;function f(){for(;s.length&&!l.paused;){var e=s.shift();if(null===e)return l.emit("end");l.emit("data",e)}}return l.readable=l.writable=!0,l.paused=!1,l.autoDestroy=!(i&&!1===i.autoDestroy),l.write=function(t){return e.call(this,t),!l.paused},l.queue=l.push=function(e){return u?l:(null===e&&(u=!0),s.push(e),f(),l)},l.on("end",function(){l.readable=!1,!l.writable&&l.autoDestroy&&n.nextTick(function(){l.destroy()})}),l.end=function(e){if(!a)return a=!0,arguments.length&&l.write(e),l.writable=!1,t.call(l),!l.readable&&l.autoDestroy&&l.destroy(),l},l.destroy=function(){if(!o)return o=!0,a=!0,s.length=0,l.writable=l.readable=!1,l.emit("close"),l},l.pause=function(){if(!l.paused)return l.paused=!0,l},l.resume=function(){return l.paused&&(l.paused=!1,l.emit("resume")),f(),l.paused||l.emit("drain"),l},l}t.exports=i,i.through=i}).call(this,e("_process"))},{_process:104,stream:121}],124:[function(e,t,n){n.isatty=function(){return!1},n.ReadStream=function(){throw new Error("tty.ReadStream is not implemented")},n.WriteStream=function(){throw new Error("tty.ReadStream is not implemented")}},{}],125:[function(e,t,n){(function(t,r){"use strict";var i=e("bit-twiddle"),a=e("dup");t.__TYPEDARRAY_POOL||(t.__TYPEDARRAY_POOL={UINT8:a([32,0]),UINT16:a([32,0]),UINT32:a([32,0]),INT8:a([32,0]),INT16:a([32,0]),INT32:a([32,0]),FLOAT:a([32,0]),DOUBLE:a([32,0]),DATA:a([32,0]),UINT8C:a([32,0]),BUFFER:a([32,0])});var o="undefined"!=typeof Uint8ClampedArray,s=t.__TYPEDARRAY_POOL;s.UINT8C||(s.UINT8C=a([32,0])),s.BUFFER||(s.BUFFER=a([32,0]));var u=s.DATA,l=s.BUFFER;function f(e){if(e){var t=e.length||e.byteLength,n=i.log2(t);u[n].push(e)}}function c(e){e=i.nextPow2(e);var t=i.log2(e),n=u[t];return n.length>0?n.pop():new ArrayBuffer(e)}function h(e){return new Uint8Array(c(e),0,e)}function p(e){return new Uint16Array(c(2*e),0,e)}function d(e){return new Uint32Array(c(4*e),0,e)}function g(e){return new Int8Array(c(e),0,e)}function v(e){return new Int16Array(c(2*e),0,e)}function m(e){return new Int32Array(c(4*e),0,e)}function _(e){return new Float32Array(c(4*e),0,e)}function w(e){return new Float64Array(c(8*e),0,e)}function b(e){return o?new Uint8ClampedArray(c(e),0,e):h(e)}function y(e){return new DataView(c(e),0,e)}function x(e){e=i.nextPow2(e);var t=i.log2(e),n=l[t];return n.length>0?n.pop():new r(e)}n.free=function(e){if(r.isBuffer(e))l[i.log2(e.length)].push(e);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(e)&&(e=e.buffer),!e)return;var t=e.length||e.byteLength,n=0|i.log2(t);u[n].push(e)}},n.freeUint8=n.freeUint16=n.freeUint32=n.freeInt8=n.freeInt16=n.freeInt32=n.freeFloat32=n.freeFloat=n.freeFloat64=n.freeDouble=n.freeUint8Clamped=n.freeDataView=function(e){f(e.buffer)},n.freeArrayBuffer=f,n.freeBuffer=function(e){l[i.log2(e.length)].push(e)},n.malloc=function(e,t){if(void 0===t||"arraybuffer"===t)return c(e);switch(t){case"uint8":return h(e);case"uint16":return p(e);case"uint32":return d(e);case"int8":return g(e);case"int16":return v(e);case"int32":return m(e);case"float":case"float32":return _(e);case"double":case"float64":return w(e);case"uint8_clamped":return b(e);case"buffer":return x(e);case"data":case"dataview":return y(e);default:return null}return null},n.mallocArrayBuffer=c,n.mallocUint8=h,n.mallocUint16=p,n.mallocUint32=d,n.mallocInt8=g,n.mallocInt16=v,n.mallocInt32=m,n.mallocFloat32=n.mallocFloat=_,n.mallocFloat64=n.mallocDouble=w,n.mallocUint8Clamped=b,n.mallocDataView=y,n.mallocBuffer=x,n.clearCache=function(){for(var e=0;e<32;++e)s.UINT8[e].length=0,s.UINT16[e].length=0,s.UINT32[e].length=0,s.INT8[e].length=0,s.INT16[e].length=0,s.INT32[e].length=0,s.FLOAT[e].length=0,s.DOUBLE[e].length=0,s.UINT8C[e].length=0,u[e].length=0,l[e].length=0}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer)},{"bit-twiddle":3,buffer:8,dup:28}],126:[function(e,t,n){"use strict";t.exports=function(e,t,n){return 0===e.length?e:t?(n||e.sort(t),function(e,t){for(var n=1,r=e.length,i=e[0],a=e[0],o=1;o=a)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}}),u=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(t)?r.showHidden=t:t&&n._extend(r,t),_(r.showHidden)&&(r.showHidden=!1),_(r.depth)&&(r.depth=2),_(r.colors)&&(r.colors=!1),_(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),f(r,e,r.depth)}function u(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function l(e,t){return e}function f(e,t,r){if(e.customInspect&&t&&k(t.inspect)&&t.inspect!==n.inspect&&(!t.constructor||t.constructor.prototype!==t)){var i=t.inspect(r,e);return m(i)||(i=f(e,i,r)),i}var a=function(e,t){if(_(t))return e.stylize("undefined","undefined");if(m(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(v(t))return e.stylize(""+t,"number");if(d(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,t);if(a)return a;var o=Object.keys(t),s=function(e){var t={};return e.forEach(function(e,n){t[e]=!0}),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),x(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return c(t);if(0===o.length){if(k(t)){var u=t.name?": "+t.name:"";return e.stylize("[Function"+u+"]","special")}if(w(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(y(t))return e.stylize(Date.prototype.toString.call(t),"date");if(x(t))return c(t)}var l,b="",E=!1,A=["{","}"];(p(t)&&(E=!0,A=["[","]"]),k(t))&&(b=" [Function"+(t.name?": "+t.name:"")+"]");return w(t)&&(b=" "+RegExp.prototype.toString.call(t)),y(t)&&(b=" "+Date.prototype.toUTCString.call(t)),x(t)&&(b=" "+c(t)),0!==o.length||E&&0!=t.length?r<0?w(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),l=E?function(e,t,n,r,i){for(var a=[],o=0,s=t.length;o=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(l,b,A)):A[0]+b+A[1]}function c(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,n,r,i,a){var o,s,u;if((u=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(s=e.stylize("[Setter]","special")),T(r,i)||(o="["+i+"]"),s||(e.seen.indexOf(u.value)<0?(s=g(n)?f(e,u.value,null):f(e,u.value,n-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+s.split("\n").map(function(e){return" "+e}).join("\n")):s=e.stylize("[Circular]","special")),_(o)){if(a&&i.match(/^\d+$/))return s;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function p(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function g(e){return null===e}function v(e){return"number"==typeof e}function m(e){return"string"==typeof e}function _(e){return void 0===e}function w(e){return b(e)&&"[object RegExp]"===E(e)}function b(e){return"object"==typeof e&&null!==e}function y(e){return b(e)&&"[object Date]"===E(e)}function x(e){return b(e)&&("[object Error]"===E(e)||e instanceof Error)}function k(e){return"function"==typeof e}function E(e){return Object.prototype.toString.call(e)}function A(e){return e<10?"0"+e.toString(10):e.toString(10)}n.debuglog=function(e){if(_(a)&&(a=t.env.NODE_DEBUG||""),e=e.toUpperCase(),!o[e])if(new RegExp("\\b"+e+"\\b","i").test(a)){var r=t.pid;o[e]=function(){var t=n.format.apply(n,arguments);console.error("%s %d: %s",e,r,t)}}else o[e]=function(){};return o[e]},n.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},n.isArray=p,n.isBoolean=d,n.isNull=g,n.isNullOrUndefined=function(e){return null==e},n.isNumber=v,n.isString=m,n.isSymbol=function(e){return"symbol"==typeof e},n.isUndefined=_,n.isRegExp=w,n.isObject=b,n.isDate=y,n.isError=x,n.isFunction=k,n.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},n.isBuffer=e("./support/isBuffer");var S=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(e,t){return Object.prototype.hasOwnProperty.call(e,t)}n.log=function(){var e,t;console.log("%s - %s",(e=new Date,t=[A(e.getHours()),A(e.getMinutes()),A(e.getSeconds())].join(":"),[e.getDate(),S[e.getMonth()],t].join(" ")),n.format.apply(n,arguments))},n.inherits=e("inherits"),n._extend=function(e,t){if(!t||!b(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":130,_process:104,inherits:129}],132:[function(e,t,n){t.exports=function(e,t,n,r){!function(t,n,r){var i=e.modules[n][1],a=e.copy(r);a.number=e.options.sequencerCounter++,a.name=r.name||n||i.name,a.description=r.description||i.description,a.selector=r.selector||"ismod-"+n,a.container=r.container||e.options.selector,a.image=t,a.inBrowser=e.options.inBrowser,a.step={name:a.name,description:a.description,ID:a.number,imageName:a.image,inBrowser:e.options.inBrowser,ui:e.options.ui,options:a};var o=e.events,s=e.modules[n][0](a,o);e.images[t].steps.push(s)}(t,n,r)}},{}],133:[function(e,t,n){var r=e("fs");t.exports=function(t="./output/",n,i){if(t="/"==t[t.length-1]?t:t+"/",n.options.inBrowser)return!1;var a,o;r.access(t,function(e){e&&console.error(e)}),a=t,o=function(a){var o=1;for(var s in a)if(null!=a[s].match(/^sequencer(.*)$/)){var u=parseInt(a[s].match(/^sequencer(.*)$/)[1]);o=u>=o?u+1:o}r.mkdir(t+"sequencer"+o,function(){var a=t+"sequencer"+o+"/";for(var s in n.images){var u=n.images[s].steps;if(i){var l=u.slice(-1)[0].output.src,f=u.slice(-1)[0].output.format,c=e("data-uri-to-buffer")(l);r.writeFile(a+s+"_"+(u.length-1)+"."+f,c,function(){})}else for(var h in u){l=u[h].output.src,f=u[h].output.format,c=e("data-uri-to-buffer")(l);r.writeFile(a+s+"_"+h+"."+f,c,function(){})}}})},r.readdir(a,function(e,t){var n=[];if(void 0===t||0==t.length)return o(n),[];for(var i=0;i0&&(thisStep=s[e].steps[t],thisStep.UI.onRemove(thisStep.options.step),s[e].steps.splice(t,1))}function c(){var t=[],n=this;for(var r in arguments)t.push(i(arguments[r]));var a=o.call(this,t,"l");u.push({method:"loadImages",json_q:i(a)});var s=this.copy(a.loadedimages),l={name:"ImageSequencer Wrapper",sequencer:this,addSteps:this.addSteps,removeSteps:this.removeSteps,insertSteps:this.insertSteps,run:this.run,UI:this.UI,setUI:this.setUI,images:s};!function t(r){if(r!=s.length){var i=s[r];e("./ui/LoadImage")(n,i,a.images[i],function(){t(++r)})}else a.callback.call(l)}(0)}return{name:"ImageSequencer",options:t,inputlog:u,modules:a,images:s,events:l,loadImages:c,loadImage:c,addSteps:function(){var t,n="ImageSequencer"==this.name?this:this.sequencer,r="ImageSequencer"==this.name?[]:[this.images];for(var a in arguments)r.push(i(arguments[a]));for(var s in t=o.call(n,r,"+"),u.push({method:"addSteps",json_q:i(t)}),t)for(var l in t[s])e("./AddStep")(n,s,t[s][l].name,t[s][l].o);return this},removeSteps:function(e,t){var n,r={},a="ImageSequencer"==this.name?this:this.sequencer,s="ImageSequencer"==this.name?[]:[this.images];for(var l in arguments)s.push(i(arguments[l]));var c=o.call(a,s,"-");for(var h in u.push({method:"removeSteps",json_q:i(c)}),c)for(var p in n=c[h].sort(function(e,t){return t-e}),r[h]=n[n.length-1],n)f(h,n[p]);return this},insertSteps:function(t,n,r,a){var s={},l="ImageSequencer"==this.name?this:this.sequencer,f="ImageSequencer"==this.name?[]:[this.images];for(var c in arguments)f.push(arguments[c]);var h=o.call(l,f,"^");for(var p in u.push({method:"insertSteps",json_q:i(h)}),h){var d=h[p];for(var g in d=d.sort(function(e,t){return t.index-e.index}))e("./InsertStep")(l,p,d[g].index,d[g].name,d[g].o);s[p]=d[d.length-1].index}return this},replaceImage:function(t,n,r){return(r=r||{}).callback=r.callback||function(){},e("./ReplaceImage")(this,t,n,r)},run:function(t,r,a){let s;"test"!=arguments[0]&&(s=t,delete arguments[0]);var u="ImageSequencer"==this.name?this:this.sequencer,l="ImageSequencer"==this.name?[]:[this.images];for(var f in arguments)l.push(i(arguments[f]));var c=function(){};for(var f in l)"Function"==n(l[f])&&(c=l.splice(f,1)[0]);var h=o.call(u,l,"r");return e("./Run")(u,h,c,s),!0},setUI:function(t){this.events=e("./ui/UserInterface")(t)},exportBin:function(t,n){return e("./ExportBin")(t,this,n)},modulesInfo:function(e){var t={};if("load-image"==e)return{};if(0==arguments.length)for(var n in a)t[n]=a[n][1];else t=a[e][1];return t},log:function(e,n){"none"!=t.ui&&(1==arguments.length?console.log(arguments[0]):2==arguments.length&&console.log(e,n))},objTypeOf:n,copy:i}},t.exports=ImageSequencer},{"./AddStep":132,"./ExportBin":133,"./FormatInput":134,"./InsertStep":136,"./Modules":137,"./ReplaceImage":138,"./Run":139,"./ui/LoadImage":170,"./ui/UserInterface":171,fs:7}],136:[function(e,t,n){t.exports=function(e,t,n,r,i){!function(t,n,r,i){var a=e.copy(i);a.number=e.options.sequencerCounter++,a.name=i.name||r,a.selector=i.selector||"ismod-"+r,a.container=i.container||e.options.selector,a.image=t,-1==n&&(n=e.images[t].steps.length),a.step={name:a.name,description:a.description,url:a.url,ID:a.number,imageName:a.image,inBrowser:e.options.inBrowser,ui:e.options.ui,options:a};var o=e.events,s=e.modules[r][0](a,o);e.images[t].steps.splice(n,0,s)}(t,n,r,i)}},{}],137:[function(e,t,n){t.exports={channel:[e("./modules/Channel/Module"),e("./modules/Channel/info")],brightness:[e("./modules/Brightness/Module"),e("./modules/Brightness/info")],"edge-detect":[e("./modules/EdgeDetect/Module"),e("./modules/EdgeDetect/info")],ndvi:[e("./modules/Ndvi/Module"),e("./modules/Ndvi/info")],invert:[e("./modules/Invert/Module"),e("./modules/Invert/info")],crop:[e("./modules/Crop/Module"),e("./modules/Crop/info")],colormap:[e("./modules/Colormap/Module"),e("./modules/Colormap/info")],"decode-qr":[e("./modules/DecodeQr/Module"),e("./modules/DecodeQr/info")],"fisheye-gl":[e("./modules/FisheyeGl/Module"),e("./modules/FisheyeGl/info")],dynamic:[e("./modules/Dynamic/Module"),e("./modules/Dynamic/info")],blur:[e("./modules/Blur/Module"),e("./modules/Blur/info")],saturation:[e("./modules/Saturation/Module"),e("./modules/Saturation/info")]}},{"./modules/Blur/Module":141,"./modules/Blur/info":142,"./modules/Brightness/Module":143,"./modules/Brightness/info":144,"./modules/Channel/Module":145,"./modules/Channel/info":146,"./modules/Colormap/Module":148,"./modules/Colormap/info":149,"./modules/Crop/Module":151,"./modules/Crop/info":153,"./modules/DecodeQr/Module":154,"./modules/DecodeQr/info":155,"./modules/Dynamic/Module":156,"./modules/Dynamic/info":157,"./modules/EdgeDetect/Module":159,"./modules/EdgeDetect/info":160,"./modules/FisheyeGl/Module":161,"./modules/FisheyeGl/info":162,"./modules/Invert/Module":163,"./modules/Invert/info":164,"./modules/Ndvi/Module":165,"./modules/Ndvi/info":166,"./modules/Saturation/Module":167,"./modules/Saturation/info":168}],138:[function(e,t,n){t.exports=function(e,t,n,r){if(!e.options.inBrowser)return!1;var i=ImageSequencer({ui:!1});if(window.hasOwnProperty("$"))var a=$(t);else a=document.querySelectorAll(t);for(var o=[],s=0;s=0;n--){let r=[];for(let t=e[n].length-1;t>=0;t--)r.push(e[n][t]);t.push(r)}return t}(n);var r=e;for(let t=0;tg;n=0<=g?++f:--f)r[n]=(t-i)/(a-i)*(u[n]-s[n])+s[n];return r}}t.exports=function(e,t){return t.colormap=t.colormap||i.default,"object"==typeof t.colormap?colormapFunction=r(t.colormap):i.hasOwnProperty(t.colormap)?colormapFunction=i[t.colormap]:colormapFunction=i.default,colormapFunction(e/255)};var i={greyscale:r([[0,[0,0,0],[255,255,255]],[1,[255,255,255],[255,255,255]]]),default:r([[0,[0,0,255],[0,255,0]],[.25,[0,255,0],[255,255,0]],[.5,[0,255,255],[255,255,0]],[.75,[255,255,0],[255,0,0]]]),ndvi:r([[0,[0,0,255],[38,195,195]],[.5,[0,150,0],[255,255,0]],[.75,[255,255,0],[255,50,50]]]),stretched:r([[0,[0,0,255],[0,0,255]],[.1,[0,0,255],[38,195,195]],[.5,[0,150,0],[255,255,0]],[.7,[255,255,0],[255,50,50]],[.9,[255,50,50],[255,50,50]]]),fastie:r([[0,[255,255,255],[0,0,0]],[.167,[0,0,0],[255,255,255]],[.33,[255,255,255],[0,0,0]],[.5,[0,0,0],[140,140,255]],[.55,[140,140,255],[0,255,0]],[.63,[0,255,0],[255,255,0]],[.75,[255,255,0],[255,0,0]],[.95,[255,0,0],[255,0,255]]])}},{}],148:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(n,r,i,a){var o=(n+r+i)/3,s=e("./Colormap")(o,t);return[s[0],s[1],s[2],255]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":169,"./Colormap":147}],149:[function(e,t,n){t.exports={name:"Colormap",description:"Maps brightness values (average of red, green & blue) to a given color lookup table, made up of a set of one more color gradients.\n\nFor example, 'cooler' colors like blue could represent low values, while 'hot' colors like red could represent high values.",inputs:{colormap:{type:"select",desc:"Name of the Colormap",default:"default",values:["default","greyscale","stretched","fastie"]}}}},{}],150:[function(e,t,n){(function(n){t.exports=function(t,r,i){var a=e("get-pixels"),o=e("save-pixels");r.x=parseInt(r.x)||0,r.y=parseInt(r.y)||0,a(t.src,function(e,a){r.w=parseInt(r.w)||Math.floor(.5*a.shape[0]),r.h=parseInt(r.h)||Math.floor(.5*a.shape[1]);for(var s=r.x,u=r.y,l=r.w,f=r.h,c=a.shape[0],h=new Uint8Array(4*l*f),p=u;pInfragrammar.",inputs:{red:{type:"input",desc:"Expression to return for red channel with R, G, B, and A inputs",default:"r"},green:{type:"input",desc:"Expression to return for green channel with R, G, B, and A inputs",default:"g"},blue:{type:"input",desc:"Expression to return for blue channel with R, G, B, and A inputs",default:"b"},"monochrome (fallback)":{type:"input",desc:"Expression to return with R, G, B, and A inputs; fallback for other channels if none provided",default:"r + g + b"}}}},{}],158:[function(e,t,n){const r=e("lodash"),i=[[-1,0,1],[-2,0,2],[-1,0,1]],a=[[-1,-2,-1],[0,0,0],[1,2,1]];let o,s=[],u=[],l=[],f=[];function c(e,t,n,r,o){let s=0;for(let t=0;t<3;t++)for(let n=0;n<3;n++){let a=r+t-1,u=o+n-1;s+=e.get(a,u,0)*i[t][n]}let u=0;for(let t=0;t<3;t++)for(let n=0;n<3;n++){let i=r+t-1,s=o+n-1;u+=e.get(i,s,0)*a[t][n]}return{pixel:[t,t,t,Math.sqrt(Math.pow(s,2)+Math.pow(u,2))],angle:Math.atan2(u,s)}}t.exports=function(e,t,n,i){o=!i;for(var a=0;ar.isEqual(e,n[pixel]))){e.set(weakPixel[0],weakPixel[1],3,255),f.splice(weakPixel,weakPixel);break}}return f.forEach(t=>e.set(t[0],t[1],3,0)),e}(function(e,t,n){const r=.2*p(u),i=r*n;for(let t=0;ti?u[t][n]>r?l.push(a):f.push(a):e.set(t,n,3,0)}return l.forEach(t=>e.set(t[0],t[1],3,255)),e}(function(e){s=s.map(e=>e.map(h));for(let t=1;t=-22.5&&r<=22.5||r<-157.5&&r>=-180?u[t][n]>=u[t][n+1]&&u[t][n]>=u[t][n-1]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0):r>=22.5&&r<=67.5||r<-112.5&&r>=-157.5?u[t][n]>=u[t+1][n+1]&&u[t][n]>=u[t-1][n-1]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0):r>=67.5&&r<=112.5||r<-67.5&&r>=-112.5?u[t][t]>=u[t+1][n]&&u[t][n]>=u[t][n]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0):(r>=112.5&&r<=157.5||r<-22.5&&r>=-67.5)&&(u[t][n]>=u[t+1][n-1]&&u[t][n]>=u[t-1][n+1]?e.set(t,n,3,u[t][n]):e.set(t,n,3,0))}return e}(e),0,n))};var h=e=>180*e/Math.PI,p=e=>Math.max(...e.map(e=>e.map(e=>e||0)).map(e=>Math.max(...e)))},{lodash:57}],159:[function(e,t,n){t.exports=function(t,n){return(t=t||{}).blur=t.blur||2,t.highThresholdRatio=t.highThresholdRatio||.2,t.lowThresholdRatio=t.lowThresholdRatio||.15,n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,t,n,r){return[(e+t+n)/3,(e+t+n)/3,(e+t+n)/3,r]},extraManipulation:function(n){return n=e("ndarray-gaussian-filter")(n,t.blur),e("./EdgeUtils")(n,t.highThresholdRatio,t.lowThresholdRatio,t.inBrowser)},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":169,"./EdgeUtils":158,"ndarray-gaussian-filter":62}],160:[function(e,t,n){t.exports={name:"Detect Edges",description:"this module detects edges using the Canny method, which first Gaussian blurs the image to reduce noise (amount of blur configurable in settings as `options.blur`), then applies a number of steps to highlight edges, resulting in a greyscale image where the brighter the pixel, the stronger the detected edge. Read more at: https://en.wikipedia.org/wiki/Canny_edge_detector",inputs:{blur:{type:"integer",desc:"amount of gaussian blur(Less blur gives more detail, typically 0-5)",default:2},highThresholdRatio:{type:"float",desc:"The high threshold ratio for the image",default:.2},lowThresholdRatio:{type:"float",desc:"The low threshold value for the image",default:.15}}}},{}],161:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),e("fisheyegl"),{options:t,draw:function(e,r){n.onDraw(t.step);var i=this;if(t.inBrowser){if(document.querySelector("#image-sequencer-canvas"))var a=document.querySelector("#image-sequencer-canvas");else(a=document.createElement("canvas")).style.display="none",a.setAttribute("id","image-sequencer-canvas"),document.body.append(a);distorter=FisheyeGl({selector:"#image-sequencer-canvas"}),t.a=parseFloat(t.a)||distorter.lens.a,t.b=parseFloat(t.b)||distorter.lens.b,t.Fx=parseFloat(t.Fx)||distorter.lens.Fx,t.Fy=parseFloat(t.Fy)||distorter.lens.Fy,t.scale=parseFloat(t.scale)||distorter.lens.scale,t.x=parseFloat(t.x)||distorter.fov.x,t.y=parseFloat(t.y)||distorter.fov.y,distorter.lens.a=t.a,distorter.lens.b=t.b,distorter.lens.Fx=t.Fx,distorter.lens.Fy=t.Fy,distorter.lens.scale=t.scale,distorter.fov.x=t.x,distorter.fov.y=t.y,distorter.setImage(e.src,function(){i.output={src:a.toDataURL(),format:e.format},t.step.output=i.output.src,r(),n.onComplete(t.step)})}else this.output=e,r()},output:void 0,UI:n}}},{fisheyegl:30}],162:[function(e,t,n){t.exports={name:"Fisheye GL",description:"Correct fisheye, or barrel distortion, in images (with WebGL -- adapted from fisheye-correction-webgl by @bluemir).",requires:["webgl"],inputs:{a:{type:"float",desc:"a parameter",default:1,min:1,max:4},b:{type:"float",desc:"b parameter",default:1,min:1,max:4},Fx:{type:"float",desc:"Fx parameter",default:0,min:0,max:4},Fy:{type:"float",desc:"Fy parameter",default:0,min:0,max:4},scale:{type:"float",desc:"Image Scaling",default:1.5,min:0,max:20},x:{type:"float",desc:"FOV x parameter",default:1.5,min:0,max:20},y:{type:"float",desc:"FOV y parameter",default:1.5,min:0,max:20},fragmentSrc:{type:"PATH",desc:"Patht to a WebGL fragment shader file",default:"(inbuilt)"},vertexSrc:{type:"PATH",desc:"Patht to a WebGL vertex shader file",default:"(inbuilt)"}}}},{}],163:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,t,n,r){return[255-e,255-t,255-n,r]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":169}],164:[function(e,t,n){t.exports={name:"Invert",description:"Inverts the image.",inputs:{}}},{}],165:[function(e,t,n){t.exports=function(t,n){return(t=t||{}).filter=t.filter||"red",n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,n,r,i){if("red"==t.filter)var a=(r-e)/(1*r+e);"blue"==t.filter&&(a=(e-r)/(1*r+e));var o=255*(a+1)/2;return[o,o,o,i]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":169}],166:[function(e,t,n){t.exports={name:"NDVI",description:"Normalized Difference Vegetation Index, or NDVI, is an image analysis technique used with aerial photography. It's a way to visualize the amounts of infrared and other wavelengths of light reflected from vegetation by comparing ratios of blue and red light absorbed versus green and IR light reflected. NDVI is used to evaluate the health of vegetation in satellite imagery, where it correlates with how much photosynthesis is happening. This is helpful in assessing vegetative health or stress. Read more.

This is designed for use with red-filtered single camera DIY Infragram cameras; change to 'blue' for blue filters",inputs:{filter:{type:"select",desc:"Filter color",default:"red",values:["red","blue"]}}}},{}],167:[function(e,t,n){t.exports=function(t,n){return t=t||{},n.onSetup(t.step),{options:t,draw:function(r,i,a){a.stop(!0),a.overrideFlag=!0,n.onDraw(t.step);var o=this;return e("../_nomodule/PixelManipulation.js")(r,{output:function(e,r,i){o.output={src:r,format:i},t.step.output=r,n.onComplete(t.step)},changePixel:function(e,n,r,i){var a=Math.sqrt(e*e*.299+n*n*.587+n*n*.114);return e=a+(e-a)*t.saturation,n=a+(n-a)*t.saturation,r=a+(r-a)*t.saturation,[Math.round(e),Math.round(n),Math.round(r),i]},format:r.format,image:t.image,inBrowser:t.inBrowser,callback:i})},output:void 0,UI:n}}},{"../_nomodule/PixelManipulation.js":169}],168:[function(e,t,n){t.exports={name:"Saturation",description:"Change the saturation of the image by given value, from 0-1, with 1 being 100% saturated.",inputs:{saturation:{type:"integer",desc:"saturation for the new image between 0 and 2, 0 being black and white and 2 being highly saturated",default:0}}}},{}],169:[function(e,t,n){(function(n){t.exports=function(t,r){(r=r||{}).changePixel=r.changePixel||function(e,t,n,r){return[e,t,n,r]},r.extraManipulation=r.extraManipulation||function(e){return e};var i=e("get-pixels"),a=e("save-pixels");i(t.src,function(i,o){if(i)console.log("Bad image path",t);else{if(r.getNeighbourPixel&&(r.getNeighbourPixel.fun=function(e,t){return r.getNeighbourPixel(o,u,l,e,t)}),!r.inBrowser)try{var s=e("pace")(o.shape[0]*o.shape[1])}catch(e){r.inBrowser=!0}for(var u=0;u
To work with a new or different image, drag one into the drop zone.",ID:t.options.sequencerCounter++,imageName:e,inBrowser:t.options.inBrowser,ui:t.options.ui},o={src:n,steps:[{options:{id:r.ID,name:"load-image",description:"This initial step loads and displays the original image without any modifications.",title:"Load Image",step:r},UI:t.events,draw:function(){return UI.onDraw(options.step),1==arguments.length?(this.output=a(arguments[0]),options.step.output=this.output,UI.onComplete(options.step),!0):2==arguments.length&&(this.output=a(arguments[0]),options.step.output=this.output,arguments[1](),UI.onComplete(options.step),!0)}}]};a(n,function(n){var r=function(e){return{src:e,format:e.split(":")[1].split(";")[0].split("/")[1]}}(n);t.images[e]=o;var a=t.images[e].steps[0];return a.output=r,a.options.step.output=a.output.src,a.UI.onSetup(a.options.step),a.UI.onDraw(a.options.step),a.UI.onComplete(a.options.step),i(),!0})}(n,r)}},{urify:127}],171:[function(e,t,n){t.exports=function(e={}){return e.onSetup=e.onSetup||function(e){0==e.ui||(e.inBrowser?console.log('Added Step "'+e.name+'" to "'+e.imageName+'".'):console.log("%s",'Added Step "'+e.name+'" to "'+e.imageName+'".'))},e.onDraw=e.onDraw||function(e){0==e.ui||(e.inBrowser?console.log('Drawing Step "'+e.name+'" on "'+e.imageName+'".'):console.log("%s",'Drawing Step "'+e.name+'" on "'+e.imageName+'".'))},e.onComplete=e.onComplete||function(e){0==e.ui||(e.inBrowser?console.log('Drawn Step "'+e.name+'" on "'+e.imageName+'".'):console.log("%s",'Drawn Step "'+e.name+'" on "'+e.imageName+'".'))},e.onRemove=e.onRemove||function(e){0==e.ui||(e.inBrowser?console.log('Removing Step "'+e.name+'" of "'+e.imageName+'".'):console.log("%s",'Removing Step "'+e.name+'" of "'+e.imageName+'".'))},e}},{}]},{},[135]); \ No newline at end of file diff --git a/examples/demo.js b/examples/demo.js index 614e714b..e329094f 100644 --- a/examples/demo.js +++ b/examples/demo.js @@ -1,208 +1,28 @@ window.onload = function() { - sequencer = ImageSequencer(); // Load information of all modules (Name, Inputs, Outputs) var modulesInfo = sequencer.modulesInfo(); // Add modules to the addStep dropdown - for(var m in modulesInfo) { - $('#addStep select').append( - '' + for (var m in modulesInfo) { + $("#addStep select").append( + '" ); } - // Initial definitions - var steps = document.querySelector('#steps'); - var parser = new DOMParser(); - var reader = new FileReader(); + // UI for each step: + sequencer.setUI(DefaultHtmlStepUi(sequencer)); - // Set the UI in sequencer. This Will generate HTML based on - // Image Sequencer events : - // onSetup : Called every time a step is added - // onDraw : Called every time a step starts draw - // onComplete : Called every time a step finishes drawing - // onRemove : Called everytime a step is removed - // The variable 'step' stores useful data like input and - // output values, step information. - // See documetation for more details. - sequencer.setUI({ + // UI for the overall demo: + var ui = DefaultHtmlSequencerUi(sequencer); - onSetup: function(step) { - - if (step.options && step.options.description) step.description = step.options.description - - step.ui = '\ -
\ -
\ -

'+step.name+'

\ -

'+(step.description || '')+'

\ -
\ -
\ - \ - \ -
\ -
\ - '; - - var tools = - '
\ - \ -
'; - - step.ui = parser.parseFromString(step.ui,'text/html'); - step.ui = step.ui.querySelector('div.row'); - step.linkElement = step.ui.querySelector('a'); - step.imgElement = step.ui.querySelector('a img'); - - if(sequencer.modulesInfo().hasOwnProperty(step.name)) { - var inputs = sequencer.modulesInfo(step.name).inputs; - var outputs = sequencer.modulesInfo(step.name).outputs; - var merged = Object.assign(inputs, outputs); // combine outputs w inputs - for (var paramName in merged) { - var isInput = inputs.hasOwnProperty(paramName); - var html = ""; - var inputDesc = (isInput)?inputs[paramName]:{}; - if (!isInput) { - html += ""; - } else if (inputDesc.type.toLowerCase() == "select") { - html += ""; - } else { - html = ""; - } - var div = document.createElement('div'); - div.className = "row"; - div.setAttribute('name', paramName); - var description = inputs[paramName].desc || paramName; - div.innerHTML = "
\ - \ - "+html+"\ -
"; - step.ui.querySelector('div.details').appendChild(div); - } - $(step.ui.querySelector('div.details')).append("

"); - - function saveOptions() { - $(step.ui.querySelector('div.details')).find('input,select').each(function(i, input) { - step.options[$(input).attr('name')] = input.value; - }); - sequencer.run(); - } - - // on clicking Save in the details pane of the step - $(step.ui.querySelector('div.details .btn-save')).click(saveOptions); - } - - if(step.name != "load-image") - step.ui.querySelector('div.details').appendChild( - parser.parseFromString(tools,'text/html') - .querySelector('div') - ); - - steps.appendChild(step.ui); - }, - - onDraw: function(step) { - $(step.ui.querySelector('.load')).show(); - $(step.ui.querySelector('img')).hide(); - }, - - onComplete: function(step) { - $(step.ui.querySelector('.load')).hide(); - $(step.ui.querySelector('img')).show(); - - step.imgElement.src = step.output; - step.linkElement.href = step.output; - - function fileExtension(output) { - return output.split('/')[1].split(';')[0]; - } - - step.linkElement.download = step.name + "." + fileExtension(step.output); - step.linkElement.target = "_blank"; - - if(sequencer.modulesInfo().hasOwnProperty(step.name)) { - var inputs = sequencer.modulesInfo(step.name).inputs; - var outputs = sequencer.modulesInfo(step.name).outputs; - for (var i in inputs) { - if (step.options[i] !== undefined && - inputs[i].type.toLowerCase() === "input") step.ui.querySelector('div[name="' + i + '"] input') - .value = step.options[i]; - if (step.options[i] !== undefined && - inputs[i].type.toLowerCase() === "select") step.ui.querySelector('div[name="' + i + '"] select') - .value = step.options[i]; - } - for (var i in outputs) { - if (step[i] !== undefined) step.ui.querySelector('div[name="'+i+'"] input') - .value = step[i]; - } - } - }, - - onRemove: function(step) { - step.ui.remove(); - } - - }); - - sequencer.loadImage('images/tulips.png', function loadImageUI() { - - // look up needed steps from Url Hash: - var hash = getUrlHashParameter('steps'); - - if (hash) { - var stepsFromHash = hash.split(','); - stepsFromHash.forEach(function eachStep(step) { - sequencer.addSteps(step); - }); - sequencer.run(); - } - - }); - - $('#addStep select').on('change', selectNewStepUI); - - function selectNewStepUI() { - var m = $('#addStep select').val(); - $('#addStep .info').html(sequencer.modulesInfo(m).description); - } - - function addStepUI() { - var options = {}; - var inputs = $('#options input, #options select'); - $.each(inputs, function() { - options[this.name] = $(this).val(); - }); - if($('#addStep select').val() == "none") return; - // add to URL hash too - var hash = getUrlHashParameter('steps') || ''; - if (hash != '') hash += ','; - setUrlHashParameter('steps', hash + $('#addStep select').val()) - sequencer.addSteps($('#addStep select').val(),options).run(); - } - - $('#addStep button').on('click', addStepUI); - - - function removeStepUI(){ - var index = $('button.remove').index(this) + 1; - sequencer.removeSteps(index).run(); - // remove from URL hash too - var urlHash = getUrlHashParameter('steps').split(','); - urlHash.splice(index - 1, 1); - setUrlHashParameter("steps", urlHash.join(',')); - } - - $('body').on('click','button.remove', removeStepUI); + sequencer.loadImage("images/tulips.png", ui.onLoad); + $("#addStep select").on("change", ui.selectNewStepUi); + $("#addStep button").on("click", ui.addStepUi); + $('body').on('click', 'button.remove', ui.removeStepUi); // image selection and drag/drop handling from examples/lib/imageSelection.js setupFileHandling(sequencer); - -} +}; diff --git a/examples/index.html b/examples/index.html index 5343495b..903d56a6 100644 --- a/examples/index.html +++ b/examples/index.html @@ -3,76 +3,93 @@ - + - - - + + + - Image Sequencer + Image Sequencer - - - - - - + + + + + + + + + + - + - + - - - + + + + + + + -
+
-
-

Image Sequencer

-

- A pure JavaScript sequential image processing system, inspired by storyboards. Instead of modifying the original image, it creates a new image at each step in a sequence. - Learn more -

-

- Open Source by Public Lab -

-
- -
-

Select or drag in an image to start!

-
-
- -
- -
- -
-
-
-
- - -
-
-

Select a new module to add to your sequence.

-
-
-
+
+

Image Sequencer

+

+ A pure JavaScript sequential image processing system, inspired by storyboards. Instead of modifying the original image, it + creates a new image at each step in a sequence. + Learn more +

+

+ Open Source + + + by + Public Lab +

+
+
+

+ Select or drag in an image to start! +

+
+ +
- - - - + diff --git a/examples/lib/defaultHtmlSequencerUi.js b/examples/lib/defaultHtmlSequencerUi.js new file mode 100644 index 00000000..cf36154a --- /dev/null +++ b/examples/lib/defaultHtmlSequencerUi.js @@ -0,0 +1,60 @@ +function DefaultHtmlSequencerUi(_sequencer, options) { + + options = options || {}; + var addStepSel = options.addStepSel = options.addStepSel || "#addStep"; + var removeStepSel = options.removeStepSel = options.removeStepSel || "button.remove"; + var selectStepSel = options.selectStepSel = options.selectStepSel || "#selectStep"; + + function onLoad() { + importStepsFromUrlHash(); + } + + // look up needed steps from Url Hash: + function importStepsFromUrlHash() { + var hash = getUrlHashParameter("steps"); + + if (hash) { + var stepsFromHash = hash.split(","); + stepsFromHash.forEach(function eachStep(step) { + _sequencer.addSteps(step); + }); + _sequencer.run(); + } + } + + function selectNewStepUi() { + var m = $(addStepSel + " select").val(); + $(addStepSel + " .info").html(_sequencer.modulesInfo(m).description); + } + + function removeStepUi() { + var index = $(removeStepSel).index(this) + 1; + sequencer.removeSteps(index).run(); + // remove from URL hash too + var urlHash = getUrlHashParameter("steps").split(","); + urlHash.splice(index - 1, 1); + setUrlHashParameter("steps", urlHash.join(",")); + } + + function addStepUi() { + if ($(addStepSel + " select").val() == "none") return; + + // add to URL hash too + var hash = getUrlHashParameter("steps") || ""; + if (hash != "") hash += ","; + setUrlHashParameter("steps", hash + $(addStepSel + " select").val()); + + var newStepName = $(addStepSel + " select").val(); + _sequencer + .addSteps(newStepName, options) + .run(null); + } + + return { + onLoad: onLoad, + importStepsFromUrlHash: importStepsFromUrlHash, + selectNewStepUi: selectNewStepUi, + removeStepUi: removeStepUi, + addStepUi: addStepUi + } +} diff --git a/examples/lib/defaultHtmlStepUi.js b/examples/lib/defaultHtmlStepUi.js new file mode 100644 index 00000000..2e2f1338 --- /dev/null +++ b/examples/lib/defaultHtmlStepUi.js @@ -0,0 +1,184 @@ +// Set the UI in sequencer. This Will generate HTML based on +// Image Sequencer events : +// onSetup : Called every time a step is added +// onDraw : Called every time a step starts draw +// onComplete : Called every time a step finishes drawing +// onRemove : Called everytime a step is removed +// The variable 'step' stores useful data like input and +// output values, step information. +// See documetation for more details. +function DefaultHtmlStepUi(_sequencer, options) { + + options = options || {}; + var stepsEl = options.stepsEl || document.querySelector("#steps"); + var selectStepSel = options.selectStepSel = options.selectStepSel || "#selectStep"; + + function onSetup(step) { + if (step.options && step.options.description) + step.description = step.options.description; + + step.ui = + '\ +
\ +
\ +

' + + step.name + + "

\ +

" + + (step.description || "") + + '

\ +
\ +
\ + \ + \ +
\ +
\ + '; + + var tools = + '
\ + \ +
'; + + var parser = new DOMParser(); + step.ui = parser.parseFromString(step.ui, "text/html"); + step.ui = step.ui.querySelector("div.row"); + step.linkElement = step.ui.querySelector("a"); + step.imgElement = step.ui.querySelector("a img"); + + if (_sequencer.modulesInfo().hasOwnProperty(step.name)) { + var inputs = _sequencer.modulesInfo(step.name).inputs; + var outputs = _sequencer.modulesInfo(step.name).outputs; + var merged = Object.assign(inputs, outputs); // combine outputs w inputs + + for (var paramName in merged) { + var isInput = inputs.hasOwnProperty(paramName); + var html = ""; + var inputDesc = isInput ? inputs[paramName] : {}; + if (!isInput) { + html += ''; + } else if (inputDesc.type.toLowerCase() == "select") { + html += '"; + } else { + html = + ''; + } + + var div = document.createElement("div"); + div.className = "row"; + div.setAttribute("name", paramName); + var description = inputs[paramName].desc || paramName; + div.innerHTML = + "
\ + \ + " + + html + + "\ +
"; + step.ui.querySelector("div.details").appendChild(div); + } + $(step.ui.querySelector("div.details")).append( + "

" + ); + + function saveOptions() { + $(step.ui.querySelector("div.details")) + .find("input,select") + .each(function(i, input) { + step.options[$(input).attr("name")] = input.value; + }); + _sequencer.run(); + } + + saveOptions(); + + // on clicking Save in the details pane of the step + $(step.ui.querySelector("div.details .btn-save")).click(saveOptions); + } + + if (step.name != "load-image") + step.ui + .querySelector("div.details") + .appendChild( + parser.parseFromString(tools, "text/html").querySelector("div") + ); + + stepsEl.appendChild(step.ui); + } + + function onDraw(step) { + $(step.ui.querySelector(".load")).show(); + $(step.ui.querySelector("img")).hide(); + } + + function onComplete(step) { + $(step.ui.querySelector(".load")).hide(); + $(step.ui.querySelector("img")).show(); + + step.imgElement.src = step.output; + step.linkElement.href = step.output; + + // TODO: use a generalized version of this + function fileExtension(output) { + return output.split("/")[1].split(";")[0]; + } + + step.linkElement.download = step.name + "." + fileExtension(step.output); + step.linkElement.target = "_blank"; + + // fill inputs with stored step options + if (_sequencer.modulesInfo().hasOwnProperty(step.name)) { + var inputs = _sequencer.modulesInfo(step.name).inputs; + var outputs = _sequencer.modulesInfo(step.name).outputs; + for (var i in inputs) { + if ( + step.options[i] !== undefined && + inputs[i].type.toLowerCase() === "input" + ) + step.ui.querySelector('div[name="' + i + '"] input').value = + step.options[i]; + if ( + step.options[i] !== undefined && + inputs[i].type.toLowerCase() === "select" + ) + step.ui.querySelector('div[name="' + i + '"] select').value = + step.options[i]; + } + for (var i in outputs) { + if (step[i] !== undefined) + step.ui.querySelector('div[name="' + i + '"] input').value = + step[i]; + } + } + } + + function onRemove(step) { + step.ui.remove(); + } + + function getPreview() { + return step.imgElement; + } + + return { + getPreview: getPreview, + onSetup: onSetup, + onComplete: onComplete, + onRemove: onRemove, + onDraw: onDraw + } +} diff --git a/package.json b/package.json index 2a72928b..ba9f73b0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "image-sequencer", - "version": "1.3.3", + "version": "1.4.0", "description": "A modular JavaScript image manipulation library modeled on a storyboard.", "main": "src/ImageSequencer.js", "scripts": { @@ -36,7 +36,8 @@ "pace": "0.0.4", "readline-sync": "^1.4.7", "save-pixels": "~2.3.4", - "urify": "^2.1.0" + "urify": "^2.1.0", + "imgareaselect": "git://github.com/jywarren/imgareaselect.git#v1.0.0-rc.2" }, "devDependencies": { "browserify": "13.0.0", diff --git a/src/AddStep.js b/src/AddStep.js index 7116fa9f..eabbd545 100644 --- a/src/AddStep.js +++ b/src/AddStep.js @@ -1,30 +1,30 @@ // add steps to the sequencer -function AddStep(ref, image, name, o) { +function AddStep(_sequencer, image, name, o) { function addStep(image, name, o_) { - var moduleInfo = ref.modules[name][1]; + var moduleInfo = _sequencer.modules[name][1]; - var o = ref.copy(o_); - o.number = ref.options.sequencerCounter++; // gives a unique ID to each step + var o = _sequencer.copy(o_); + o.number = _sequencer.options.sequencerCounter++; // gives a unique ID to each step o.name = o_.name || name || moduleInfo.name; o.description = o_.description || moduleInfo.description; o.selector = o_.selector || 'ismod-' + name; - o.container = o_.container || ref.options.selector; + o.container = o_.container || _sequencer.options.selector; o.image = image; - o.inBrowser = ref.options.inBrowser; + o.inBrowser = _sequencer.options.inBrowser; o.step = { name: o.name, description: o.description, ID: o.number, imageName: o.image, - inBrowser: ref.options.inBrowser, - ui: ref.options.ui, + inBrowser: _sequencer.options.inBrowser, + ui: _sequencer.options.ui, options: o }; - var UI = ref.events; - var module = ref.modules[name][0](o,UI); - ref.images[image].steps.push(module); + var UI = _sequencer.events; + var module = _sequencer.modules[name][0](o,UI); + _sequencer.images[image].steps.push(module); return true; } diff --git a/src/modules/Crop/Module.js b/src/modules/Crop/Module.js index 84e9550a..ae1c4ac5 100644 --- a/src/modules/Crop/Module.js +++ b/src/modules/Crop/Module.js @@ -13,47 +13,65 @@ * y = options.y * y = options.y + options.h */ - module.exports = function CropModule(options,UI) { +module.exports = function CropModule(options, UI) { - // TODO: we could also set this to {} if nil in AddModule.js to avoid this line: - options = options || {}; + // TODO: we could also set this to {} if nil in AddModule.js to avoid this line: + options = options || {}; - // Tell the UI that a step has been added - UI.onSetup(options.step); - var output; + // Tell the UI that a step has been added + UI.onSetup(options.step); // we should get UI to return the image thumbnail so we can attach our own UI extensions - // This function is caled everytime the step has to be redrawn - function draw(input,callback) { + // add our custom in-module html ui: + if (options.step.inBrowser) var ui = require('./Ui.js')(options.step, UI); + var output, + setupComplete = false; - // Tell the UI that the step has been triggered - UI.onDraw(options.step); - var step = this; + // This function is caled everytime the step has to be redrawn + function draw(input,callback) { - require('./Crop')(input,options,function(out,format){ + // Tell the UI that the step has been triggered + UI.onDraw(options.step); + var step = this; - // This output is accessible to Image Sequencer - step.output = { - src: out, - format: format - } + // save the input image; + // TODO: this should be moved to module API to persist the input image + options.step.input = input.src; - // This output is accessible to the UI - options.step.output = out; + require('./Crop')(input, options, function(out, format){ - // Tell the UI that the step has been drawn - UI.onComplete(options.step); + // This output is accessible to Image Sequencer + step.output = { + src: out, + format: format + } - // Tell Image Sequencer that step has been drawn - callback(); + // This output is accessible to the UI + options.step.output = out; - }); + // Tell the UI that the step has been drawn + UI.onComplete(options.step); - } + // we should do this via event/listener: + if (ui && ui.hide) ui.hide(); - return { - options: options, - draw: draw, - output: output, - UI: UI - } - } + // start custom UI setup (draggable UI) + // only once we have an input image + if (setupComplete === false && options.step.inBrowser) { + setupComplete = true; + ui.setup(); + } + + // Tell Image Sequencer that step has been drawn + callback(); + + }); + + } + + return { + options: options, + draw: draw, + output: output, + UI: UI + } +} diff --git a/src/modules/Crop/Ui.js b/src/modules/Crop/Ui.js new file mode 100644 index 00000000..a9cd016b --- /dev/null +++ b/src/modules/Crop/Ui.js @@ -0,0 +1,97 @@ +// hide on save +module.exports = function CropModuleUi(step, ui) { + + let inputWidth = 0, + inputHeight = 0; + + // We don't have input image dimensions at the + // time of setting up the UI; that comes when draw() is triggered. + // So we trigger setup only on first run of draw() + // TODO: link this to an event rather than an explicit call in Module.js + function setup() { + let x = 0, + y = 0; + + // display original uncropped input image on initial setup + showOriginal() + + inputWidth = Math.floor(imgEl().naturalWidth); + inputHeight = Math.floor(imgEl().naturalHeight); + + // display with 50%/50% default crop: + setOptions(x, y, inputWidth, inputHeight); + + $(imgEl()).imgAreaSelect({ + handles: true, + x1: x, + y1: y, + x2: x + inputWidth / 2, + y2: y + inputHeight / 2, + // when selection is complete + onSelectEnd: function onSelectEnd(img, selection) { + // assign crop values to module UI form inputs: + let converted = convertToNatural( + selection.x1, + selection.y1, + selection.width, + selection.height + ); + setOptions( + converted[0], + converted[1], + converted[2], + converted[3] + ); + } + }); + } + + function convertToNatural(_x, _y, _width, _height) { + let displayWidth = $(imgEl()).width(), + displayHeight = $(imgEl()).height(); + // return in same order [ x, y, width, height ]: + return [ + Math.floor(( _x / displayWidth ) * inputWidth), + Math.floor(( _y / displayHeight ) * inputHeight), + Math.floor(( _width / displayWidth ) * inputWidth), + Math.floor(( _height / displayHeight ) * inputHeight) + ] + } + + function remove() { + $(imgEl()).imgAreaSelect({ + remove: true + }); + } + + function hide() { + // then hide the draggable UI + $(imgEl()).imgAreaSelect({ + hide: true + }); + } + + // step.imgSelector is not defined, imgElement is: + function imgEl() { + return step.imgElement; + } + + function setOptions(x1, y1, width, height) { + let options = $($(imgEl()).parents()[2]).find("input"); + options[0].value = x1; + options[1].value = y1; + options[2].value = width; + options[3].value = height; + } + + // replaces currently displayed output thumbnail with the input image, for ui dragging purposes + function showOriginal() { + step.imgElement.src = step.input; + } + + return { + setup: setup, + remove: remove, + hide: hide + } +} diff --git a/src/ui/UserInterface.js b/src/ui/UserInterface.js index c0f1df5b..b8b1f40f 100644 --- a/src/ui/UserInterface.js +++ b/src/ui/UserInterface.js @@ -5,14 +5,12 @@ module.exports = function UserInterface(events = {}) { events.onSetup = events.onSetup || function(step) { - if(step.ui == false) { + if (step.ui == false) { // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Create and append an HTML Element console.log("Added Step \""+step.name+"\" to \""+step.imageName+"\"."); - } - else { + } else { // Create a NodeJS Object console.log('\x1b[36m%s\x1b[0m',"Added Step \""+step.name+"\" to \""+step.imageName+"\"."); } @@ -21,12 +19,10 @@ module.exports = function UserInterface(events = {}) { events.onDraw = events.onDraw || function(step) { if (step.ui == false) { // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Overlay a loading spinner console.log("Drawing Step \""+step.name+"\" on \""+step.imageName+"\"."); - } - else { + } else { // Don't do anything console.log('\x1b[33m%s\x1b[0m',"Drawing Step \""+step.name+"\" on \""+step.imageName+"\"."); } @@ -35,27 +31,23 @@ module.exports = function UserInterface(events = {}) { events.onComplete = events.onComplete || function(step) { if (step.ui == false) { // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Update the DIV Element // Hide the laoding spinner console.log("Drawn Step \""+step.name+"\" on \""+step.imageName+"\"."); - } - else { + } else { // Update the NodeJS Object console.log('\x1b[32m%s\x1b[0m',"Drawn Step \""+step.name+"\" on \""+step.imageName+"\"."); } } events.onRemove = events.onRemove || function(step) { - if(step.ui == false){ + if (step.ui == false){ // No UI - } - else if(step.inBrowser) { + } else if(step.inBrowser) { // Remove the DIV Element console.log("Removing Step \""+step.name+"\" of \""+step.imageName+"\"."); - } - else { + } else { // Delete the NodeJS Object console.log('\x1b[31m%s\x1b[0m',"Removing Step \""+step.name+"\" of \""+step.imageName+"\"."); }