From 990543aa11768316837102084f364134bac97e40 Mon Sep 17 00:00:00 2001 From: Divy123 Date: Sun, 3 Mar 2019 06:08:29 +0530 Subject: [PATCH 1/6] Change addsteps(), loadImages(), run() and default UI --- src/AddStep.js | 4 +- src/FormatInput.js | 94 +++++++++++++++++++-------------------- src/ImageSequencer.js | 39 ++++++---------- src/InsertStep.js | 18 ++++---- src/Run.js | 55 ++++++++++++----------- src/ui/LoadImage.js | 98 ++++++++++++++++++++++------------------- src/ui/UserInterface.js | 16 +++---- 7 files changed, 162 insertions(+), 162 deletions(-) diff --git a/src/AddStep.js b/src/AddStep.js index 5cf8262a7a..fbef910e74 100644 --- a/src/AddStep.js +++ b/src/AddStep.js @@ -1,5 +1,5 @@ // add steps to the sequencer -function AddStep(_sequencer, image, name, o) { - return require('./InsertStep')(_sequencer,image,-1,name,o); +function AddStep(_sequencer, name, o) { + return require('./InsertStep')(_sequencer,-1,name,o); } module.exports = AddStep; diff --git a/src/FormatInput.js b/src/FormatInput.js index f88cae9d61..ae80749339 100644 --- a/src/FormatInput.js +++ b/src/FormatInput.js @@ -24,22 +24,23 @@ function copy(a) { } function formatInput(args,format,images) { - images = []; - for (var image in this.images) { - images.push(image); - } + // images = []; + // for (var image in this.images) { + // images.push(image); + // } var json_q = {}; var format_i = format; if (format == "+") - format = ['o_string_a', 'string_a', 'o_object']; + format = ['string_a', 'o_object']; else if (format == "-") format = ['o_string_a', 'number_a']; else if (format == "^") format = ['o_string_a', 'number', 'string', 'o_object']; else if (format == "r") - format = ['o_string_a', 'o_number']; + format = ['o_number']; else if (format == "l") - format = ['o_string','string','o_function']; + format = ['string','o_function']; + /* formats: @@ -74,29 +75,31 @@ function formatInput(args,format,images) { args.push(function(){}); } - if(format[0] == "o_string_a") { - if(args.length == format.length - 1) { - var insert = false; - for (var i in args) { - if (format[parseInt(i)+1].includes( typeof(getPrimitive(args[i])) )){ - insert = true; - } - else {insert = false; break;} - } - if(insert) - args.splice(0,0,copy(images)); - } - } - else if (format[0] == "o_string" && format_i == "l" && args.length == 2) { - if (typeof(args[0]) == "string") { - var identifier = "image"; - var number = 1; - while (this.images.hasOwnProperty(identifier+number)) number++; - args.splice(0,0,identifier+number); - } - } - if(args.length == format.length) { + //remember to remove this. + // if(format[0] == "o_string_a") { + // if(args.length == format.length - 1) { + // var insert = false; + // for (var i in args) { + // if (format[parseInt(i)+1].includes( typeof(getPrimitive(args[i])) )){ + // insert = true; + // } + // else {insert = false; break;} + // } + // if(insert) + // args.splice(0,0,copy(images)); + // } + // } + // else if (format[0] == "o_string" && format_i == "l" && args.length == 2) { + // if (typeof(args[0]) == "string") { + // var identifier = "image"; + // var number = 1; + // while (this.images.hasOwnProperty(identifier+number)) number++; + // args.splice(0,0,identifier+number); + // } + // } + + if(args.length == format.length) {//making of arrays for (var i in format) { if (format[i].substr(format[i].length-2,2)=="_a") args[i] = makeArray(args[i]); @@ -109,27 +112,27 @@ function formatInput(args,format,images) { for (var img in json_q) json_q[img] = makeArray(json_q[img]); } + if(format_i == "r") json_q = {0:copy(args[0])}; } - else if (format_i == "r") { - for (var img in args[0]) json_q[args[0][img]] = args[1]; + else if (format_i == "r" ) { + for (var img in args[0]) json_q = {0:args[0]}; } else if (format_i == "l") { json_q = { - images: {}, - callback: args[2] + image: args[0], + callback: args[1] } - json_q.images[args[0]] = args[1]; } else { - for (var img in args[0]) { - var image = args[0][img]; - json_q[image] = []; - + // for (var img in args[0]) { + // var image = args[0][img]; + // json_q[image] = []; + json_q = []; if(format_i == "+") { - for(var s in args[1]) { - json_q[image].push({ - name: args[1][s], - o: args[2] + for(var s in args[0]) { + json_q.push({ + name: args[0][s], + o: args[1] }); } } @@ -148,16 +151,11 @@ function formatInput(args,format,images) { name: args[2], o: args[3] }); - } + // } } } - if(format_i == "l") { - json_q.loadedimages = []; - for (var i in json_q.images) json_q.loadedimages.push(i); - } - return json_q; } diff --git a/src/ImageSequencer.js b/src/ImageSequencer.js index 84fb145975..d73d58a6f0 100644 --- a/src/ImageSequencer.js +++ b/src/ImageSequencer.js @@ -24,7 +24,7 @@ ImageSequencer = function ImageSequencer(options) { if (!typeof (a) == "object") return a; if (objTypeOf(a) == "Array") return a.slice(); if (objTypeOf(a) == "Object") { - var b = {}; + var b = {}; for (var v in a) { b[v] = copy(a[v]); } @@ -42,7 +42,6 @@ ImageSequencer = function ImageSequencer(options) { modules = require('./Modules'), sequences = require('./SavedSequences.json'), formatInput = require('./FormatInput'), - images = {}, inputlog = [], events = require('./ui/UserInterface')(), fs = require('fs'); @@ -66,17 +65,16 @@ ImageSequencer = function ImageSequencer(options) { function addSteps() { var this_ = (this.name == "ImageSequencer") ? this : this.sequencer; - var args = (this.name == "ImageSequencer") ? [] : [this.images]; + var args = (this.name == "ImageSequencer") ? [] : this.image; var json_q = {}; for (var arg in arguments) { args.push(copy(arguments[arg])); } json_q = formatInput.call(this_, args, "+"); inputlog.push({ method: "addSteps", json_q: copy(json_q) }); - for (var i in json_q) - for (var j in json_q[i]) - require("./AddStep")(this_, i, json_q[i][j].name, json_q[i][j].o); - + for (var j in json_q) + require("./AddStep")(this_, json_q[j].name, json_q[j].o); + console.log(this.steps); return this; } @@ -147,13 +145,13 @@ ImageSequencer = function ImageSequencer(options) { } var this_ = (this.name == "ImageSequencer") ? this : this.sequencer; - var args = (this.name == "ImageSequencer") ? [] : [this.images]; + var args = (this.name == "ImageSequencer") ? [] : [this.image]; for (var arg in arguments) args.push(copy(arguments[arg])); var callback = function() { }; for (var arg in args) if (objTypeOf(args[arg]) == "Function") - callback = args.splice(arg, 1)[0]; + callback = args.splice(arg, 1)[0]; //callback is formed var json_q = formatInput.call(this_, args, "r"); @@ -165,11 +163,11 @@ ImageSequencer = function ImageSequencer(options) { function loadImages() { var args = []; var sequencer = this; + sequencer.image = arguments[0]; for (var arg in arguments) args.push(copy(arguments[arg])); var json_q = formatInput.call(this, args, "l"); inputlog.push({ method: "loadImages", json_q: copy(json_q) }); - var loadedimages = this.copy(json_q.loadedimages); var ret = { name: "ImageSequencer Wrapper", @@ -179,22 +177,12 @@ ImageSequencer = function ImageSequencer(options) { insertSteps: this.insertSteps, run: this.run, UI: this.UI, - setUI: this.setUI, - images: loadedimages + setUI: this.setUI }; - function load(i) { - if (i == loadedimages.length) { - json_q.callback.call(ret); - return; - } - var img = loadedimages[i]; - require('./ui/LoadImage')(sequencer, img, json_q.images[img], function() { - load(++i); - }); - } - - load(0); + require('./ui/LoadImage')(sequencer, "image", json_q.image, function() { + json_q.callback.call(ret); + }); } function replaceImage(selector, steps, options) { @@ -425,8 +413,9 @@ ImageSequencer = function ImageSequencer(options) { inputlog: inputlog, modules: modules, sequences: sequences, - images: images, events: events, + steps: steps, + image: image, //user functions loadImages: loadImages, diff --git a/src/InsertStep.js b/src/InsertStep.js index 65ff41c7cc..e351c96947 100644 --- a/src/InsertStep.js +++ b/src/InsertStep.js @@ -1,33 +1,35 @@ const getStepUtils = require('./util/getStep.js'); // insert one or more steps at a given index in the sequencer -function InsertStep(ref, image, index, name, o) { +function InsertStep(ref, index, name, o) { if (ref.sequences[name]) { return ref.importJSON(ref.sequences[name]); } - function insertStep(image, index, name, o_) { + + function insertStep(index, name, o_) { if (ref.modules[name]) var moduleInfo = ref.modules[name][1]; else { console.log('Module ' + name + ' not found.'); } var o = ref.copy(o_); + o.number = ref.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.image = image; + // o.image = image; o.inBrowser = ref.options.inBrowser; - if (index == -1) index = ref.images[image].steps.length; + if (index == -1) index = ref.steps.length; o.step = { name: o.name, description: o.description, ID: o.number, - imageName: o.image, + // imageName: o.image, inBrowser: ref.options.inBrowser, ui: ref.options.ui, options: o @@ -48,7 +50,7 @@ function InsertStep(ref, image, index, name, o) { if (!ref.modules[name][1].length) { UI.onSetup(o.step, { index: index }); - ref.images[image].steps.splice(index, 0, ref.modules[name][0](o, UI)); + ref.steps.splice(index, 0, ref.modules[name][0](o, UI)); } else { ref.modules[name][0](o, UI); } @@ -56,8 +58,8 @@ function InsertStep(ref, image, index, name, o) { return true; } - insertStep(image, index, name, o); - ref.steps = ref.images[image].steps; + insertStep(index, name, o); + ref.steps = ref.steps; } module.exports = InsertStep; diff --git a/src/Run.js b/src/Run.js index a91dcffa16..210485ac29 100644 --- a/src/Run.js +++ b/src/Run.js @@ -1,13 +1,14 @@ const getStepUtils = require('./util/getStep.js'); function Run(ref, json_q, callback, ind, progressObj) { + console.log(json_q) if (!progressObj) progressObj = { stop: function() { } }; function drawStep(drawarray, pos) { if (pos == drawarray.length && drawarray[pos - 1] !== undefined) { - var image = drawarray[pos - 1].image; - if (ref.objTypeOf(callback) == "Function" && ref.images[image].steps.slice(-1)[0].output) { - var steps = ref.images[image].steps; + // var image = drawarray[pos - 1].image; + if (ref.objTypeOf(callback) == "Function" && ref.steps.slice(-1)[0].output) { + var steps = ref.steps; var out = steps[steps.length - 1].output.src; callback(out); return true; @@ -16,14 +17,14 @@ function Run(ref, json_q, callback, ind, progressObj) { // so we don't run on the loadImage module: if (drawarray[pos] !== undefined) { - var image = drawarray[pos].image; + // var image = drawarray[pos].image; var i = drawarray[pos].i; - var input = ref.images[image].steps[i - 1].output; - var step = ref.images[image].steps[i]; + var input = ref.steps[i - 1].output; + var step = ref.steps[i]; step.getStep = function getStep(offset) { - if (i + offset >= ref.images[image].steps.length) return { options: { name: undefined } }; - else return ref.images[image].steps.slice(i + offset)[0]; + if (i + offset >= ref.steps.length) return { options: { name: undefined } }; + else return ref.steps.slice(i + offset)[0]; }; step.getIndex = function getIndex() { return i; @@ -46,10 +47,10 @@ function Run(ref, json_q, callback, ind, progressObj) { function onEachStep() { // This output is accessible by UI - ref.images[image].steps[i].options.step.output = ref.images[image].steps[i].output.src; + ref.steps[i].options.step.output = ref.steps[i].output.src; // Tell UI that step has been drawn. - ref.images[image].steps[i].UI.onComplete(ref.images[image].steps[i].options.step); + ref.steps[i].UI.onComplete(ref.steps[i].options.step); drawStep(drawarray, ++pos); }, @@ -60,35 +61,39 @@ function Run(ref, json_q, callback, ind, progressObj) { function drawSteps(json_q) { var drawarray = []; - for (var image in json_q) { - var no_steps = ref.images[image].steps.length; - var init = json_q[image]; + // for (var image in json_q) { + var no_steps = ref.steps.length; + var init = json_q[0]; for (var i = 0; i < no_steps - init; i++) { - drawarray.push({ image: image, i: init + i }); + drawarray.push({i: init + i }); } - } + // } drawStep(drawarray, ind); } function filter(json_q) { - for (var image in json_q) { - if (json_q[image] == 0 && ref.images[image].steps.length == 1) - delete json_q[image]; - else if (json_q[image] == 0) json_q[image]++; - } - for (var image in json_q) { - var prevstep = ref.images[image].steps[json_q[image] - 1]; + // for (var image in json_q) { + if (json_q[0] == 0 && ref.steps.length == 1) + delete json_q[0]; + else if (json_q[0] == 0) json_q[0]++; + // } + //for (var image in json_q) { + var prevstep = ref.steps[json_q[0] - 1]; + console.log(json_q[0]); while ( typeof prevstep == "undefined" || typeof prevstep.output == "undefined" ) { - prevstep = ref.images[image].steps[--json_q[image] - 1]; + // console.log('IN'); + prevstep = ref.steps[--json_q[0] - 1]; } - } + //} + return json_q; } - + var json_q = filter(json_q); + return drawSteps(json_q); } module.exports = Run; diff --git a/src/ui/LoadImage.js b/src/ui/LoadImage.js index 671742e4aa..d96b1ee5c1 100644 --- a/src/ui/LoadImage.js +++ b/src/ui/LoadImage.js @@ -7,11 +7,11 @@ function LoadImage(ref, name, src, main_callback) { } return image; } - function CImage(src, callback) { + function CImage(src, step, callback) { var datauri; if (!!src.match(/^data:/i)) { datauri = src; - callback(datauri); + callback(datauri, step); } else if (!ref.options.inBrowser && !!src.match(/^https?:\/\//i)) { require( src.match(/^(https?):\/\//i)[1] ).get(src,function(res){ @@ -20,7 +20,7 @@ function LoadImage(ref, name, src, main_callback) { res.setEncoding('base64'); res.on('data',function(chunk) {data += chunk;}); res.on('end',function() { - callback("data:"+contentType+";base64,"+data); + callback("data:"+contentType+";base64,"+data, step); }); }); } @@ -34,65 +34,39 @@ function LoadImage(ref, name, src, main_callback) { canvas.height = image.naturalHeight; context.drawImage(image,0,0); datauri = canvas.toDataURL(ext); - callback(datauri); + callback(datauri, step); } image.src = src; } else { datauri = require('urify')(src); - callback(datauri); + callback(datauri, step); } } function loadImage(name, src) { var step = { name: "load-image", - description: "This initial step loads and displays the original image without any modifications.

To work with a new or different image, drag one into the drop zone.", + description: "This initial step loads and displays the original image without any modifications.", ID: ref.options.sequencerCounter++, - imageName: name, inBrowser: ref.options.inBrowser, - ui: ref.options.ui + ui: ref.options.ui, + UI: ref.events, + output : '' }; - var image = { - src: src, - steps: [{ - options: { - id: step.ID, - name: "load-image", - description: "This initial step loads and displays the original image without any modifications.", - title: "Load Image", - step: step - }, - UI: ref.events, - draw: function() { - UI.onDraw(options.step); - if(arguments.length==1){ - this.output = CImage(arguments[0]); - options.step.output = this.output; - UI.onComplete(options.step); - return true; - } - else if(arguments.length==2) { - this.output = CImage(arguments[0]); - options.step.output = this.output; - arguments[1](); - UI.onComplete(options.step); - return true; - } - return false; - }, - }] - }; - CImage(src, function(datauri) { + + CImage(src, step, function(datauri, step) { var output = makeImage(datauri); - ref.images[name] = image; - var loadImageStep = ref.images[name].steps[0]; - loadImageStep.output = output; - loadImageStep.options.step.output = loadImageStep.output.src; - loadImageStep.UI.onSetup(loadImageStep.options.step); - loadImageStep.UI.onDraw(loadImageStep.options.step); - loadImageStep.UI.onComplete(loadImageStep.options.step); + ref.steps.push(step); + ref.steps[0].output = output; + // ref.images[name] = image; + // var loadImageStep = ref.images[name].steps[0]; + // loadImageStep.output = output; + // loadImageStep.options.step.output = loadImageStep.output.src; + ref.steps[0].UI.onSetup(ref.steps[0]); + ref.steps[0].UI.onDraw(ref.steps[0]); + ref.steps[0].UI.onComplete(ref.steps[0]); main_callback(); return true; @@ -103,3 +77,35 @@ function LoadImage(ref, name, src, main_callback) { } module.exports = LoadImage; + + + // var image = { + // src: src, + // steps: [{ + // options: { + // id: step.ID, + // name: "load-image", + // description: "This initial step loads and displays the original image without any modifications.", + // title: "Load Image", + // step: step + // }, + // UI: ref.events, + // draw: function() { + // UI.onDraw(options.step); + // if(arguments.length==1){ + // this.output = CImage(arguments[0]); + // options.step.output = this.output; + // UI.onComplete(options.step); + // return true; + // } + // else if(arguments.length==2) { + // this.output = CImage(arguments[0]); + // options.step.output = this.output; + // arguments[1](); + // UI.onComplete(options.step); + // return true; + // } + // return false; + // }, + // }] + // }; \ No newline at end of file diff --git a/src/ui/UserInterface.js b/src/ui/UserInterface.js index 93c71a010a..560c19efd4 100644 --- a/src/ui/UserInterface.js +++ b/src/ui/UserInterface.js @@ -9,10 +9,10 @@ module.exports = function UserInterface(events = {}) { // No UI } else if(step.inBrowser) { // Create and append an HTML Element - console.log("Added Step \""+step.name+"\" to \""+step.imageName+"\"."); + console.log("Added Step \""+step.name+"\""); } else { // Create a NodeJS Object - console.log('\x1b[36m%s\x1b[0m',"Added Step \""+step.name+"\" to \""+step.imageName+"\"."); + console.log('\x1b[36m%s\x1b[0m',"Added Step \""+step.name+"\""); } } @@ -21,10 +21,10 @@ module.exports = function UserInterface(events = {}) { // No UI } else if(step.inBrowser) { // Overlay a loading spinner - console.log("Drawing Step \""+step.name+"\" on \""+step.imageName+"\"."); + console.log("Drawing Step \""+step.name+"\""); } else { // Don't do anything - console.log('\x1b[33m%s\x1b[0m',"Drawing Step \""+step.name+"\" on \""+step.imageName+"\"."); + console.log('\x1b[33m%s\x1b[0m',"Drawing Step \""+step.name+"\""); } } @@ -34,10 +34,10 @@ module.exports = function UserInterface(events = {}) { } else if(step.inBrowser) { // Update the DIV Element // Hide the laoding spinner - console.log("Drawn Step \""+step.name+"\" on \""+step.imageName+"\"."); + console.log("Drawn Step \""+step.name+"\""); } else { // Update the NodeJS Object - console.log('\x1b[32m%s\x1b[0m',"Drawn Step \""+step.name+"\" on \""+step.imageName+"\"."); + console.log('\x1b[32m%s\x1b[0m',"Drawn Step \""+step.name+"\""); } } @@ -46,10 +46,10 @@ module.exports = function UserInterface(events = {}) { // No UI } else if(step.inBrowser) { // Remove the DIV Element - console.log("Removing Step \""+step.name+"\" of \""+step.imageName+"\"."); + console.log("Removing Step \""+step.name+"\""); } else { // Delete the NodeJS Object - console.log('\x1b[31m%s\x1b[0m',"Removing Step \""+step.name+"\" of \""+step.imageName+"\"."); + console.log('\x1b[31m%s\x1b[0m',"Removing Step \""+step.name+"\""); } } From 091accac4ba1e9f6e5799a9ed909dccbcffb4aab Mon Sep 17 00:00:00 2001 From: Divy123 Date: Fri, 8 Mar 2019 20:25:38 +0530 Subject: [PATCH 2/6] Restructure API completely --- examples/demo.js | 17 +- examples/lib/defaultHtmlSequencerUi.js | 6 +- examples/lib/defaultHtmlStepUi.js | 12 +- examples/lib/insertPreview.js | 1 - package-lock.json | 480 ++++++++++++------------- src/ExportBin.js | 8 +- src/FormatInput.js | 78 +--- src/ImageSequencer.js | 89 +++-- src/Run.js | 16 +- src/ui/LoadImage.js | 39 +- test/core/modules/QR.js | 10 +- test/core/modules/benchmark.js | 2 +- test/core/modules/brightness.js | 8 +- test/core/modules/chain.js | 35 +- test/core/modules/contrast.js | 10 +- test/core/modules/dynamic-imports.js | 2 +- test/core/modules/image-sequencer.js | 146 ++++---- test/core/modules/import-export.js | 2 +- test/core/modules/invert.js | 18 +- test/core/modules/meta-modules.js | 4 +- test/core/modules/replace.js | 4 +- test/core/modules/run.js | 8 +- test/core/modules/threshold.js | 8 +- 23 files changed, 449 insertions(+), 554 deletions(-) diff --git a/examples/demo.js b/examples/demo.js index d2b200c1eb..5f2b5b6623 100644 --- a/examples/demo.js +++ b/examples/demo.js @@ -186,19 +186,28 @@ window.onload = function() { takePhotoSelector: "#take-photo", onLoad: function onFileReaderLoad(progress) { var reader = progress.target; - var step = sequencer.images.image1.steps[0]; + var step = sequencer.steps[0]; var util= intermediateHtmlStepUi(sequencer); step.output.src = reader.result; sequencer.run({ index: 0 }); + if(typeof step.options !=="undefined") step.options.step.imgElement.src = reader.result; + else + step.imgElement.src = reader.result; insertPreview.updatePreviews(reader.result,'addStep'); - insertPreview.updatePreviews(sequencer.images.image1.steps[0].options.step.imgElement.src,'insertStep'); + insertPreview.updatePreviews(sequencer.steps[0].imgElement.src,'insertStep'); }, onTakePhoto: function (url) { - var step = sequencer.images.image1.steps[0]; + var step = sequencer.steps[0]; step.output.src = url; sequencer.run({ index: 0 }); - step.options.step.imgElement.src = url; + if(typeof step.options !=="undefined"){ + step.options.step.imgElement.src = url; + } + else + step.imgElement.src = url; + insertPreview.updatePreviews(url,'addStep'); + insertPreview.updatePreviews(sequencer.steps[0].imgElement.src,'insertStep'); } }); diff --git a/examples/lib/defaultHtmlSequencerUi.js b/examples/lib/defaultHtmlSequencerUi.js index 84b3e757ce..88049f33b3 100644 --- a/examples/lib/defaultHtmlSequencerUi.js +++ b/examples/lib/defaultHtmlSequencerUi.js @@ -57,7 +57,7 @@ function DefaultHtmlSequencerUi(_sequencer, options) { } _sequencer .addSteps(newStepName, options) - .run({ index: _sequencer.images.image1.steps.length - sequenceLength - 1 }); + .run({ index: _sequencer.steps.length - sequenceLength - 1 }); $(addStepSel + " .info").html("Select a new module to add to your sequence."); $(addStepSel + " select").val("none"); @@ -65,11 +65,11 @@ function DefaultHtmlSequencerUi(_sequencer, options) { handleSaveSequence(); // add to URL hash too - urlHash.setUrlHashParameter("steps", _sequencer.toString()); + urlHash.setUrlHashParameter("steps", _sequencer.toString()) } function handleSaveSequence(){ - var stepCount=sequencer.images.image1.steps.length; + var stepCount=sequencer.steps.length; if(stepCount<2) $(" #save-seq").prop("disabled", true); else diff --git a/examples/lib/defaultHtmlStepUi.js b/examples/lib/defaultHtmlStepUi.js index a54f9df2c1..a9d3f92091 100644 --- a/examples/lib/defaultHtmlStepUi.js +++ b/examples/lib/defaultHtmlStepUi.js @@ -140,7 +140,7 @@ function DefaultHtmlStepUi(_sequencer, options) { $(step.ui.querySelectorAll(".insert-step")).on('click', function() { util.insertStep(step.ID) }); // Insert the step's UI in the right place - if (stepOptions.index == _sequencer.images.image1.steps.length) { + if (stepOptions.index == _sequencer.steps.length) { stepsEl.appendChild(step.ui); $("#steps .container:nth-last-child(1) .insert-step").prop('disabled',true); if($("#steps .container:nth-last-child(2)")) @@ -173,8 +173,7 @@ function DefaultHtmlStepUi(_sequencer, options) { _sequencer.run({ index: step.index - 1 }); // modify the url hash - urlHash.setUrlHashParameter("steps", _sequencer.toString()); - + urlHash.setUrlHashParameter("steps", _sequencer.toString()) // disable the save button $(step.ui.querySelector('.btn-save')).prop('disabled', true); optionsChanged = false; @@ -234,11 +233,11 @@ function DefaultHtmlStepUi(_sequencer, options) { $(step.ui.querySelector("img")).show(); $(step.ui.querySelector(".load-spin")).hide(); - step.imgElement.src = step.output; + step.imgElement.src = (step.name == "load-image") ? step.output.src : step.output; var imgthumbnail = step.ui.querySelector(".img-thumbnail"); for (let index = 0; index < step.linkElements.length; index++) { if (step.linkElements[index].contains(imgthumbnail)) - step.linkElements[index].href = step.output; + step.linkElements[index].href = step.imgElement.src; } // TODO: use a generalized version of this @@ -247,7 +246,8 @@ function DefaultHtmlStepUi(_sequencer, options) { } for (let index = 0; index < step.linkElements.length; index++) { - step.linkElements[index].download = step.name + "." + fileExtension(step.output); + + step.linkElements[index].download = step.name + "." + fileExtension(step.imgElement.src); step.linkElements[index].target = "_blank"; } diff --git a/examples/lib/insertPreview.js b/examples/lib/insertPreview.js index 26b8cfcacf..b00d4f1dca 100644 --- a/examples/lib/insertPreview.js +++ b/examples/lib/insertPreview.js @@ -16,7 +16,6 @@ function generatePreview(previewStepName, customValues, path, selector) { } function loadPreview() { - previewSequencer = previewSequencer.addSteps('resize', { resize: "40%" }); if (previewStepName === "crop") { previewSequencer.addSteps(previewStepName, customValues).run(insertPreview); } diff --git a/package-lock.json b/package-lock.json index 9bd35bb041..51b0966009 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,7 +23,7 @@ "JSONStream": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "integrity": "sha1-MgjB8I06TZkmGrZPkjArwV4RHKA=", "dev": true, "requires": { "jsonparse": "^1.2.0", @@ -33,12 +33,12 @@ "abab": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz", - "integrity": "sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w==" + "integrity": "sha1-q6CrTF7uLUx500h9hUUPsjduuw8=" }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg=", "dev": true }, "accepts": { @@ -59,7 +59,7 @@ "acorn-globals": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.0.tgz", - "integrity": "sha512-hMtHj3s5RnuhvHPowpBYvJVj3rAar82JiDQHvGs1zO0l10ocX/xEdBShNHTJaboucJUsScghp74pH3s7EnHHQw==", + "integrity": "sha1-47b42jwVUqla5idXH33Wkju1QQM=", "requires": { "acorn": "^6.0.1", "acorn-walk": "^6.0.1" @@ -145,7 +145,7 @@ "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", "requires": { "color-convert": "^1.9.0" } @@ -153,7 +153,7 @@ "anymatch": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", "dev": true, "requires": { "micromatch": "^3.1.4", @@ -163,13 +163,13 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true }, "micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", "dev": true, "requires": { "arr-diff": "^4.0.0", @@ -192,7 +192,7 @@ "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", "dev": true, "requires": { "sprintf-js": "~1.0.2" @@ -215,7 +215,7 @@ "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=", "dev": true }, "arr-union": { @@ -267,7 +267,7 @@ "arraybuffer.slice": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", + "integrity": "sha1-O7xCdd1YTMGxCAm4nU6LY6aednU=", "dev": true }, "asap": { @@ -279,7 +279,7 @@ "asn1": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "integrity": "sha1-jSR136tVO7M+d7VOWeiAu4ziMTY=", "requires": { "safer-buffer": "~2.1.0" } @@ -287,7 +287,7 @@ "asn1.js": { "version": "4.10.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "integrity": "sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA=", "dev": true, "requires": { "bn.js": "^4.0.0", @@ -353,7 +353,7 @@ "async-limiter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", - "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" + "integrity": "sha1-ePrtjD0HSrgfIrTphdeehzj3IPg=" }, "asynckit": { "version": "0.4.0", @@ -363,7 +363,7 @@ "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=", "dev": true }, "aws-sign2": { @@ -374,7 +374,7 @@ "aws4": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + "integrity": "sha1-8OAD2cqef1nHpQiUXXsu+aBKVC8=" }, "axios": { "version": "0.17.1", @@ -401,7 +401,7 @@ "base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=", "dev": true, "requires": { "cache-base": "^1.0.1", @@ -425,7 +425,7 @@ "is-accessor-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -434,7 +434,7 @@ "is-data-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -443,7 +443,7 @@ "is-descriptor": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", @@ -454,7 +454,7 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true } } @@ -478,7 +478,7 @@ "base64-js": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==" + "integrity": "sha1-yrHmEY8FEJXli1KBrqjBzSK/wOM=" }, "base64id": { "version": "1.0.0", @@ -529,12 +529,12 @@ "bluebird": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", - "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==" + "integrity": "sha1-fQHG+WFsmlGrD4xUmnnf5uwz76c=" }, "bn.js": { "version": "4.11.8", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "integrity": "sha1-LN4J617jQfSEdGuwMJsyU7GxRC8=", "dev": true }, "body": { @@ -575,7 +575,7 @@ "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", "dev": true, "requires": { "balanced-match": "^1.0.0", @@ -585,7 +585,7 @@ "braces": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", "dev": true, "requires": { "arr-flatten": "^1.1.0", @@ -620,7 +620,7 @@ "browser-launcher": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/browser-launcher/-/browser-launcher-1.0.1.tgz", - "integrity": "sha512-XLZ96W4jzKOBMcrE7juOusdiIzbZRG3q/sPGh5ytZJSJ7/JndKqoUjfHdiXFzxILidIjsj79rCKUHAIKxJCUCw==", + "integrity": "sha1-3l4O0XJgLoU8QL6BPAPSrzpgZAQ=", "dev": true, "requires": { "headless": "~0.1.3", @@ -652,7 +652,7 @@ "browser-pack": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz", - "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==", + "integrity": "sha1-w0uhDQuc4WK1ryJ8cTHJLC7NV3Q=", "dev": true, "requires": { "JSONStream": "^1.0.3", @@ -666,12 +666,12 @@ "browser-process-hrtime": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", - "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==" + "integrity": "sha1-YW8A+u8d9+wbW/nP4r3DFw8mx7Q=" }, "browser-resolve": { "version": "1.11.3", "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", - "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "integrity": "sha1-m3y7PQ9RDky4a9vXlhJNKLWJCvY=", "dev": true, "requires": { "resolve": "1.1.7" @@ -688,7 +688,7 @@ "browser-run": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/browser-run/-/browser-run-5.0.1.tgz", - "integrity": "sha512-5fWPcJACcgaeOms6xXcHLXEoPTlze63EV8vKd1qxGqksNvaARLeKSUxdCfS+MTQvtBYEXgkkcH/FhR6QHgWzKg==", + "integrity": "sha1-FEcqmck06gmeBcXy5ZSlerLB2Ko=", "dev": true, "requires": { "browser-launcher": "^1.0.1", @@ -709,7 +709,7 @@ "browser-sync": { "version": "2.26.3", "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.3.tgz", - "integrity": "sha512-VLzpjCA4uXqfzkwqWtMM6hvPm2PNHp2RcmzBXcbi6C9WpkUhhFb8SVAr4CFrCsFxDg+oY6HalOjn8F+egyvhag==", + "integrity": "sha1-G1m9WTWTilsPpzs9eO8QUL0r+RI=", "dev": true, "requires": { "browser-sync-client": "^2.26.2", @@ -755,7 +755,7 @@ "browser-sync-client": { "version": "2.26.2", "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.2.tgz", - "integrity": "sha512-FEuVJD41fI24HJ30XOT2RyF5WcnEtdJhhTqeyDlnMk/8Ox9MZw109rvk9pdfRWye4soZLe+xcAo9tHSMxvgAdw==", + "integrity": "sha1-3QBwyAvcbZAh6J94N+5w7QqKz5E=", "dev": true, "requires": { "etag": "1.8.1", @@ -767,7 +767,7 @@ "browser-sync-ui": { "version": "2.26.2", "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.26.2.tgz", - "integrity": "sha512-LF7GMWo8ELOE0eAlxuRCfnGQT1ZxKP9flCfGgZdXFc6BwmoqaJHlYe7MmVvykKkXjolRXTz8ztXAKGVqNwJ3EQ==", + "integrity": "sha1-odjhB8/tWEnXfju9hK5dVmvrTqA=", "dev": true, "requires": { "async-each-series": "0.1.1", @@ -781,7 +781,7 @@ "browserify": { "version": "16.2.3", "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.2.3.tgz", - "integrity": "sha512-zQt/Gd1+W+IY+h/xX2NYMW4orQWhqSwyV+xsblycTtpOuB27h1fZhhNQuipJ4t79ohw4P4mMem0jp/ZkISQtjQ==", + "integrity": "sha1-fubmVLpPkrzmqzWZw0hbHMegrQs=", "dev": true, "requires": { "JSONStream": "^1.0.3", @@ -912,7 +912,7 @@ "browserify-cipher": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "integrity": "sha1-jWR0wbhwv9q807z8wZNKEOlPFfA=", "dev": true, "requires": { "browserify-aes": "^1.0.4", @@ -923,7 +923,7 @@ "browserify-des": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "integrity": "sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw=", "dev": true, "requires": { "cipher-base": "^1.0.1", @@ -1011,7 +1011,7 @@ "buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", - "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", + "integrity": "sha1-3Vf6DxCaxZxgJHkETcp7iz0LcdY=", "requires": { "base64-js": "^1.0.2", "ieee754": "^1.1.4" @@ -1025,7 +1025,7 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=" }, "buffer-shims": { "version": "1.0.0", @@ -1060,7 +1060,7 @@ "cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=", "dev": true, "requires": { "collection-visit": "^1.0.0", @@ -1077,7 +1077,7 @@ "cached-path-relative": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.2.tgz", - "integrity": "sha512-5r2GqsoEb4qMTTN9J+WzXfjov+hjxT+j3u5K+kIVNIwAd99DLCJE9pBIMP1qVeybV6JiijL385Oz0DcYxfbOIg==", + "integrity": "sha1-oT30GW0md2IgzDNW6xR6Utuixts=", "dev": true }, "callsite": { @@ -1163,7 +1163,7 @@ "cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "integrity": "sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94=", "dev": true, "requires": { "inherits": "^2.0.1", @@ -1173,7 +1173,7 @@ "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=", "dev": true, "requires": { "arr-union": "^3.1.0", @@ -1204,7 +1204,7 @@ "cli-spinners": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", - "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==" + "integrity": "sha1-ACwZkJEtDVlYDJO9NsBW3pnkJZo=" }, "cliui": { "version": "3.2.0", @@ -1251,7 +1251,7 @@ "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", "requires": { "color-name": "1.1.3" } @@ -1296,7 +1296,7 @@ "combined-stream": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "integrity": "sha1-LR0kMXr7ir6V1tLAsHtXgTU52Cg=", "requires": { "delayed-stream": "~1.0.0" } @@ -1304,7 +1304,7 @@ "commander": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", - "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==" + "integrity": "sha1-9hmKqE5bg8RgVLlN3tv+1e6f8So=" }, "component-bind": { "version": "1.0.0", @@ -1333,7 +1333,7 @@ "concat-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", "requires": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -1356,7 +1356,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -1415,7 +1415,7 @@ "convert-source-map": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "integrity": "sha1-UbU3qMQ+DwTewZk7/83VBOdYrCA=", "requires": { "safe-buffer": "~5.1.1" } @@ -1440,7 +1440,7 @@ "create-ecdh": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "integrity": "sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8=", "dev": true, "requires": { "bn.js": "^4.1.0", @@ -1489,7 +1489,7 @@ "crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "integrity": "sha1-OWz58xN/A+S45TLFj2mCVOAPgOw=", "dev": true, "requires": { "browserify-cipher": "^1.0.0", @@ -1523,7 +1523,7 @@ "cssom": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.6.tgz", - "integrity": "sha512-DtUeseGk9/GBW0hl0vVPpU22iHL6YB5BUX7ml1hB+GMpo0NX5G4voX3kdWiMSEguFtcW3Vh3djqNF4aIe6ne0A==" + "integrity": "sha1-+FIGzuBO+oQfPFmCp0uparINZa0=" }, "cssstyle": { "version": "1.1.1", @@ -1596,7 +1596,7 @@ "data-uri-to-buffer": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.0.tgz", - "integrity": "sha512-YbKCNLPPP4inc0E5If4OaalBc7gpaM2MRv77Pv2VThVComLKfbGYtJcdDCViDyp1Wd4SebhHLz94vp91zbK6bw==", + "integrity": "sha1-C6I2cXJzSYKMMs+v3epBGQjRPSM=", "requires": { "@types/node": "^8.0.7" } @@ -1604,7 +1604,7 @@ "data-urls": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", - "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "integrity": "sha1-Fe4Fgrql4iu1nHcUDaj5x2lju/4=", "requires": { "abab": "^2.0.0", "whatwg-mimetype": "^2.2.0", @@ -1630,7 +1630,7 @@ "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", "dev": true, "requires": { "ms": "2.0.0" @@ -1656,7 +1656,7 @@ "deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "integrity": "sha1-xPp8lUBKF6nD6Mp+FTcxK3NjMKw=", "dev": true }, "deep-is": { @@ -1675,7 +1675,7 @@ "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=", "dev": true, "requires": { "object-keys": "^1.0.12" @@ -1684,7 +1684,7 @@ "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "integrity": "sha1-1Flono1lS6d+AqgX+HENcCyxbp0=", "dev": true, "requires": { "is-descriptor": "^1.0.2", @@ -1694,7 +1694,7 @@ "is-accessor-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -1703,7 +1703,7 @@ "is-data-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -1712,7 +1712,7 @@ "is-descriptor": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", @@ -1723,7 +1723,7 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true } } @@ -1825,13 +1825,13 @@ "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "integrity": "sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto=", "dev": true }, "domexception": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", - "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "integrity": "sha1-k3RCZEymoxJh7zbj7Gd/6AVYLJA=", "requires": { "webidl-conversions": "^4.0.2" } @@ -1863,7 +1863,7 @@ "easy-extender": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", - "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", + "integrity": "sha1-KYeJtk+aq6Yhacd6KztktMlYm48=", "dev": true, "requires": { "lodash": "^4.17.10" @@ -1890,7 +1890,7 @@ "ecstatic": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ecstatic/-/ecstatic-2.2.1.tgz", - "integrity": "sha512-ztE4WqheoWLh3wv+HQwy7dACnvNY620coWpa+XqY6R2cVWgaAT2lUISU1Uf7JpdLLJCURktJOaA9av2AOzsyYQ==", + "integrity": "sha1-tQh/rUOd2d1J0x4YExRUgX/od2k=", "dev": true, "requires": { "he": "^1.1.1", @@ -1908,7 +1908,7 @@ "electron": { "version": "1.8.8", "resolved": "https://registry.npmjs.org/electron/-/electron-1.8.8.tgz", - "integrity": "sha512-1f9zJehcTTGjrkb06o6ds+gsRq6SYhZJyxOk6zIWjRH8hVy03y/RzUDELzNas71f5vcvXmfGVvyjeEsadDI8tg==", + "integrity": "sha1-qQzdsHUpH0lXaZPm9ci7RDkwHK4=", "dev": true, "requires": { "@types/node": "^8.0.24", @@ -1936,7 +1936,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -2006,7 +2006,7 @@ "elliptic": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", - "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "integrity": "sha1-wtC3d2kRuGcixjLDwGxg8vgZk5o=", "dev": true, "requires": { "bn.js": "^4.4.0", @@ -2100,7 +2100,7 @@ "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", "dev": true, "requires": { "is-arrayish": "^0.2.1" @@ -2109,7 +2109,7 @@ "es-abstract": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", - "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "integrity": "sha1-rIYUX91QmdjdSVWMy6Lq+biOJOk=", "dev": true, "requires": { "es-to-primitive": "^1.2.0", @@ -2123,7 +2123,7 @@ "es-to-primitive": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", - "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "integrity": "sha1-7fckeAM0VujdqO8J4ArZZQcH83c=", "dev": true, "requires": { "is-callable": "^1.1.4", @@ -2235,7 +2235,7 @@ "estree-is-function": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/estree-is-function/-/estree-is-function-1.0.0.tgz", - "integrity": "sha512-nSCWn1jkSq2QAtkaVLJZY2ezwcFO161HVc174zL1KPW3RJ+O6C3eJb8Nx7OXzvhoEv+nLgSR1g71oWUHUDTrJA==" + "integrity": "sha1-wK3CmAbX8Yp0233w87JmZwLjetI=" }, "esutils": { "version": "2.0.2", @@ -2272,13 +2272,13 @@ "events": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz", - "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==", + "integrity": "sha1-KpoeGOYQbg6BKqnr1KgZs8KcC6U=", "dev": true }, "evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "integrity": "sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI=", "dev": true, "requires": { "md5.js": "^1.3.4", @@ -2323,7 +2323,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -2361,7 +2361,7 @@ "fill-range": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "integrity": "sha1-6x53OrsFbc2N8r/favWbizqTZWU=", "dev": true, "requires": { "is-number": "^2.1.0", @@ -2409,7 +2409,7 @@ "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=" }, "extend-shallow": { "version": "3.0.2", @@ -2424,7 +2424,7 @@ "is-extendable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { "is-plain-object": "^2.0.4" @@ -2435,7 +2435,7 @@ "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", "dev": true, "requires": { "array-unique": "^0.3.2", @@ -2469,7 +2469,7 @@ "is-accessor-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -2478,7 +2478,7 @@ "is-data-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -2487,7 +2487,7 @@ "is-descriptor": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", @@ -2498,7 +2498,7 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true } } @@ -2518,7 +2518,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -2651,7 +2651,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -2700,7 +2700,7 @@ "for-each": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "integrity": "sha1-abRH6IoKXTLD5whPPxcQA0shN24=", "dev": true, "requires": { "is-callable": "^1.1.3" @@ -3351,12 +3351,12 @@ "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" }, "gaze": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "integrity": "sha1-xEFzPhO5J6yMD/C0w7Az8ogSkko=", "dev": true, "requires": { "globule": "^1.0.0" @@ -3365,17 +3365,17 @@ "get-assigned-identifiers": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz", - "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==" + "integrity": "sha1-bb9BHeZIy6+NkWnrsNLVdhkeL/E=" }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=" }, "get-pixels": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/get-pixels/-/get-pixels-3.3.2.tgz", - "integrity": "sha512-6ar+8yPxRd1pskEcl2GSEu1La0+xYRjjnkby6AYiRDDwZ0tJbPQmHnSeH9fGLskT8kvR0OukVgtZLcsENF9YKQ==", + "integrity": "sha1-P2L7iBGTLGnyYrugfLpytpK0/wM=", "requires": { "data-uri-to-buffer": "0.0.3", "jpeg-js": "^0.3.2", @@ -3541,7 +3541,7 @@ "global-modules": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "integrity": "sha1-bXcPDrUjrHgWTXK15xqIdyZcw+o=", "dev": true, "requires": { "global-prefix": "^1.0.1", @@ -3565,7 +3565,7 @@ "globule": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", - "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "integrity": "sha1-Xf+xsZHyLSB5epNptJ6rTpg5aW0=", "dev": true, "requires": { "glob": "~7.1.1", @@ -3598,7 +3598,7 @@ "grunt": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.3.tgz", - "integrity": "sha512-/JzmZNPfKorlCrrmxWqQO4JVodO+DVd5XX4DkocL/1WlLlKVLE9+SdEIempOAxDhWPysLle6afvn/hg7Ck2k9g==", + "integrity": "sha1-s8mSYMUdG0KDV2bnllJ7YPe7o3Q=", "dev": true, "requires": { "coffeescript": "~1.10.0", @@ -3970,7 +3970,7 @@ "grunt-contrib-watch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", - "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", + "integrity": "sha1-wUPKW4JLKIoCS4VmOaU0Wu23jtQ=", "dev": true, "requires": { "async": "^2.6.0", @@ -3993,13 +3993,13 @@ "grunt-known-options": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", + "integrity": "sha1-bMCIEHvQIZ3F0+V9kZI/RpBZgE0=", "dev": true }, "grunt-legacy-log": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", - "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", + "integrity": "sha1-yM0sbIGkRlubvy2HTZY/73pZ/7k=", "dev": true, "requires": { "colors": "~1.1.2", @@ -4011,7 +4011,7 @@ "grunt-legacy-log-utils": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", - "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", + "integrity": "sha1-0vRCx8AVAGXZAEsI/XQQ03UZGU4=", "dev": true, "requires": { "chalk": "~2.4.1", @@ -4021,7 +4021,7 @@ "grunt-legacy-util": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", - "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", + "integrity": "sha1-4QYk58hgNOW4cMioYWdD8KCEXkI=", "dev": true, "requires": { "async": "~1.5.2", @@ -4060,7 +4060,7 @@ "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", "requires": { "function-bind": "^1.1.1" } @@ -4077,7 +4077,7 @@ "has-binary2": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "integrity": "sha1-d3asYn8+p3JQz8My2rfd9eT10R0=", "dev": true, "requires": { "isarray": "2.0.1" @@ -4163,7 +4163,7 @@ "he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "integrity": "sha1-hK5l+n6vsWX922FWauFLrwVmTw8=", "dev": true }, "hmac-drbg": { @@ -4180,7 +4180,7 @@ "home-path": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/home-path/-/home-path-1.0.6.tgz", - "integrity": "sha512-wo+yjrdAtoXt43Vy92a+0IPCYViiyLAHyp0QVS4xL/tfvVz5sXIW1ubLZk3nhVkD92fQpUMKX+fzMjr5F489vw==", + "integrity": "sha1-1UncJGU4in+GZyQsWzFYjSmvKfw=", "dev": true }, "homedir-polyfill": { @@ -4201,13 +4201,13 @@ "hosted-git-info": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "integrity": "sha1-l/I2l3vW4SVAiTD/bePuxigewEc=", "dev": true }, "html-encoding-sniffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", - "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "integrity": "sha1-5w2EuU2lOqN14R/jo1G+ZkLKRvg=", "requires": { "whatwg-encoding": "^1.0.1" } @@ -4417,7 +4417,7 @@ "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", "requires": { "safer-buffer": ">= 2.1.2 < 3" } @@ -4425,7 +4425,7 @@ "ieee754": { "version": "1.1.12", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", - "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==" + "integrity": "sha1-UL8k5bnIu5ivSWTJQc2wkY2ntgs=" }, "image-filter-core": { "version": "2.0.2", @@ -4459,7 +4459,7 @@ "image-sequencer-invert": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/image-sequencer-invert/-/image-sequencer-invert-1.0.0.tgz", - "integrity": "sha512-LL9jwCnSbUy676q9ULJ6M04mp1TVOxpjlckMGN2SyFOgPE4SGL2/IRcO33BDwafmFiupqDdgs7gUHEbsFcCqgQ==" + "integrity": "sha1-u1wMwvUO2f9M2NiaeSkYjzgaXdQ=" }, "imagejs": { "version": "0.0.9", @@ -4522,7 +4522,7 @@ "ini": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=", "dev": true }, "inline-source-map": { @@ -4537,7 +4537,7 @@ "insert-module-globals": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz", - "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==", + "integrity": "sha1-7IfltCcoR54ye9XFxxYR3ftHUro=", "dev": true, "requires": { "JSONStream": "^1.0.3", @@ -4590,7 +4590,7 @@ "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=" }, "is-builtin-module": { "version": "1.0.0", @@ -4604,7 +4604,7 @@ "is-callable": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "integrity": "sha1-HhrfIZ4e62hNaR+dagX/DTCiTXU=", "dev": true }, "is-data-descriptor": { @@ -4625,7 +4625,7 @@ "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", "dev": true, "requires": { "is-accessor-descriptor": "^0.1.6", @@ -4636,7 +4636,7 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=", "dev": true } } @@ -4706,7 +4706,7 @@ "is-number-like": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", - "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", + "integrity": "sha1-LhKWILUIkQQuROm7uzBZPnXPu+M=", "dev": true, "requires": { "lodash.isfinite": "^3.3.2" @@ -4715,7 +4715,7 @@ "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=", "dev": true, "requires": { "isobject": "^3.0.1" @@ -4750,7 +4750,7 @@ "is-symbol": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", - "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "integrity": "sha1-oFX2rlcZLK7jKeeoYBGLSXqVDzg=", "dev": true, "requires": { "has-symbols": "^1.0.0" @@ -4770,7 +4770,7 @@ "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=", "dev": true }, "is-wsl": { @@ -4824,12 +4824,12 @@ "jpeg-js": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.3.4.tgz", - "integrity": "sha512-6IzjQxvnlT8UlklNmDXIJMWxijULjqGrzgqc0OG7YadZdvm7KPQ1j0ehmQQHckgEWOfgpptzcnWgESovxudpTA==" + "integrity": "sha1-3CulAe49WLe7iTxdH6tHKUkX5+c=" }, "jquery": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", - "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==" + "integrity": "sha1-lYzinoHJeQ8xvneS311NlfxX+8o=" }, "js-yaml": { "version": "3.5.5", @@ -4857,7 +4857,7 @@ "jsdom": { "version": "13.2.0", "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-13.2.0.tgz", - "integrity": "sha512-cG1NtMWO9hWpqRNRR3dSvEQa8bFI6iLlqU2x4kwX51FQjp0qus8T9aBaAO6iGp3DeBrhdwuKxckknohkmfvsFw==", + "integrity": "sha1-saDb2twlVDUmK+jqNyPS26DX6zo=", "requires": { "abab": "^2.0.0", "acorn": "^6.0.4", @@ -4900,7 +4900,7 @@ "tough-cookie": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "integrity": "sha1-zZ+yoKodWhK0c72fuW+j3P9lreI=", "requires": { "psl": "^1.1.28", "punycode": "^2.1.1" @@ -4975,7 +4975,7 @@ "jsqr": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/jsqr/-/jsqr-1.2.0.tgz", - "integrity": "sha512-wKcQS9QC2VHGk7aphWCp1RrFyC0CM6fMgC5prZZ2KV/Lk6OKNoCod9IR6bao+yx3KPY0gZFC5dc+h+KFzCI0Wg==" + "integrity": "sha1-+T/GX6fR3teLG8sCD6BENSsEJho=" }, "kind-of": { "version": "3.2.2", @@ -4997,7 +4997,7 @@ "labeled-stream-splicer": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.1.tgz", - "integrity": "sha512-MC94mHZRvJ3LfykJlTUipBqenZz1pacOZEMhhQ8dMGcDHs0SBE5GbsavUXV7YtP3icBW17W0Zy1I0lfASmo9Pg==", + "integrity": "sha1-nP+jL9meFhL9HYao25YkFtUpKSY=", "dev": true, "requires": { "inherits": "^2.0.1", @@ -5008,7 +5008,7 @@ "isarray": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.4.tgz", - "integrity": "sha512-GMxXOiUirWg1xTKRipM0Ek07rX+ubx4nNVElTJdNLYmNO/2YrDkgJGw9CljXn+r4EWiDQg/8lsRdHyg2PJuUaA==", + "integrity": "sha1-OOe8uw87obeTPIa6GJTd/DeBu7c=", "dev": true } } @@ -5064,7 +5064,7 @@ "localtunnel": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.1.tgz", - "integrity": "sha512-HWrhOslklDvxgOGFLxi6fQVnvpl6XdX4sPscfqMZkzi3gtt9V7LKBWYvNUcpHSVvjwCQ6xzXacVvICNbNcyPnQ==", + "integrity": "sha1-HRc36rZYrdWkAmbY5D84m2Ru47E=", "dev": true, "requires": { "axios": "0.17.1", @@ -5082,7 +5082,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -5130,7 +5130,7 @@ "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + "integrity": "sha1-s56mIp72B+zYniyN8SU2iRysm40=" }, "lodash.debounce": { "version": "4.0.8", @@ -5158,7 +5158,7 @@ "log-symbols": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "integrity": "sha1-V0Dhxdbw39pK2TI7UzIQfva0xAo=", "requires": { "chalk": "^2.0.1" } @@ -5171,7 +5171,7 @@ "looks-same": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/looks-same/-/looks-same-5.1.0.tgz", - "integrity": "sha512-a/BdaF+Q7mqpJZ5Xz1VM9Nb+LnDu8l1A+2ZKEoaqmb9B+nlap1dKeUG8YeVUkQh4pnqsAs6mcSDUp35wkvxozw==", + "integrity": "sha1-XLKnl8qds9eZblzG5oSJwnpqrnA=", "dev": true, "requires": { "color-diff": "^1.1.0", @@ -5264,13 +5264,13 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true }, "micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", "dev": true, "requires": { "arr-diff": "^4.0.0", @@ -5338,7 +5338,7 @@ "md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "integrity": "sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8=", "dev": true, "requires": { "hash-base": "^3.0.0", @@ -5467,7 +5467,7 @@ "miller-rabin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "integrity": "sha1-8IA1HIZbDcViqEYpZtqlNUPHik0=", "dev": true, "requires": { "bn.js": "^4.0.0", @@ -5477,7 +5477,7 @@ "mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=" }, "mime-db": { "version": "1.36.0", @@ -5495,12 +5495,12 @@ "mimic-fn": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" + "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=" }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "integrity": "sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc=", "dev": true }, "minimalistic-crypto-utils": { @@ -5512,7 +5512,7 @@ "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", "dev": true, "requires": { "brace-expansion": "^1.1.7" @@ -5526,13 +5526,13 @@ "mitt": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.1.3.tgz", - "integrity": "sha512-mUDCnVNsAi+eD6qA0HkRkwYczbLHJ49z17BGe2PYRhZL4wpZUFZGJHU7/5tmvohoma+Hdn0Vh/oJTiPEmgSruA==", + "integrity": "sha1-UoxQYjigXc4RzZFKdB6izDMtqbg=", "dev": true }, "mixin-deep": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "integrity": "sha1-pJ5yaNzhoNlpjkUybFYm3zVD0P4=", "dev": true, "requires": { "for-in": "^1.0.2", @@ -5542,7 +5542,7 @@ "is-extendable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { "is-plain-object": "^2.0.4" @@ -5570,7 +5570,7 @@ "module-deps": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.0.tgz", - "integrity": "sha512-hKPmO06so6bL/ZvqVNVqdTVO8UAYsi3tQWlCa+z9KuWhoN4KDQtb5hcqQQv58qYiDE21wIvnttZEPiDgEbpwbA==", + "integrity": "sha1-1BoueQJFzjGRceTnxNjHOZO6PNU=", "dev": true, "requires": { "JSONStream": "^1.0.3", @@ -5620,7 +5620,7 @@ "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "integrity": "sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk=", "dev": true, "requires": { "arr-diff": "^4.0.0", @@ -5639,7 +5639,7 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true } } @@ -5783,7 +5783,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -5799,12 +5799,12 @@ "nwsapi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.0.tgz", - "integrity": "sha512-ZG3bLAvdHmhIjaQ/Db1qvBxsGvFMLIRpQszyqbg31VJ53UP++uZX1/gf3Ut96pdwN9AuDwlMqIYLm0UPCdUeHg==" + "integrity": "sha1-eBBllArtkNm7AcpdDOD8+BwycS8=" }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + "integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=" }, "object-assign": { "version": "4.1.1", @@ -5971,7 +5971,7 @@ "ora": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/ora/-/ora-3.1.0.tgz", - "integrity": "sha512-vRBPaNCclUi8pUxRF/G8+5qEQkc6EgzKK1G2ZNJUIGu088Un5qIxFXeDgymvPRM9nmrcUOGzQgS1Vmtz+NtlMw==", + "integrity": "sha1-2+3YwDtdAX+2cIPofuUvXsiYI+0=", "requires": { "chalk": "^2.4.2", "cli-cursor": "^2.1.0", @@ -6193,7 +6193,7 @@ "parse5": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", - "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==" + "integrity": "sha1-xZNByXI/QUxFKXVWTHwApo1YrNI=" }, "parseqs": { "version": "0.0.5", @@ -6228,7 +6228,7 @@ "path-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "integrity": "sha1-5sTd1+06onxoogzE5Q4aTug7vEo=", "dev": true }, "path-dirname": { @@ -6260,7 +6260,7 @@ "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=" }, "path-platform": { "version": "0.11.15", @@ -6282,7 +6282,7 @@ "pbkdf2": { "version": "3.0.17", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "integrity": "sha1-l2wgZTBhexTrsyEUI597CTNuk6Y=", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -6351,12 +6351,12 @@ "pn": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", - "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==" + "integrity": "sha1-4vTO8OIZ9GPBeas3Rj5OHs3Muvs=" }, "pngjs": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.3.3.tgz", - "integrity": "sha512-1n3Z4p3IOxArEs1VRXnZ/RXdfEniAUS9jb68g58FIXMNkPJeZd+Qh4Uq7/e0LVxAQGos1eIUrqrt4FpjdnEd+Q==" + "integrity": "sha1-hRc3A73j7ayJmHV7luWCHQlmohs=" }, "pngjs-nozlib": { "version": "1.0.0", @@ -6480,7 +6480,7 @@ "public-encrypt": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "integrity": "sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA=", "dev": true, "requires": { "bn.js": "^4.1.0", @@ -6624,7 +6624,7 @@ "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=" }, "querystring": { "version": "0.2.0", @@ -6724,7 +6724,7 @@ "randomfill": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "integrity": "sha1-ySGW/IarQr6YPxvzF3giSTHWFFg=", "dev": true, "requires": { "randombytes": "^2.0.5", @@ -6740,7 +6740,7 @@ "raw-body": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", - "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", + "integrity": "sha1-GzJOzmtXBuFThVvBFIxlu39uoMM=", "dev": true, "requires": { "bytes": "3.0.0", @@ -6752,7 +6752,7 @@ "iconv-lite": { "version": "0.4.23", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "integrity": "sha1-KXhx9jvlB63Pv8pxXQzQ7thOmmM=", "dev": true, "requires": { "safer-buffer": ">= 2.1.2 < 3" @@ -6763,7 +6763,7 @@ "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "integrity": "sha1-zZJL9SAKB1uDwYjNa54hG3/A0+0=", "dev": true, "requires": { "deep-extend": "^0.6.0", @@ -6868,7 +6868,7 @@ "readdirp": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=", "dev": true, "requires": { "graceful-fs": "^4.1.11", @@ -6879,13 +6879,13 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true }, "micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", "dev": true, "requires": { "arr-diff": "^4.0.0", @@ -6923,7 +6923,7 @@ "regex-cache": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "integrity": "sha1-db3FiioUls7EihKDW8VMjVYjNt0=", "dev": true, "requires": { "is-equal-shallow": "^0.1.3" @@ -6932,7 +6932,7 @@ "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "integrity": "sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw=", "dev": true, "requires": { "extend-shallow": "^3.0.2", @@ -6948,7 +6948,7 @@ "repeat-element": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "integrity": "sha1-eC4NglwMWjuzlzH4Tv7mt0Lmsc4=", "dev": true }, "repeat-string": { @@ -6968,7 +6968,7 @@ "request": { "version": "2.88.0", "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "integrity": "sha1-nC/KT301tZLv5Xx/ClXoEFIST+8=", "requires": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", @@ -7063,7 +7063,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -7092,7 +7092,7 @@ "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "integrity": "sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w=", "dev": true }, "right-align": { @@ -7131,7 +7131,7 @@ "ripemd160": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "integrity": "sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw=", "dev": true, "requires": { "hash-base": "^3.0.0", @@ -7147,7 +7147,7 @@ "rxjs": { "version": "5.5.12", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", - "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "integrity": "sha1-b6YbinfD15PbrycL7i9D9lLXQcw=", "dev": true, "requires": { "symbol-observable": "1.0.1" @@ -7156,7 +7156,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=" }, "safe-json-parse": { "version": "1.0.1", @@ -7176,7 +7176,7 @@ "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=" }, "save-pixels": { "version": "2.3.4", @@ -7208,7 +7208,7 @@ "saxes": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.6.tgz", - "integrity": "sha512-LAYs+lChg1v5uKNzPtsgTxSS5hLo8aIhSMCJt1WMpefAxm3D1RTpMwSpb6ebdL31cubiLTnhokVktBW+cv9Y9w==", + "integrity": "sha1-LZSKR7VJGFFsWmQJbwiGXetb2M0=", "requires": { "xmlchars": "^1.3.1" } @@ -7216,7 +7216,7 @@ "scope-analyzer": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/scope-analyzer/-/scope-analyzer-2.0.5.tgz", - "integrity": "sha512-+U5H0417mnTEstCD5VwOYO7V4vYuSqwqjFap40ythe67bhMFL5C3UgPwyBv7KDJsqUBIKafOD57xMlh1rN7eaw==", + "integrity": "sha1-csnGdww+ZphPhMfTxwRZmKGn24o=", "requires": { "array-from": "^2.1.1", "es6-map": "^0.1.5", @@ -7229,12 +7229,12 @@ "semver": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" + "integrity": "sha1-fnQlb7qknHWqfHogXMInmcrIAAQ=" }, "send": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", - "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "integrity": "sha1-bsyh4PjBVtFBWXVZhI32RzCmu8E=", "dev": true, "requires": { "debug": "2.6.9", @@ -7255,7 +7255,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -7264,13 +7264,13 @@ "mime": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "integrity": "sha1-Eh+evEnjdm8xGnbh+hyAA8SwOqY=", "dev": true }, "statuses": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic=", "dev": true } } @@ -7293,7 +7293,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -7304,7 +7304,7 @@ "serve-static": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", - "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "integrity": "sha1-CV6Ecv1bRiN9tQzkhqQ/S4bGzsE=", "dev": true, "requires": { "encodeurl": "~1.0.2", @@ -7327,7 +7327,7 @@ "set-value": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "integrity": "sha1-ca5KiPD+77v1LR6mBPP7MV67YnQ=", "dev": true, "requires": { "extend-shallow": "^2.0.1", @@ -7350,7 +7350,7 @@ "setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=", "dev": true }, "sha.js": { @@ -7426,7 +7426,7 @@ "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "integrity": "sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0=", "dev": true, "requires": { "base": "^0.11.1", @@ -7442,7 +7442,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -7471,7 +7471,7 @@ "snapdragon-node": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=", "dev": true, "requires": { "define-property": "^1.0.0", @@ -7491,7 +7491,7 @@ "is-accessor-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -7500,7 +7500,7 @@ "is-data-descriptor": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { "kind-of": "^6.0.0" @@ -7509,7 +7509,7 @@ "is-descriptor": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", @@ -7520,7 +7520,7 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", "dev": true } } @@ -7528,7 +7528,7 @@ "snapdragon-util": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=", "dev": true, "requires": { "kind-of": "^3.2.0" @@ -7537,7 +7537,7 @@ "socket.io": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", - "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", + "integrity": "sha1-oGnF/qvuPmshSnW0DOBlLhz7mYA=", "dev": true, "requires": { "debug": "~3.1.0", @@ -7603,7 +7603,7 @@ "source-map-resolve": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "integrity": "sha1-cuLMNAlVQ+Q7LGKyxMENSpBU8lk=", "dev": true, "requires": { "atob": "^2.1.1", @@ -7616,7 +7616,7 @@ "source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "integrity": "sha1-Aoam3ovkJkEzhZTpfM6nXwosWF8=", "dev": true, "requires": { "source-map": "^0.5.6" @@ -7641,13 +7641,13 @@ "spdx-exceptions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "integrity": "sha1-LqRQrudPKom/uUUZwH/Nb0EyKXc=", "dev": true }, "spdx-expression-parse": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "integrity": "sha1-meEZt6XaAOBUkcn6M4t5BII7QdA=", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -7678,7 +7678,7 @@ "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "integrity": "sha1-fLCd2jqGWFcFxks5pkZgOGguj+I=", "dev": true, "requires": { "extend-shallow": "^3.0.0" @@ -7911,7 +7911,7 @@ "stream-http": { "version": "2.8.3", "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "integrity": "sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw=", "dev": true, "requires": { "builtin-status-codes": "^3.0.0", @@ -8041,7 +8041,7 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -8052,7 +8052,7 @@ "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", "requires": { "has-flag": "^3.0.0" } @@ -8071,7 +8071,7 @@ "syntax-error": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz", - "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==", + "integrity": "sha1-LZ1P9cBkrLcRWUo+O5UFStUdkHw=", "dev": true, "requires": { "acorn-node": "^1.2.0" @@ -8080,7 +8080,7 @@ "tap-out": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/tap-out/-/tap-out-2.1.0.tgz", - "integrity": "sha512-LJE+TBoVbOWhwdz4+FQk40nmbIuxJLqaGvj3WauQw3NYYU5TdjoV3C0x/yq37YAvVyi+oeBXmWnxWSjJ7IEyUw==", + "integrity": "sha1-wJMHmpFQNt6Lg1v6MpfxRFixU1g=", "dev": true, "requires": { "re-emitter": "1.1.3", @@ -8113,7 +8113,7 @@ "string_decoder": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "integrity": "sha1-D8Z9fBQYJd6UKC3VNr7GubzoYKs=", "dev": true, "requires": { "safe-buffer": "~5.1.0" @@ -8150,7 +8150,7 @@ "tap-spec": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/tap-spec/-/tap-spec-5.0.0.tgz", - "integrity": "sha512-zMDVJiE5I6Y4XGjlueGXJIX2YIkbDN44broZlnypT38Hj/czfOXrszHNNJBF/DXR8n+x6gbfSx68x04kIEHdrw==", + "integrity": "sha1-cynk5m6Kpo2ioWQhWru5A6fF01I=", "dev": true, "requires": { "chalk": "^1.0.0", @@ -8193,7 +8193,7 @@ "tape": { "version": "4.10.1", "resolved": "https://registry.npmjs.org/tape/-/tape-4.10.1.tgz", - "integrity": "sha512-G0DywYV1jQeY3axeYnXUOt6ktnxS9OPJh97FGR3nrua8lhWi1zPflLxcAHavZ7Jf3qUfY7cxcVIVFa4mY2IY1w==", + "integrity": "sha1-9zvmCIjcsSDwi1f5R69lqClQal8=", "dev": true, "requires": { "deep-equal": "~1.0.1", @@ -8239,7 +8239,7 @@ "tape-run": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/tape-run/-/tape-run-5.0.0.tgz", - "integrity": "sha512-7R2QB0WjN1Lstfvh35UxL6vxNaXfNIAaL6/tunZ+H72mxSs4SOorsanv3slFTuasoeFhA1zSIzBCPeHfxsfOgA==", + "integrity": "sha1-E4YM1ucb0deUXvcn3cJMgWwsqrs=", "dev": true, "requires": { "@juliangruber/tap-finished": "0.0.2", @@ -8353,7 +8353,7 @@ "tiny-lr": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", - "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", + "integrity": "sha1-n6VHQS8jj+2waO4pWvi2gsmLKqs=", "dev": true, "requires": { "body": "^5.1.0", @@ -8388,7 +8388,7 @@ "to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "integrity": "sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4=", "dev": true, "requires": { "define-property": "^2.0.2", @@ -8410,7 +8410,7 @@ "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "integrity": "sha1-U/Nto/R3g7CSWvoG/587FlKA94E=", "requires": { "psl": "^1.1.24", "punycode": "^1.4.1" @@ -8493,7 +8493,7 @@ "tty-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", + "integrity": "sha1-PwUlHuF5BN/QZ3VGZw25ZRaCuBE=", "dev": true }, "tunnel-agent": { @@ -8534,13 +8534,13 @@ "ua-parser-js": { "version": "0.7.17", "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", - "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==", + "integrity": "sha1-6exflJi57JEOeuOsYmqAXE0J7Kw=", "dev": true }, "uglify-es": { "version": "3.3.9", "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "integrity": "sha1-DBxPBwC+2NvBJM2zBNJZLKID5nc=", "dev": true, "requires": { "commander": "~2.13.0", @@ -8550,7 +8550,7 @@ "commander": { "version": "2.13.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "integrity": "sha1-aWS8pnaF33wfFDDFhPB9dZeIW5w=", "dev": true }, "source-map": { @@ -8618,19 +8618,19 @@ "ultron": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", + "integrity": "sha1-n+FTahCmZKZSZqHjzPhf02MCvJw=", "dev": true }, "umd": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz", - "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==", + "integrity": "sha1-qp/mU8QrkJdnhInAEACstp8LJs8=", "dev": true }, "undeclared-identifiers": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.2.tgz", - "integrity": "sha512-13EaeocO4edF/3JKime9rD7oB6QI8llAGhgn5fKOPyfkJbRb6NFv9pYV6dFEmpa4uRjKeBqLZP8GpuzqHlKDMQ==", + "integrity": "sha1-fYUKmIh8/0vQv2SZnAFNCO1tGsw=", "dev": true, "requires": { "acorn-node": "^1.3.0", @@ -8647,7 +8647,7 @@ "underscore.string": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", - "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", + "integrity": "sha1-/CrSVbi9MJ4jnLxYFv0jqbfqQCM=", "dev": true, "requires": { "sprintf-js": "^1.0.3", @@ -8706,7 +8706,7 @@ "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=", "dev": true }, "unpipe": { @@ -8764,7 +8764,7 @@ "upath": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", - "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "integrity": "sha1-NSVll+RqWB20eT0M5H+prr/J+r0=", "dev": true }, "uri-path": { @@ -8776,7 +8776,7 @@ "urify": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/urify/-/urify-2.1.1.tgz", - "integrity": "sha512-4ybbjC35yivSWm0xgIj0duAJUElBRssLxst6QSGL1HapW3zYlsXHcjslBVGwrWd89ItTon5jmiL88UPtubjp1A==", + "integrity": "sha1-mvS1Lr+uRRsdDO4PYFVz0bGgc7w=", "requires": { "from2-string": "^1.1.0", "mime": "^1.3.4", @@ -8789,7 +8789,7 @@ "escodegen": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.9.1.tgz", - "integrity": "sha512-6hTjO1NAWkHnDk3OqQ4YrCuwwmGHL9S3nPlzBOUG/R44rda3wLNrfvQ5fkSGjyhHFKM7ALPKcKGrwvCLe0lC7Q==", + "integrity": "sha1-264X75bI5L7bE1b0UE+kzC98t+I=", "requires": { "esprima": "^3.1.3", "estraverse": "^4.2.0", @@ -8801,7 +8801,7 @@ "object-inspect": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.4.1.tgz", - "integrity": "sha512-wqdhLpfCUbEsoEwl3FXwGyv8ief1k/1aUdIPCqVnupM6e8l63BEJdiF/0swtn04/8p05tG/T0FrpTlfwvljOdw==" + "integrity": "sha1-N/+xDnGtrzdI0F9xO0yUUvQCy8Q=" }, "quote-stream": { "version": "1.0.2", @@ -8883,13 +8883,13 @@ "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=", "dev": true }, "util": { "version": "0.10.4", "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", - "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "integrity": "sha1-OqASW/5mikZy3liFfTrOJ+y3aQE=", "dev": true, "requires": { "inherits": "2.0.3" @@ -8915,12 +8915,12 @@ "uuid": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + "integrity": "sha1-G0r0lV6zB3xQHCOHL8ZROBFYcTE=" }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo=", "dev": true, "requires": { "spdx-correct": "^3.0.0", @@ -8940,12 +8940,12 @@ "vlq": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz", - "integrity": "sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==" + "integrity": "sha1-jz5DKM9jsVQMDWfhsneDhviXWyY=" }, "vm-browserify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz", - "integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==", + "integrity": "sha1-vXbWojMj4sqP+hICjcBFWcdfkBk=", "dev": true }, "w3c-hr-time": { @@ -8959,7 +8959,7 @@ "w3c-xmlserializer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.0.1.tgz", - "integrity": "sha512-XZGI1OH/OLQr/NaJhhPmzhngwcAnZDLytsvXnRmlYeRkmbb0I7sqFFA22erq4WQR0sUu17ZSQOAV9mFwCqKRNg==", + "integrity": "sha1-BUzc01ncXR8+yb5OJyx1avSyHTk=", "requires": { "domexception": "^1.0.1", "webidl-conversions": "^4.0.2", @@ -9247,7 +9247,7 @@ "webidl-conversions": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" + "integrity": "sha1-qFWYCx8LazWbodXZ+zmulB+qY60=" }, "websocket-driver": { "version": "0.7.0", @@ -9262,13 +9262,13 @@ "websocket-extensions": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", - "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", + "integrity": "sha1-XS/yKXcAPsaHpLhwc9+7rBRszyk=", "dev": true }, "whatwg-encoding": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "integrity": "sha1-WrrPd3wyFmpR0IXWtPPn0nET3bA=", "requires": { "iconv-lite": "0.4.24" } @@ -9276,12 +9276,12 @@ "whatwg-mimetype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" + "integrity": "sha1-PUseAxLSB5h5+Cav8Y2+7KWWD78=" }, "whatwg-url": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", - "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "integrity": "sha1-/ekm+lSlmfOt+C3/Jan3vgLcbt0=", "requires": { "lodash.sortby": "^4.7.0", "tr46": "^1.0.1", @@ -9291,7 +9291,7 @@ "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", "requires": { "isexe": "^2.0.0" } @@ -9365,12 +9365,12 @@ "xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" + "integrity": "sha1-auc+Bt5NjG5H+fsYH3jWSK1FfGo=" }, "xmlchars": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-1.3.1.tgz", - "integrity": "sha512-tGkGJkN8XqCod7OT+EvGYK5Z4SfDQGD30zAa58OcnAa0RRWgzUEK72tkXhsX1FZd+rgnhRxFtmO+ihkp8LHSkw==" + "integrity": "sha1-HdoDX4M9u0+GoMKOqmynaSFHk88=" }, "xmlhttprequest-ssl": { "version": "1.5.5", diff --git a/src/ExportBin.js b/src/ExportBin.js index 0b4333e27b..d642438ff1 100755 --- a/src/ExportBin.js +++ b/src/ExportBin.js @@ -32,13 +32,11 @@ module.exports = function ExportBin(dir = "./output/", ref, basic, filename) { if (err) console.error(err) }); if (filename && basic) { - for (var image in ref.images) { - var steps = ref.images[image].steps; + var steps = ref.steps; var datauri = steps.slice(-1)[0].output.src; var ext = steps.slice(-1)[0].output.format; var buffer = require('data-uri-to-buffer')(datauri); fs.writeFile(dir + filename, buffer, function() { }); - } } else { getDirectories(dir, function(dirs) { @@ -50,8 +48,7 @@ module.exports = function ExportBin(dir = "./output/", ref, basic, filename) { } fs.mkdir(dir + 'sequencer' + num, function() { var root = dir + 'sequencer' + num + '/'; - for (var image in ref.images) { - var steps = ref.images[image].steps; + var steps = ref.steps; if (basic) { var datauri = steps.slice(-1)[0].output.src; var ext = steps.slice(-1)[0].output.format; @@ -66,7 +63,6 @@ module.exports = function ExportBin(dir = "./output/", ref, basic, filename) { fs.writeFile(root + image + "_" + i + "." + ext, buffer, function() { }); } } - } }); }); } diff --git a/src/FormatInput.js b/src/FormatInput.js index ae80749339..7fe38fd79b 100644 --- a/src/FormatInput.js +++ b/src/FormatInput.js @@ -24,44 +24,20 @@ function copy(a) { } function formatInput(args,format,images) { - // images = []; - // for (var image in this.images) { - // images.push(image); - // } var json_q = {}; var format_i = format; if (format == "+") format = ['string_a', 'o_object']; else if (format == "-") - format = ['o_string_a', 'number_a']; + format = ['number_a']; else if (format == "^") - format = ['o_string_a', 'number', 'string', 'o_object']; + format = ['number', 'string', 'o_object']; else if (format == "r") format = ['o_number']; else if (format == "l") format = ['string','o_function']; - /* - formats: - addSteps :: o_image_a, name_a, o_o - o_string_a, string_a, o_object => { image: [{name,o}] } - removeSteps :: o_image_a, index_a - o_string_a, number_a => { image: [index] } - insertSteps :: o_image_a, index, name, o_o - o_string_a, number, string, o_object => { image: [{index,name,o}] } - run :: o_image_a, o_from - o_string_a, o_number => { image: index } - loadImages :: image, src, o_function - string, string, o_function => { images: [{image:src}], callback } - - optionals: - image: o_string_a - options: o_object - from: o_number - callback: o_function - */ - if(format[format.length-1] == "o_object") { if(objTypeOf(args[args.length-1]) != "Object") args.push({}); @@ -76,29 +52,6 @@ function formatInput(args,format,images) { } - //remember to remove this. - // if(format[0] == "o_string_a") { - // if(args.length == format.length - 1) { - // var insert = false; - // for (var i in args) { - // if (format[parseInt(i)+1].includes( typeof(getPrimitive(args[i])) )){ - // insert = true; - // } - // else {insert = false; break;} - // } - // if(insert) - // args.splice(0,0,copy(images)); - // } - // } - // else if (format[0] == "o_string" && format_i == "l" && args.length == 2) { - // if (typeof(args[0]) == "string") { - // var identifier = "image"; - // var number = 1; - // while (this.images.hasOwnProperty(identifier+number)) number++; - // args.splice(0,0,identifier+number); - // } - // } - if(args.length == format.length) {//making of arrays for (var i in format) { if (format[i].substr(format[i].length-2,2)=="_a") @@ -106,13 +59,12 @@ function formatInput(args,format,images) { } } - if (args.length == 1) { - json_q = copy(args[0]); - if(!(format_i == "r" || format_i == "l")) { - for (var img in json_q) - json_q[img] = makeArray(json_q[img]); - } + if (args.length == 1 ) { if(format_i == "r") json_q = {0:copy(args[0])}; + else if(format_i == "-") { + json_q=[]; + json_q= copy(args[0]); + } } else if (format_i == "r" ) { for (var img in args[0]) json_q = {0:args[0]}; @@ -124,9 +76,6 @@ function formatInput(args,format,images) { } } else { - // for (var img in args[0]) { - // var image = args[0][img]; - // json_q[image] = []; json_q = []; if(format_i == "+") { for(var s in args[0]) { @@ -137,19 +86,16 @@ function formatInput(args,format,images) { } } - if(format_i == "-") { - json_q[image] = args[1]; - } if(format_i == "^") { - var size = this.images[image].steps.length; - var index = args[1]; + var size = this.steps.length; + var index = args[0]; index = (index==size)?index:index%size; if (index<0) index += size+1; - json_q[image].push({ + json_q.push({ index: index, - name: args[2], - o: args[3] + name: args[1], + o: args[2] }); // } diff --git a/src/ImageSequencer.js b/src/ImageSequencer.js index d73d58a6f0..ba9ae85355 100644 --- a/src/ImageSequencer.js +++ b/src/ImageSequencer.js @@ -65,65 +65,55 @@ ImageSequencer = function ImageSequencer(options) { function addSteps() { var this_ = (this.name == "ImageSequencer") ? this : this.sequencer; - var args = (this.name == "ImageSequencer") ? [] : this.image; + var args = []; var json_q = {}; for (var arg in arguments) { args.push(copy(arguments[arg])); } json_q = formatInput.call(this_, args, "+"); inputlog.push({ method: "addSteps", json_q: copy(json_q) }); - for (var j in json_q) require("./AddStep")(this_, json_q[j].name, json_q[j].o); - console.log(this.steps); return this; } - function removeStep(image, index) { + function removeStep(ref, index) { //remove the step from images[image].steps and redraw remaining images if (index > 0) { - thisStep = images[image].steps[index]; + //var this_ = (this.name == "ImageSequencer") ? this : this.sequencer; + thisStep = ref.steps[index]; thisStep.UI.onRemove(thisStep.options.step); - images[image].steps.splice(index, 1); + ref.steps.splice(index, 1); } //tell the UI a step has been removed } - function removeSteps(image, index) { - var run = {}, indices; + function removeSteps(index) { + var indices; var this_ = (this.name == "ImageSequencer") ? this : this.sequencer; - var args = (this.name == "ImageSequencer") ? [] : [this.images]; + var args = []; for (var arg in arguments) args.push(copy(arguments[arg])); var json_q = formatInput.call(this_, args, "-"); inputlog.push({ method: "removeSteps", json_q: copy(json_q) }); - for (var img in json_q) { - indices = json_q[img].sort(function(a, b) { return b - a }); - run[img] = indices[indices.length - 1]; + indices = json_q.sort(function(a, b) { return b - a }); for (var i in indices) - removeStep(img, indices[i]); - } - // this.run(run); // This is creating problems + removeStep(this_, indices[i]); return this; } function insertSteps(image, index, name, o) { - var run = {}; var this_ = (this.name == "ImageSequencer") ? this : this.sequencer; - var args = (this.name == "ImageSequencer") ? [] : [this.images]; + var args = [] for (var arg in arguments) args.push(arguments[arg]); var json_q = formatInput.call(this_, args, "^"); inputlog.push({ method: "insertSteps", json_q: copy(json_q) }); - for (var img in json_q) { - var details = json_q[img]; + var details = json_q; details = details.sort(function(a, b) { return b.index - a.index }); for (var i in details) - require("./InsertStep")(this_, img, details[i].index, details[i].name, details[i].o); - run[img] = details[details.length - 1].index; - } - // this.run(run); // This is Creating issues + require("./InsertStep")(this_, details[i].index, details[i].name, details[i].o); return this; } @@ -134,18 +124,13 @@ ImageSequencer = function ImageSequencer(options) { config = config || { mode: 'no-arg' }; if (config.index) index = config.index; - if (config.mode != 'test') { if (config.mode != "no-arg" && typeof config != 'function') { if (config.progressObj) progressObj = config.progressObj; delete arguments['0']; } - } - else { - arguments['0'] = config.mode; - } var this_ = (this.name == "ImageSequencer") ? this : this.sequencer; - var args = (this.name == "ImageSequencer") ? [] : [this.image]; + var args = []; for (var arg in arguments) args.push(copy(arguments[arg])); var callback = function() { }; @@ -162,13 +147,17 @@ ImageSequencer = function ImageSequencer(options) { function loadImages() { var args = []; + var prevSteps = this.getSteps().slice(1).map(step=>step.options.name) var sequencer = this; sequencer.image = arguments[0]; for (var arg in arguments) args.push(copy(arguments[arg])); var json_q = formatInput.call(this, args, "l"); - + if(this.getSteps().length!=0){ + this.options.sequencerCounter = 0; + inputlog = []; + this.steps = []; + } inputlog.push({ method: "loadImages", json_q: copy(json_q) }); - var ret = { name: "ImageSequencer Wrapper", sequencer: this, @@ -179,10 +168,17 @@ ImageSequencer = function ImageSequencer(options) { UI: this.UI, setUI: this.setUI }; - + function loadPrevSteps(ref){ + if(prevSteps.length!=0){ + ref.addSteps(prevSteps) + prevSteps=[]; + } + } require('./ui/LoadImage')(sequencer, "image", json_q.image, function() { + loadPrevSteps(sequencer); json_q.callback.call(ret); }); + } function replaceImage(selector, steps, options) { @@ -193,12 +189,7 @@ ImageSequencer = function ImageSequencer(options) { //returns the steps added function getSteps(){ - var steps; - if(arguments[0]) - steps= this.images.test.steps; - else - steps = this.images.image1.steps; - return [...steps]; + return this.steps; } function setUI(UI) { @@ -221,8 +212,9 @@ ImageSequencer = function ImageSequencer(options) { } } else { - if (modules[name]) - modulesdata = modules[name][1]; + if (modules[name]){ + modulesdata = modules[name][1]; + } else modulesdata = { 'inputs': sequences[name]['options'] }; } @@ -233,9 +225,11 @@ ImageSequencer = function ImageSequencer(options) { function toCliString() { var cliStringSteps = `"`, cliOptions = {}; for (var step in this.steps) { - if (this.steps[step].options.name !== "load-image") - cliStringSteps += `${this.steps[step].options.name} `; - for (var inp in modulesInfo(this.steps[step].options.name).inputs) { + var name = (typeof this.steps[step].options !== "undefined")? this.steps[step].options.name : this.steps[step].name + if (name !== "load-image"){ + cliStringSteps += `${name} `; + } + for (var inp in modulesInfo(name).inputs) { cliOptions[inp] = this.steps[step].options[inp]; } } @@ -248,13 +242,14 @@ ImageSequencer = function ImageSequencer(options) { if (step) { return stepToString(step); } else { - return copy(this.images.image1.steps).map(stepToString).slice(1).join(','); + return copy(this.steps.map(stepToString).slice(1).join(',')); } } - + // Stringifies one step of the sequence function stepToString(step) { - let inputs = modulesInfo(step.options.name).inputs || {}, op = {}; + var arg = (step.name)?step.name:step.options.name; + let inputs = modulesInfo(arg).inputs || {}, op = {}; for (let input in inputs) { @@ -266,7 +261,7 @@ ImageSequencer = function ImageSequencer(options) { } var configurations = Object.keys(op).map(key => key + ':' + op[key]).join('|'); - return `${step.options.name}{${configurations}}`; + return `${arg}{${configurations}}`; } // exports the current sequence as an array of JSON steps diff --git a/src/Run.js b/src/Run.js index 210485ac29..08af2ec096 100644 --- a/src/Run.js +++ b/src/Run.js @@ -1,12 +1,10 @@ const getStepUtils = require('./util/getStep.js'); function Run(ref, json_q, callback, ind, progressObj) { - console.log(json_q) if (!progressObj) progressObj = { stop: function() { } }; function drawStep(drawarray, pos) { if (pos == drawarray.length && drawarray[pos - 1] !== undefined) { - // var image = drawarray[pos - 1].image; if (ref.objTypeOf(callback) == "Function" && ref.steps.slice(-1)[0].output) { var steps = ref.steps; var out = steps[steps.length - 1].output.src; @@ -17,7 +15,6 @@ function Run(ref, json_q, callback, ind, progressObj) { // so we don't run on the loadImage module: if (drawarray[pos] !== undefined) { - // var image = drawarray[pos].image; var i = drawarray[pos].i; var input = ref.steps[i - 1].output; var step = ref.steps[i]; @@ -46,7 +43,7 @@ function Run(ref, json_q, callback, ind, progressObj) { inputForNextStep, function onEachStep() { - // This output is accessible by UI + // This output is accessible by UI ref.steps[i].options.step.output = ref.steps[i].output.src; // Tell UI that step has been drawn. @@ -61,33 +58,26 @@ function Run(ref, json_q, callback, ind, progressObj) { function drawSteps(json_q) { var drawarray = []; - // for (var image in json_q) { var no_steps = ref.steps.length; var init = json_q[0]; for (var i = 0; i < no_steps - init; i++) { drawarray.push({i: init + i }); } - // } drawStep(drawarray, ind); } function filter(json_q) { - // for (var image in json_q) { + if (json_q[0] == 0 && ref.steps.length == 1) delete json_q[0]; else if (json_q[0] == 0) json_q[0]++; - // } - //for (var image in json_q) { var prevstep = ref.steps[json_q[0] - 1]; - console.log(json_q[0]); while ( typeof prevstep == "undefined" || typeof prevstep.output == "undefined" - ) { - // console.log('IN'); + ) { prevstep = ref.steps[--json_q[0] - 1]; } - //} return json_q; } diff --git a/src/ui/LoadImage.js b/src/ui/LoadImage.js index d96b1ee5c1..28516fb945 100644 --- a/src/ui/LoadImage.js +++ b/src/ui/LoadImage.js @@ -33,9 +33,9 @@ function LoadImage(ref, name, src, main_callback) { canvas.width = image.naturalWidth; canvas.height = image.naturalHeight; context.drawImage(image,0,0); - datauri = canvas.toDataURL(ext); + datauri = canvas.toDataURL(ext); callback(datauri, step); - } + } image.src = src; } else { @@ -60,10 +60,6 @@ function LoadImage(ref, name, src, main_callback) { var output = makeImage(datauri); ref.steps.push(step); ref.steps[0].output = output; - // ref.images[name] = image; - // var loadImageStep = ref.images[name].steps[0]; - // loadImageStep.output = output; - // loadImageStep.options.step.output = loadImageStep.output.src; ref.steps[0].UI.onSetup(ref.steps[0]); ref.steps[0].UI.onDraw(ref.steps[0]); ref.steps[0].UI.onComplete(ref.steps[0]); @@ -78,34 +74,3 @@ function LoadImage(ref, name, src, main_callback) { module.exports = LoadImage; - - // var image = { - // src: src, - // steps: [{ - // options: { - // id: step.ID, - // name: "load-image", - // description: "This initial step loads and displays the original image without any modifications.", - // title: "Load Image", - // step: step - // }, - // UI: ref.events, - // draw: function() { - // UI.onDraw(options.step); - // if(arguments.length==1){ - // this.output = CImage(arguments[0]); - // options.step.output = this.output; - // UI.onComplete(options.step); - // return true; - // } - // else if(arguments.length==2) { - // this.output = CImage(arguments[0]); - // options.step.output = this.output; - // arguments[1](); - // UI.onComplete(options.step); - // return true; - // } - // return false; - // }, - // }] - // }; \ No newline at end of file diff --git a/test/core/modules/QR.js b/test/core/modules/QR.js index 6f809cb40c..5838548391 100644 --- a/test/core/modules/QR.js +++ b/test/core/modules/QR.js @@ -10,17 +10,17 @@ var red = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAA var benchmark= 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5+qDMPsIJJJIIokkkkgiiSSSSCKJJJJIogNrygQcXEYsHQAAAABJRU5ErkJggg=='; // Test 1 to check brightness module is getting loaded test('Load add QR module', function(t) { - sequencer1.loadImages('image1', red); + sequencer1.loadImages(red); sequencer1.addSteps('add-qr', options); - t.equal(sequencer1.images.image1.steps[1].options.name, "add-qr", "Add-QR module is getting loaded."); + t.equal(sequencer1.steps[1].options.name, "add-qr", "Add-QR module is getting loaded."); t.end(); }); // Test 2 to check options are correct test('Check Options', function(t) { - sequencer1.loadImages('image1', red); + sequencer1.loadImages(red); sequencer1.addSteps('add-qr', options); - t.equal(sequencer1.images.image1.steps[1].options.size, 200, "Options are correct"); + t.equal(sequencer1.steps[1].options.size, 200, "Options are correct"); t.end(); }); @@ -28,7 +28,7 @@ test('Check Options', function(t) { // Test 3 to check Add QR module works as expected test('Add QR module works correctly', function(t) { sequencer1.run( function(out) { - var result = sequencer1.images.image1.steps[1].output.src + var result = sequencer1.steps[1].output.src base64Img.imgSync(result, target, 'result') base64Img.imgSync(benchmark, target, 'benchmark') result = 'test_outputs/result.png' diff --git a/test/core/modules/benchmark.js b/test/core/modules/benchmark.js index cf0638de24..b5aa35fddc 100644 --- a/test/core/modules/benchmark.js +++ b/test/core/modules/benchmark.js @@ -17,7 +17,7 @@ test('benchmark all modules', function(t) { var sequencer = ImageSequencer({ ui: false, inBrowser: false }); var mods = Object.keys(sequencer.modules); - sequencer.loadImages(imageName, image); + sequencer.loadImages(image); sequencer.addSteps(mods[0]); global.start = Date.now() global.idx = 0 diff --git a/test/core/modules/brightness.js b/test/core/modules/brightness.js index 2b80277ba3..3abca4e2ae 100644 --- a/test/core/modules/brightness.js +++ b/test/core/modules/brightness.js @@ -12,22 +12,22 @@ var benchmark = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6m // Test 1 to check brightness module is getting loaded test('Load brightness module', function(t) { - sequencer.loadImages('test', red); + sequencer.loadImages(red); sequencer.addSteps('brightness', options); - t.equal(sequencer.images.test.steps[1].options.name, 'brightness', 'Brightness module is getting loaded'); + t.equal(sequencer.steps[1].options.name, 'brightness', 'Brightness module is getting loaded'); t.end(); }); // Test 2 to check options are correct test('Check Options', function(t) { - t.equal(sequencer.images.test.steps[1].options.brightness, 1, 'Options are correct'); + t.equal(sequencer.steps[1].options.brightness, 1, 'Options are correct'); t.end(); }); // Test 3 to check brightness module works as expected test('Brightness module works correctly', function(t) { sequencer.run({ mode: 'test' }, function(out) { - var result = sequencer.images.test.steps[1].output.src + var result = sequencer.steps[1].output.src base64Img.imgSync(result, target, 'result') base64Img.imgSync(benchmark, target, 'benchmark') result = './test_outputs/result.png' diff --git a/test/core/modules/chain.js b/test/core/modules/chain.js index 48791e1680..071a749354 100644 --- a/test/core/modules/chain.js +++ b/test/core/modules/chain.js @@ -13,7 +13,7 @@ var red = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQ test('loadImages/loadImage has a name generator.', function (t){ sequencer.loadImage(red); - t.equal(sequencer.images.image1.steps.length, 1, "Initial Step Created"); + t.equal(sequencer.steps.length, 1, "Initial Step Created"); t.end(); }); @@ -21,7 +21,6 @@ test('loadImages/loadImage returns a wrapper in the callback.', function (t){ sequencer.loadImage(red, function() { var returnval = this; t.equal(returnval.name,"ImageSequencer Wrapper", "Wrapper is returned"); - t.equal(returnval.images[0],"image2","Image scope is defined"); t.end(); }); }); @@ -31,38 +30,35 @@ test('addSteps is two-way chainable.', function (t){ var returnval = this; this.addSteps('invert'); t.equal(returnval.name,"ImageSequencer Wrapper", "Wrapper is returned"); - t.equal(returnval.images[0],"image3","Image scope is defined"); - t.equal(sequencer.images.image3.steps.length,2,"Loaded image is affected"); - t.equal(sequencer.images.image3.steps[1].options.name,"invert","Correct Step Added"); - t.equal(sequencer.images.image2.steps.length,1,"Other images are not affected"); - t.equal(sequencer.images.image1.steps.length,1,"Other images are not affected"); + t.equal(sequencer.steps.length,2,"Loaded image is affected"); + t.equal(sequencer.steps[1].options.name,"invert","Correct Step Added"); t.end(); }); }); test('addSteps is two-way chainable without loadImages.', function (t){ - var returnval = sequencer.addSteps("image3","ndvi"); + var returnval = sequencer.addSteps("ndvi"); t.equal(returnval.name,"ImageSequencer","Sequencer is returned"); - t.equal(sequencer.images.image3.steps.length,3,"Step length increased"); - t.equal(sequencer.images.image3.steps[2].options.name,"ndvi","Correct Step Added"); + t.equal(sequencer.steps.length,3,"Step length increased"); + t.equal(sequencer.steps[2].options.name,"ndvi","Correct Step Added"); t.end(); }); test('removeSteps is two-way chainable.', function (t){ sequencer.loadImage(red,function(){ var returnval = this; + this.addSteps('invert').removeSteps(1); t.equal(returnval.name,"ImageSequencer Wrapper", "Wrapper is returned"); - t.equal(returnval.images[0],"image4","Image scope is defined"); - t.equal(sequencer.images.image4.steps.length,1); + t.equal(sequencer.steps.length,3); t.end(); }); }); test('removeSteps is two-way chainable without loadImages.', function (t){ - var returnval = sequencer.removeSteps("image3",1); + var returnval = sequencer.addSteps('blur').removeSteps(3); t.equal(returnval.name,"ImageSequencer","Sequencer is returned"); - t.equal(sequencer.images.image3.steps.length,2); + t.equal(sequencer.steps.length,3); t.end(); }); @@ -71,17 +67,16 @@ test('insertSteps is two-way chainable.', function (t){ var returnval = this; this.insertSteps(1,'invert'); t.equal(returnval.name,"ImageSequencer Wrapper","Wrapper is returned"); - t.equal(returnval.images[0],"image5","Image scope is defined"); - t.equal(sequencer.images.image5.steps.length,2); - t.equal(sequencer.images.image5.steps[1].options.name,"invert","Correct Step Inserrted"); + t.equal(sequencer.steps.length,4); + t.equal(sequencer.steps[1].options.name,"invert","Correct Step Inserrted"); t.end(); }); }); test('insertSteps is two-way chainable without loadImages.', function (t){ - var returnval = sequencer.insertSteps("image5",1,"ndvi"); + var returnval = sequencer.insertSteps(1,"ndvi"); t.equal(returnval.name,"ImageSequencer","Sequencer is returned"); - t.equal(sequencer.images.image5.steps.length,3); - t.equal(sequencer.images.image5.steps[1].options.name,"ndvi","Correct Step Inserrted"); + t.equal(sequencer.steps.length,5); + t.equal(sequencer.steps[1].options.name,"ndvi","Correct Step Inserrted"); t.end(); }); diff --git a/test/core/modules/contrast.js b/test/core/modules/contrast.js index d847ed5158..5ca5fd0bf2 100644 --- a/test/core/modules/contrast.js +++ b/test/core/modules/contrast.js @@ -12,21 +12,21 @@ var target = 'test_outputs' var options = {contrast: -40} test('Contrast module loads correctly', function(t) { - sequencer.loadImages('test', red) - sequencer.addSteps('test', 'contrast') - t.equal(sequencer.images.test.steps.length, 2, 'Contrast module loaded') + sequencer.loadImages(red) + sequencer.addSteps('contrast') + t.equal(sequencer.steps.length, 2, 'Contrast module loaded') t.end() }) test('Contrast module loads with correct options', function(t) { sequencer.addSteps('test', 'contrast', options) - t.equal(sequencer.images.test.steps[2].options.contrast, -40, 'options loaded correctly') + t.equal(sequencer.steps[2].options.contrast, -40, 'options loaded correctly') t.end() }) test('Contrast module works correctly', function(t) { sequencer.run({mode:'test'}, function(out) { - var result = sequencer.images.test.steps[2].output.src + var result = sequencer.steps[2].output.src base64Img.imgSync(result, target, 'result') base64Img.imgSync(benchmark, target, 'benchmark') result = './test_outputs/result.png' diff --git a/test/core/modules/dynamic-imports.js b/test/core/modules/dynamic-imports.js index 459a3d31f9..f06a574236 100644 --- a/test/core/modules/dynamic-imports.js +++ b/test/core/modules/dynamic-imports.js @@ -6,7 +6,7 @@ var red = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQ test('Dynamically add a test Module', function(t) { sequencer.loadNewModule('test', { func: require('./testModule/Module'), info: require('./testModule/info') }); - sequencer.loadImages('image1', red); + sequencer.loadImages(red); t.deepEqual(sequencer.modules['test'], [ require('./testModule/Module'), require('./testModule/info') diff --git a/test/core/modules/image-sequencer.js b/test/core/modules/image-sequencer.js index db8271f51c..0fe0477646 100644 --- a/test/core/modules/image-sequencer.js +++ b/test/core/modules/image-sequencer.js @@ -34,9 +34,9 @@ test('Image Sequencer has tests', function(t) { }); test('loadImages loads a DataURL image and creates a step.', function(t) { - sequencer.loadImages('test', red); - t.equal(sequencer.images.test.steps.length, 1, "Initial Step Created"); - t.equal(typeof (sequencer.images.test.steps[0].output.src), "string", "Initial output exists"); + sequencer.loadImages(red); + t.equal(sequencer.steps.length, 1, "Initial Step Created"); + t.equal(typeof (sequencer.steps[0].output.src), "string", "Initial output exists"); t.end(); }); @@ -58,8 +58,8 @@ if (!sequencer.options.inBrowser) } else { sequencer.loadImage('URL', 'https://ccpandhare.github.io/image-sequencer/examples/images/red.jpg', function() { - t.equal(sequencer.images.URL.steps.length, 1, "Initial Step Created"); - t.equal(typeof (sequencer.images.URL.steps[0].output.src), "string", "Initial output exists"); + t.equal(sequencer.steps.length, 1, "Initial Step Created"); + t.equal(typeof (sequencer.steps[0].output.src), "string", "Initial output exists"); t.end(); }); } @@ -69,100 +69,100 @@ if (!sequencer.options.inBrowser) if (!sequencer.options.inBrowser) test('loadImages loads an image from PATH and creates a step. (NodeJS)', function(t) { sequencer.loadImages('examples/images/red.jpg'); - t.equal(sequencer.images.image1.steps.length, 1, "Initial Step Created"); - t.equal(typeof (sequencer.images.image1.steps[0].output.src), "string", "Initial output exists"); + t.equal(sequencer.steps.length, 1, "Initial Step Created"); + t.equal(typeof (sequencer.steps[0].output.src), "string", "Initial output exists"); t.end(); }); test('loadImage works too.', function(t) { - sequencer.loadImage('test2', red); - t.equal(sequencer.images.test2.steps.length, 1, "Initial Step Created"); - t.equal(typeof (sequencer.images.test2.steps[0].output.src), "string", "Initial output exists"); + sequencer.loadImage(red); + t.equal(sequencer.steps.length, 1, "Initial Step Created"); + t.equal(typeof (sequencer.steps[0].output.src), "string", "Initial output exists"); t.end(); }); -test('addSteps("image","name") adds a step', function(t) { - sequencer.addSteps('test', 'channel'); - t.equal(sequencer.images.test.steps.length, 2, "Length of steps increased") - t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Added"); - t.equal(sequencer.images.test.steps[1].options.description, "Displays only one color channel of an image -- default is green", "Step description shown"); - t.end(); -}); +// test('addSteps("image","name") adds a step', function(t) { +// sequencer.addSteps('test', 'channel'); +// t.equal(sequencer.steps.length, 2, "Length of steps increased") +// t.equal(sequencer.steps[1].options.name, "channel", "Correct Step Added"); +// t.equal(sequencer.steps[1].options.description, "Displays only one color channel of an image -- default is green", "Step description shown"); +// t.end(); +// }); test('addSteps("name") adds a step', function(t) { sequencer.addSteps('channel'); - t.equal(sequencer.images.test.steps.length, 3, "Length of steps increased"); - t.equal(sequencer.images.test.steps[2].options.name, "channel", "Correct Step Added"); + t.equal(sequencer.steps.length, 2, "Length of steps increased"); + t.equal(sequencer.steps[1].options.name, "channel", "Correct Step Added"); t.end(); }); test('addSteps(["name"]) adds a step', function(t) { sequencer.addSteps(['channel', 'invert']); - t.equal(sequencer.images.test.steps.length, 5, "Length of steps increased by two") - t.equal(sequencer.images.test.steps[3].options.name, "channel", "Correct Step Added"); - t.equal(sequencer.images.test.steps[4].options.name, "invert", "Correct Step Added"); + t.equal(sequencer.steps.length, 4, "Length of steps increased by two") + t.equal(sequencer.steps[2].options.name, "channel", "Correct Step Added"); + t.equal(sequencer.steps[3].options.name, "invert", "Correct Step Added"); t.end(); }); test('addSteps("name",o) adds a step', function(t) { sequencer.addSteps('channel', {}); - t.equal(sequencer.images.test.steps.length, 6, "Length of steps increased"); - t.equal(sequencer.images.test.steps[5].options.name, "channel", "Correct Step Added"); + t.equal(sequencer.steps.length, 5, "Length of steps increased"); + t.equal(sequencer.steps[4].options.name, "channel", "Correct Step Added"); t.end(); }); -test('addSteps("image","name",o) adds a step', function(t) { - sequencer.addSteps('test', 'channel', {}); - t.equal(sequencer.images.test.steps.length, 7, "Length of steps increased"); - t.equal(sequencer.images.test.steps[6].options.name, "channel", "Correct Step Added"); - t.end(); -}); - -test('removeSteps("image",position) removes a step', function(t) { - sequencer.removeSteps('test', 1); - t.equal(sequencer.images.test.steps.length, 6, "Length of steps reduced"); - t.end(); -}); +// test('addSteps("image","name",o) adds a step', function(t) { +// sequencer.addSteps('test', 'channel', {}); +// t.equal(sequencer.images.test.steps.length, 7, "Length of steps increased"); +// t.equal(sequencer.images.test.steps[6].options.name, "channel", "Correct Step Added"); +// t.end(); +// }); -test('removeSteps({image: [positions]}) removes steps', function(t) { - sequencer.removeSteps('test', [1, 2]); - t.equal(sequencer.images.test.steps.length, 4, "Length of steps reduced"); +test('removeSteps(position) removes a step', function(t) { + sequencer.removeSteps( 1); + t.equal(sequencer.steps.length, 4, "Length of steps reduced"); t.end(); }); -test('removeSteps(position) removes steps', function(t) { +test('removeSteps([positions]) removes steps', function(t) { sequencer.removeSteps([1, 2]); - t.equal(sequencer.images.test.steps.length, 2, "Length of steps reduced"); + t.equal(sequencer.steps.length, 2, "Length of steps reduced"); t.end(); }); -test('insertSteps("image",position,"module",options) inserts a step', function(t) { - sequencer.insertSteps('test', 1, 'channel', {}); - t.equal(sequencer.images.test.steps.length, 3, "Length of Steps increased"); - t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); - t.end(); -}); +// test('removeSteps(position) removes steps', function(t) { +// sequencer.removeSteps([1, 2]); +// t.equal(sequencer.images.test.steps.length, 2, "Length of steps reduced"); +// t.end(); +// }); -test('insertSteps("image",position,"module") inserts a step', function(t) { - sequencer.insertSteps('test', 1, 'channel'); - t.equal(sequencer.images.test.steps.length, 4, "Length of Steps increased"); - t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); +test('insertSteps(position,"module",options) inserts a step', function(t) { + sequencer.insertSteps( 1, 'channel', {}); + t.equal(sequencer.steps.length, 3, "Length of Steps increased"); + t.equal(sequencer.steps[1].options.name, "channel", "Correct Step Inserted"); t.end(); }); test('insertSteps(position,"module") inserts a step', function(t) { sequencer.insertSteps(1, 'channel'); - t.equal(sequencer.images.test.steps.length, 5, "Length of Steps increased"); - t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); + t.equal(sequencer.steps.length, 4, "Length of Steps increased"); + t.equal(sequencer.steps[1].options.name, "channel", "Correct Step Inserted"); t.end(); }); -test('insertSteps({image: {index: index, name: "module", o: options} }) inserts a step', function(t) { - sequencer.insertSteps({ test: { index: 1, name: 'channel', o: {} } }); - t.equal(sequencer.images.test.steps.length, 6, "Length of Steps increased"); - t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); - t.end(); -}); +// test('insertSteps(position,"module") inserts a step', function(t) { +// sequencer.insertSteps(1, 'channel'); +// t.equal(sequencer.images.test.steps.length, 5, "Length of Steps increased"); +// t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); +// t.end(); +// }); + +// test('insertSteps({image: {index: index, name: "module", o: options} }) inserts a step', function(t) { +// sequencer.insertSteps({ test: { index: 1, name: 'channel', o: {} } }); +// t.equal(sequencer.images.test.steps.length, 6, "Length of Steps increased"); +// t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); +// t.end(); +// }); test('getSteps() returns correct array of steps', function(t){ @@ -170,10 +170,10 @@ test('getSteps() returns correct array of steps', function(t){ sequencer.loadImages('test', red); sequencer.addSteps(['blur','invert']); var stepsArray = sequencer.getSteps('test'); - t.equal(stepsArray.length, sequencer.images.test.steps.length, "getSteps() returns correct length of steps"); + t.equal(stepsArray.length, sequencer.steps.length, "getSteps() returns correct length of steps"); var flag=0; - for (var i = 0; i { t.isNotEqual(out, undefined, "Opaque Meta-Module not undefined"); @@ -15,7 +15,7 @@ test('Load ndvi-colormap meta module', function(t) { }); test('Load colorbar opaque meta module', function(t) { - sequencer2.loadImages('image1', red); + sequencer2.loadImages(red); sequencer2.addSteps('colorbar'); // this has been refactored as an opaque meta-module https://github.com/publiclab/image-sequencer/issues/315 sequencer2.run((out) => { t.isNotEqual(out, undefined, "Opaque Meta-Module not undefined"); diff --git a/test/core/modules/replace.js b/test/core/modules/replace.js index 12b1f0c2b9..478a7b48ad 100644 --- a/test/core/modules/replace.js +++ b/test/core/modules/replace.js @@ -8,14 +8,14 @@ require('../../../src/ImageSequencer.js'); var sequencer = ImageSequencer({ ui: false }); var red = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAAQABADASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAf/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFQEBAQAAAAAAAAAAAAAAAAAABgj/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCdABykX//Z"; -if(typeof(document) !== "undefined") { +if(typeof(window) !== "undefined") { var image = document.createElement("img"); image.src = red; document.body.appendChild(image); } test('replaceImage works.', function (t){ - if (typeof(document) === "undefined") + if (typeof(window) === "undefined") t.end(); sequencer.replaceImage("img","invert",{ callback: function(){ diff --git a/test/core/modules/run.js b/test/core/modules/run.js index 4f1d01132e..a1f91adc05 100644 --- a/test/core/modules/run.js +++ b/test/core/modules/run.js @@ -9,17 +9,17 @@ require('../../../src/ImageSequencer.js'); var sequencer = ImageSequencer({ ui: false }); var red = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAAQABADASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAf/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFQEBAQAAAAAAAAAAAAAAAAAABgj/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCdABykX//Z"; -sequencer.loadImages('image1', red); +sequencer.loadImages(red); sequencer.addSteps('invert'); sequencer.addSteps('invert'); sequencer.addSteps('invert'); test('run() works with all possible argument combinations',function(t){ sequencer.run(function (out) { - var output1 = DataURItoBuffer(sequencer.images.image1.steps.slice(-1)[0].output.src); - sequencer.images.image1.steps.splice(1,1); + var output1 = DataURItoBuffer(sequencer.steps.slice(-1)[0].output.src); + sequencer.steps.splice(1,1); sequencer.run({index: 1},function(out){ - var output2 = DataURItoBuffer(sequencer.images.image1.steps.slice(-1)[0].output.src); + var output2 = DataURItoBuffer(sequencer.steps.slice(-1)[0].output.src); t.deepEqual(output1,output2,"output remains same after removing a step and running sequencer from a greater index"); sequencer.run(function(out){ t.end(); diff --git a/test/core/modules/threshold.js b/test/core/modules/threshold.js index e47b4a4a8a..c0514e6721 100644 --- a/test/core/modules/threshold.js +++ b/test/core/modules/threshold.js @@ -12,22 +12,22 @@ var benchmark = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8 // Test 1 to check threshold module is getting loaded test('Load Threshold module', function(t) { - sequencer.loadImages('test', red); + sequencer.loadImages(red); sequencer.addSteps('threshold', options); - t.equal(sequencer.images.test.steps[1].options.name, 'threshold', 'Threshold module is getting loaded'); + t.equal(sequencer.steps[1].options.name, 'threshold', 'Threshold module is getting loaded'); t.end(); }); // Test 2 to check options are correct test('Check Options', function(t) { - t.equal(sequencer.images.test.steps[1].options.threshold, "Automatic Thresholding", 'Options are correct'); + t.equal(sequencer.steps[1].options.threshold, "Automatic Thresholding", 'Options are correct'); t.end(); }); // Test 3 to check threshold module works as expected test('Threshold module works correctly', function(t) { sequencer.run({ mode: 'test' }, function(out) { - var result = sequencer.images.test.steps[1].output.src + var result = sequencer.steps[1].output.src base64Img.imgSync(result, target, 'result') base64Img.imgSync(benchmark, target, 'benchmark') result = './test_outputs/result.png' From 6b566f1aa6cab35d5560b557fc74e4d2c89dbf74 Mon Sep 17 00:00:00 2001 From: Divy123 Date: Sat, 9 Mar 2019 23:28:51 +0530 Subject: [PATCH 3/6] Add updated dist files --- dist/image-sequencer.js | 85 +++++++++++++++++++++++-------------- dist/image-sequencer.min.js | 2 +- 2 files changed, 53 insertions(+), 34 deletions(-) diff --git a/dist/image-sequencer.js b/dist/image-sequencer.js index 6d41af9ae0..ad59bc6074 100644 --- a/dist/image-sequencer.js +++ b/dist/image-sequencer.js @@ -69246,9 +69246,10 @@ module.exports={ "default": "https://github.com/publiclab/image-sequencer" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#add-qr-module" } + },{}],195:[function(require,module,exports){ /* * Average all pixel colors @@ -69333,7 +69334,7 @@ module.exports={ "description": "Average all pixel color", "inputs": { }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#average-module" } },{}],198:[function(require,module,exports){ @@ -69431,7 +69432,7 @@ module.exports={ "default": "function(r1, g1, b1, a1, r2, g2, b2, a2) { return [ r1, g2, b2, a2 ] }" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#blend-module" } },{}],201:[function(require,module,exports){ @@ -69581,7 +69582,7 @@ module.exports={ "step": 0.25 } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#blur-module" } },{}],205:[function(require,module,exports){ @@ -69658,7 +69659,7 @@ module.exports={ "max": "200" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#brightness-module" } },{}],208:[function(require,module,exports){ @@ -69727,7 +69728,7 @@ module.exports={ "values": ["red", "green", "blue"] } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#channel-module" } },{}],211:[function(require,module,exports){ @@ -69780,8 +69781,9 @@ module.exports={ "default": 10 } }, - "docs-link": "https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link": "https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#colorbar-module" } + },{}],214:[function(require,module,exports){ /* * Accepts a value from 0-255 and returns the new color-mapped pixel @@ -70038,7 +70040,7 @@ module.exports={ "values": ["default","greyscale","bluwhtgrngis","stretched","fastie","brntogrn","blutoredjet","colors16"] } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#colormap-module" } },{}],218:[function(require,module,exports){ @@ -70151,7 +70153,7 @@ module.exports={ "max": 100 } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#contrast-module" } },{}],222:[function(require,module,exports){ @@ -70291,7 +70293,7 @@ module.exports={ "placeholder": "1 1 1 1 1 1 1 1 1" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#convolution-module" } },{}],226:[function(require,module,exports){ @@ -70572,7 +70574,7 @@ module.exports={ "placeholder": "255 255 255 255" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#crop-module" } },{}],231:[function(require,module,exports){ @@ -70643,7 +70645,7 @@ module.exports={ "type": "string" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#decodeqr-module" } },{}],234:[function(require,module,exports){ @@ -70776,9 +70778,11 @@ module.exports={ "default": "none", "values": ["none","floydsteinberg","bayer","Atkinson"] } - } + }, + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#dither-module" } + },{}],238:[function(require,module,exports){ module.exports = exports = function(pixels, options){ var defaults = require('./../../util/getDefaults.js')(require('./info.json')); @@ -70900,7 +70904,8 @@ module.exports={ "desc": "RGBA values separated by a space", "default": "0 0 0 255" } - } + }, + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#draw-rectangle-module" } },{}],242:[function(require,module,exports){ @@ -71032,7 +71037,7 @@ module.exports={ "default": "r + g + b" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#dynamic-module" } },{}],245:[function(require,module,exports){ @@ -71303,7 +71308,7 @@ module.exports={ "step": 0.05 } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#edge-detect-module" } },{}],249:[function(require,module,exports){ @@ -71446,7 +71451,7 @@ module.exports={ "default": "(inbuilt)" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#fisheyegl-module" } },{}],252:[function(require,module,exports){ @@ -71547,7 +71552,8 @@ module.exports={ "default": "Vertical", "values": ["Horizontal", "Vertical"] } - } + }, + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#flipimage-module" } },{}],256:[function(require,module,exports){ @@ -71614,7 +71620,7 @@ module.exports={ "max": 1 } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#gamma-correction-module" } },{}],259:[function(require,module,exports){ @@ -71689,8 +71695,9 @@ module.exports={ "name": "Gradient", "description": "Gives a gradient of the image", "inputs": {}, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#gradient-module" } + },{}],262:[function(require,module,exports){ /* * Calculates the histogram of the image @@ -71807,8 +71814,9 @@ module.exports={ ] } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#histogram-module" } + },{}],265:[function(require,module,exports){ /* * Import Image module; this fetches a given remote or local image via URL @@ -71945,8 +71953,9 @@ module.exports={ "default": "./images/monarch.png" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#import-image-module" } + },{}],269:[function(require,module,exports){ /* * NDVI with red filter (blue channel is infrared) @@ -72058,7 +72067,7 @@ module.exports={ "values": ["red", "blue"] } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#ndvi-module" } },{}],273:[function(require,module,exports){ @@ -72083,8 +72092,9 @@ module.exports={ "name": "NDVI-Colormap", "description": "Sequentially Applies NDVI and Colormap steps", "inputs": {}, - "docs-link": "https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link": "https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#ndvi-colormap-module" } + },{}],276:[function(require,module,exports){ module.exports = function Dynamic(options, UI, util) { @@ -72193,8 +72203,9 @@ module.exports={ "default": -2 } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#overlay-module" } + },{}],279:[function(require,module,exports){ module.exports = function PaintBucket(options, UI) { @@ -72336,8 +72347,10 @@ module.exports={ "max": "100", "step": "1" } - } + }, + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#paint-bucket-module" } + },{}],283:[function(require,module,exports){ module.exports = function ReplaceColor(options, UI) { @@ -72461,8 +72474,10 @@ module.exports={ "max": "100", "step": "1" } - } + }, + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#replacecolor-module" } + },{}],287:[function(require,module,exports){ /* * Resize the image by given percentage value @@ -72550,8 +72565,9 @@ module.exports={ "default": "125%" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#resize-module" } + },{}],290:[function(require,module,exports){ /* * Rotates image @@ -72633,7 +72649,7 @@ module.exports={ "step": "1" } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#rotate-modul" } },{}],293:[function(require,module,exports){ @@ -72713,7 +72729,7 @@ module.exports={ "step": 0.1 } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#saturation-module" } },{}],296:[function(require,module,exports){ @@ -72853,7 +72869,8 @@ module.exports={ "max": "255", "step": "1" } - } + }, + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#threshold" } },{}],300:[function(require,module,exports){ @@ -72927,7 +72944,8 @@ module.exports={ "max": "1", "step": "0.01" } - } + }, + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#tint" } },{}],303:[function(require,module,exports){ @@ -73025,8 +73043,9 @@ module.exports={ "default": 6000 } }, - "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md" + "docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#white-balance" } + },{}],306:[function(require,module,exports){ (function (process,Buffer){ /* diff --git a/dist/image-sequencer.min.js b/dist/image-sequencer.min.js index b2efed600c..24ab6fd133 100644 --- a/dist/image-sequencer.min.js +++ b/dist/image-sequencer.min.js @@ -1 +1 @@ -!function(){return function t(e,r,n){function i(a,s){if(!r[a]){if(!e[a]){var l="function"==typeof require&&require;if(!s&&l)return l(a,!0);if(o)return o(a,!0);var u=new Error("Cannot find module '"+a+"'");throw u.code="MODULE_NOT_FOUND",u}var c=r[a]={exports:{}};e[a][0].call(c.exports,function(t){return i(e[a][1][t]||t)},c,c.exports,t,e,r,n)}return r[a].exports}for(var o="function"==typeof require&&require,a=0;a0?n-4:n,f=0;f>16&255,s[l++]=e>>8&255,s[l++]=255&e;2===a&&(e=i[t.charCodeAt(f)]<<2|i[t.charCodeAt(f+1)]>>4,s[l++]=255&e);1===a&&(e=i[t.charCodeAt(f)]<<10|i[t.charCodeAt(f+1)]<<4|i[t.charCodeAt(f+2)]>>2,s[l++]=e>>8&255,s[l++]=255&e);return s},r.fromByteArray=function(t){for(var e,r=t.length,i=r%3,o=[],a=0,s=r-i;as?s:a+16383));1===i?(e=t[r-1],o.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],o.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return o.join("")};for(var n=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,l=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,r){for(var i,o,a=[],s=e;s>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},{}],2:[function(t,e,r){"use strict";"use restrict";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}r.INT_BITS=32,r.INT_MAX=2147483647,r.INT_MIN=-1<<31,r.sign=function(t){return(t>0)-(t<0)},r.abs=function(t){var e=t>>31;return(t^e)-e},r.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},r.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},r.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},r.countTrailingZeros=n,r.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1},r.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},r.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var i=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<>>8&255]<<16|i[t>>>16&255]<<8|i[t>>>24&255]},r.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},r.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},r.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},r.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},r.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},{}],3:[function(t,e,r){(function(t,n,i){!function(t){if("object"==typeof r&&void 0!==e)e.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var i;"undefined"!=typeof window?i=window:void 0!==n?i=n:"undefined"!=typeof self&&(i=self),i.Promise=t()}}(function(){var e,r,o;return function t(e,r,n){function i(a,s){if(!r[a]){if(!e[a]){var l="function"==typeof _dereq_&&_dereq_;if(!s&&l)return l(a,!0);if(o)return o(a,!0);var u=new Error("Cannot find module '"+a+"'");throw u.code="MODULE_NOT_FOUND",u}var c=r[a]={exports:{}};e[a][0].call(c.exports,function(t){var r=e[a][1][t];return i(r||t)},c,c.exports,t,e,r,n)}return r[a].exports}for(var o="function"==typeof _dereq_&&_dereq_,a=0;a0;)p(t)}function p(t){var e=t.shift();if("function"!=typeof e)e._settlePromises();else{var r=t.shift(),n=t.shift();e.call(r,n)}}l.prototype.setScheduler=function(t){var e=this._schedule;return this._schedule=t,this._customScheduler=!0,e},l.prototype.hasCustomScheduler=function(){return this._customScheduler},l.prototype.enableTrampoline=function(){this._trampolineEnabled=!0},l.prototype.disableTrampolineIfNecessary=function(){s.hasDevTools&&(this._trampolineEnabled=!1)},l.prototype.haveItemsQueued=function(){return this._isTickUsed||this._haveDrainedQueues},l.prototype.fatalError=function(e,r){r?(t.stderr.write("Fatal "+(e instanceof Error?e.stack:e)+"\n"),t.exit(2)):this.throwLater(e)},l.prototype.throwLater=function(t,e){if(1===arguments.length&&(e=t,t=function(){throw e}),"undefined"!=typeof setTimeout)setTimeout(function(){t(e)},0);else try{this._schedule(function(){t(e)})}catch(t){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}},s.hasDevTools?(l.prototype.invokeLater=function(t,e,r){this._trampolineEnabled?u.call(this,t,e,r):this._schedule(function(){setTimeout(function(){t.call(e,r)},100)})},l.prototype.invoke=function(t,e,r){this._trampolineEnabled?c.call(this,t,e,r):this._schedule(function(){t.call(e,r)})},l.prototype.settlePromises=function(t){this._trampolineEnabled?f.call(this,t):this._schedule(function(){t._settlePromises()})}):(l.prototype.invokeLater=u,l.prototype.invoke=c,l.prototype.settlePromises=f),l.prototype._drainQueues=function(){h(this._normalQueue),this._reset(),this._haveDrainedQueues=!0,h(this._lateQueue)},l.prototype._queueTick=function(){this._isTickUsed||(this._isTickUsed=!0,this._schedule(this.drainQueues))},l.prototype._reset=function(){this._isTickUsed=!1},r.exports=l,r.exports.firstLineError=i},{"./queue":26,"./schedule":29,"./util":36}],3:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){var i=!1,o=function(t,e){this._reject(e)},a=function(t,e){e.promiseRejectionQueued=!0,e.bindingPromise._then(o,o,null,this,t)},s=function(t,e){0==(50397184&this._bitField)&&this._resolveCallback(e.target)},l=function(t,e){e.promiseRejectionQueued||this._reject(t)};t.prototype.bind=function(o){i||(i=!0,t.prototype._propagateFrom=n.propagateFromFunction(),t.prototype._boundValue=n.boundValueFunction());var u=r(o),c=new t(e);c._propagateFrom(this,1);var f=this._target();if(c._setBoundTo(u),u instanceof t){var h={promiseRejectionQueued:!1,promise:c,target:f,bindingPromise:u};f._then(e,a,void 0,c,h),u._then(s,l,void 0,c,h),c._setOnCancel(u)}else c._resolveCallback(f);return c},t.prototype._setBoundTo=function(t){void 0!==t?(this._bitField=2097152|this._bitField,this._boundTo=t):this._bitField=-2097153&this._bitField},t.prototype._isBound=function(){return 2097152==(2097152&this._bitField)},t.bind=function(e,r){return t.resolve(r).bind(e)}}},{}],4:[function(t,e,r){"use strict";var n;"undefined"!=typeof Promise&&(n=Promise);var i=t("./promise")();i.noConflict=function(){try{Promise===i&&(Promise=n)}catch(t){}return i},e.exports=i},{"./promise":22}],5:[function(t,e,r){"use strict";var n=Object.create;if(n){var i=n(null),o=n(null);i[" size"]=o[" size"]=0}e.exports=function(e){var r,n=t("./util"),i=n.canEvaluate;n.isIdentifier;function o(t,r){var i;if(null!=t&&(i=t[r]),"function"!=typeof i){var o="Object "+n.classString(t)+" has no method '"+n.toString(r)+"'";throw new e.TypeError(o)}return i}function a(t){return o(t,this.pop()).apply(t,this)}function s(t){return t[this]}function l(t){var e=+this;return e<0&&(e=Math.max(0,e+t.length)),t[e]}e.prototype.call=function(t){var e=[].slice.call(arguments,1);return e.push(t),this._then(a,void 0,void 0,e,void 0)},e.prototype.get=function(t){var e;if("number"==typeof t)e=l;else if(i){var n=r(t);e=null!==n?n:s}else e=s;return this._then(e,void 0,void 0,t,void 0)}}},{"./util":36}],6:[function(t,e,r){"use strict";e.exports=function(e,r,n,i){var o=t("./util"),a=o.tryCatch,s=o.errorObj,l=e._async;e.prototype.break=e.prototype.cancel=function(){if(!i.cancellation())return this._warn("cancellation is disabled");for(var t=this,e=t;t._isCancellable();){if(!t._cancelBy(e)){e._isFollowing()?e._followee().cancel():e._cancelBranched();break}var r=t._cancellationParent;if(null==r||!r._isCancellable()){t._isFollowing()?t._followee().cancel():t._cancelBranched();break}t._isFollowing()&&t._followee().cancel(),t._setWillBeCancelled(),e=t,t=r}},e.prototype._branchHasCancelled=function(){this._branchesRemainingToCancel--},e.prototype._enoughBranchesHaveCancelled=function(){return void 0===this._branchesRemainingToCancel||this._branchesRemainingToCancel<=0},e.prototype._cancelBy=function(t){return t===this?(this._branchesRemainingToCancel=0,this._invokeOnCancel(),!0):(this._branchHasCancelled(),!!this._enoughBranchesHaveCancelled()&&(this._invokeOnCancel(),!0))},e.prototype._cancelBranched=function(){this._enoughBranchesHaveCancelled()&&this._cancel()},e.prototype._cancel=function(){this._isCancellable()&&(this._setCancelled(),l.invoke(this._cancelPromises,this,void 0))},e.prototype._cancelPromises=function(){this._length()>0&&this._settlePromises()},e.prototype._unsetOnCancel=function(){this._onCancelField=void 0},e.prototype._isCancellable=function(){return this.isPending()&&!this._isCancelled()},e.prototype.isCancellable=function(){return this.isPending()&&!this.isCancelled()},e.prototype._doInvokeOnCancel=function(t,e){if(o.isArray(t))for(var r=0;r=0)return r[t]}return t.prototype._promiseCreated=function(){},t.prototype._pushContext=function(){},t.prototype._popContext=function(){return null},t._peekContext=t.prototype._peekContext=function(){},n.prototype._pushContext=function(){void 0!==this._trace&&(this._trace._promiseCreated=null,r.push(this._trace))},n.prototype._popContext=function(){if(void 0!==this._trace){var t=r.pop(),e=t._promiseCreated;return t._promiseCreated=null,e}return null},n.CapturedTrace=null,n.create=function(){if(e)return new n},n.deactivateLongStackTraces=function(){},n.activateLongStackTraces=function(){var r=t.prototype._pushContext,o=t.prototype._popContext,a=t._peekContext,s=t.prototype._peekContext,l=t.prototype._promiseCreated;n.deactivateLongStackTraces=function(){t.prototype._pushContext=r,t.prototype._popContext=o,t._peekContext=a,t.prototype._peekContext=s,t.prototype._promiseCreated=l,e=!1},e=!0,t.prototype._pushContext=n.prototype._pushContext,t.prototype._popContext=n.prototype._popContext,t._peekContext=t.prototype._peekContext=i,t.prototype._promiseCreated=function(){var t=this._peekContext();t&&null==t._promiseCreated&&(t._promiseCreated=this)}},n}},{}],9:[function(e,r,n){"use strict";r.exports=function(r,n){var i,o,a,s=r._getDomain,l=r._async,u=e("./errors").Warning,c=e("./util"),f=e("./es5"),h=c.canAttachTrace,p=/[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/,d=/\((?:timers\.js):\d+:\d+\)/,g=/[\/<\(](.+?):(\d+):(\d+)\)?\s*$/,m=null,v=null,_=!1,y=!(0==c.env("BLUEBIRD_DEBUG")),b=!(0==c.env("BLUEBIRD_WARNINGS")||!y&&!c.env("BLUEBIRD_WARNINGS")),w=!(0==c.env("BLUEBIRD_LONG_STACK_TRACES")||!y&&!c.env("BLUEBIRD_LONG_STACK_TRACES")),k=0!=c.env("BLUEBIRD_W_FORGOTTEN_RETURN")&&(b||!!c.env("BLUEBIRD_W_FORGOTTEN_RETURN"));r.prototype.suppressUnhandledRejections=function(){var t=this._target();t._bitField=-1048577&t._bitField|524288},r.prototype._ensurePossibleRejectionHandled=function(){if(0==(524288&this._bitField)){this._setRejectionIsUnhandled();var t=this;setTimeout(function(){t._notifyUnhandledRejection()},1)}},r.prototype._notifyUnhandledRejectionIsHandled=function(){G("rejectionHandled",i,void 0,this)},r.prototype._setReturnedNonUndefined=function(){this._bitField=268435456|this._bitField},r.prototype._returnedNonUndefined=function(){return 0!=(268435456&this._bitField)},r.prototype._notifyUnhandledRejection=function(){if(this._isRejectionUnhandled()){var t=this._settledValue();this._setUnhandledRejectionIsNotified(),G("unhandledRejection",o,t,this)}},r.prototype._setUnhandledRejectionIsNotified=function(){this._bitField=262144|this._bitField},r.prototype._unsetUnhandledRejectionIsNotified=function(){this._bitField=-262145&this._bitField},r.prototype._isUnhandledRejectionNotified=function(){return(262144&this._bitField)>0},r.prototype._setRejectionIsUnhandled=function(){this._bitField=1048576|this._bitField},r.prototype._unsetRejectionIsUnhandled=function(){this._bitField=-1048577&this._bitField,this._isUnhandledRejectionNotified()&&(this._unsetUnhandledRejectionIsNotified(),this._notifyUnhandledRejectionIsHandled())},r.prototype._isRejectionUnhandled=function(){return(1048576&this._bitField)>0},r.prototype._warn=function(t,e,r){return z(t,e,r||this)},r.onPossiblyUnhandledRejection=function(t){var e=s();o="function"==typeof t?null===e?t:c.domainBind(e,t):void 0},r.onUnhandledRejectionHandled=function(t){var e=s();i="function"==typeof t?null===e?t:c.domainBind(e,t):void 0};var x=function(){};r.longStackTraces=function(){if(l.haveItemsQueued()&&!Q.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");if(!Q.longStackTraces&&Z()){var t=r.prototype._captureStackTrace,e=r.prototype._attachExtraTrace,i=r.prototype._dereferenceTrace;Q.longStackTraces=!0,x=function(){if(l.haveItemsQueued()&&!Q.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");r.prototype._captureStackTrace=t,r.prototype._attachExtraTrace=e,r.prototype._dereferenceTrace=i,n.deactivateLongStackTraces(),l.enableTrampoline(),Q.longStackTraces=!1},r.prototype._captureStackTrace=D,r.prototype._attachExtraTrace=N,r.prototype._dereferenceTrace=U,n.activateLongStackTraces(),l.disableTrampolineIfNecessary()}},r.hasLongStackTraces=function(){return Q.longStackTraces&&Z()};var B=function(){try{if("function"==typeof CustomEvent){var t=new CustomEvent("CustomEvent");return c.global.dispatchEvent(t),function(t,e){var r={detail:e,cancelable:!0};f.defineProperty(r,"promise",{value:e.promise}),f.defineProperty(r,"reason",{value:e.reason});var n=new CustomEvent(t.toLowerCase(),r);return!c.global.dispatchEvent(n)}}if("function"==typeof Event){t=new Event("CustomEvent");return c.global.dispatchEvent(t),function(t,e){var r=new Event(t.toLowerCase(),{cancelable:!0});return r.detail=e,f.defineProperty(r,"promise",{value:e.promise}),f.defineProperty(r,"reason",{value:e.reason}),!c.global.dispatchEvent(r)}}return(t=document.createEvent("CustomEvent")).initCustomEvent("testingtheevent",!1,!0,{}),c.global.dispatchEvent(t),function(t,e){var r=document.createEvent("CustomEvent");return r.initCustomEvent(t.toLowerCase(),!1,!0,e),!c.global.dispatchEvent(r)}}catch(t){}return function(){return!1}}(),C=c.isNode?function(){return t.emit.apply(t,arguments)}:c.global?function(t){var e="on"+t.toLowerCase(),r=c.global[e];return!!r&&(r.apply(c.global,[].slice.call(arguments,1)),!0)}:function(){return!1};function E(t,e){return{promise:e}}var P={promiseCreated:E,promiseFulfilled:E,promiseRejected:E,promiseResolved:E,promiseCancelled:E,promiseChained:function(t,e,r){return{promise:e,child:r}},warning:function(t,e){return{warning:e}},unhandledRejection:function(t,e,r){return{reason:e,promise:r}},rejectionHandled:E},j=function(t){var e=!1;try{e=C.apply(null,arguments)}catch(t){l.throwLater(t),e=!0}var r=!1;try{r=B(t,P[t].apply(null,arguments))}catch(t){l.throwLater(t),r=!0}return r||e};function S(){return!1}function T(t,e,r){var n=this;try{t(e,r,function(t){if("function"!=typeof t)throw new TypeError("onCancel must be a function, got: "+c.toString(t));n._attachCancellationCallback(t)})}catch(t){return t}}function M(t){if(!this._isCancellable())return this;var e=this._onCancel();void 0!==e?c.isArray(e)?e.push(t):this._setOnCancel([e,t]):this._setOnCancel(t)}function A(){return this._onCancelField}function I(t){this._onCancelField=t}function R(){this._cancellationParent=void 0,this._onCancelField=void 0}function L(t,e){if(0!=(1&e)){this._cancellationParent=t;var r=t._branchesRemainingToCancel;void 0===r&&(r=0),t._branchesRemainingToCancel=r+1}0!=(2&e)&&t._isBound()&&this._setBoundTo(t._boundTo)}r.config=function(t){if("longStackTraces"in(t=Object(t))&&(t.longStackTraces?r.longStackTraces():!t.longStackTraces&&r.hasLongStackTraces()&&x()),"warnings"in t){var e=t.warnings;Q.warnings=!!e,k=Q.warnings,c.isObject(e)&&"wForgottenReturn"in e&&(k=!!e.wForgottenReturn)}if("cancellation"in t&&t.cancellation&&!Q.cancellation){if(l.haveItemsQueued())throw new Error("cannot enable cancellation after promises are in use");r.prototype._clearCancellationData=R,r.prototype._propagateFrom=L,r.prototype._onCancel=A,r.prototype._setOnCancel=I,r.prototype._attachCancellationCallback=M,r.prototype._execute=T,F=L,Q.cancellation=!0}return"monitoring"in t&&(t.monitoring&&!Q.monitoring?(Q.monitoring=!0,r.prototype._fireEvent=j):!t.monitoring&&Q.monitoring&&(Q.monitoring=!1,r.prototype._fireEvent=S)),r},r.prototype._fireEvent=S,r.prototype._execute=function(t,e,r){try{t(e,r)}catch(t){return t}},r.prototype._onCancel=function(){},r.prototype._setOnCancel=function(t){},r.prototype._attachCancellationCallback=function(t){},r.prototype._captureStackTrace=function(){},r.prototype._attachExtraTrace=function(){},r.prototype._dereferenceTrace=function(){},r.prototype._clearCancellationData=function(){},r.prototype._propagateFrom=function(t,e){};var F=function(t,e){0!=(2&e)&&t._isBound()&&this._setBoundTo(t._boundTo)};function O(){var t=this._boundTo;return void 0!==t&&t instanceof r?t.isFulfilled()?t.value():void 0:t}function D(){this._trace=new J(this._peekContext())}function N(t,e){if(h(t)){var r=this._trace;if(void 0!==r&&e&&(r=r._parent),void 0!==r)r.attachExtraTrace(t);else if(!t.__stackCleaned__){var n=V(t);c.notEnumerableProp(t,"stack",n.message+"\n"+n.stack.join("\n")),c.notEnumerableProp(t,"__stackCleaned__",!0)}}}function U(){this._trace=void 0}function z(t,e,n){if(Q.warnings){var i,o=new u(t);if(e)n._attachExtraTrace(o);else if(Q.longStackTraces&&(i=r._peekContext()))i.attachExtraTrace(o);else{var a=V(o);o.stack=a.message+"\n"+a.stack.join("\n")}j("warning",o)||H(o,"",!0)}}function q(t){for(var e=[],r=0;r0?function(t){for(var e=t.stack.replace(/\s+$/g,"").split("\n"),r=0;r0&&"SyntaxError"!=t.name&&(e=e.slice(r)),e}(t):[" (No stack trace)"],{message:r,stack:"SyntaxError"==t.name?e:q(e)}}function H(t,e,r){if("undefined"!=typeof console){var n;if(c.isObject(t)){var i=t.stack;n=e+v(i,t)}else n=e+String(t);"function"==typeof a?a(n,r):"function"!=typeof console.log&&"object"!=typeof console.log||console.log(n)}}function G(t,e,r,n){var i=!1;try{"function"==typeof e&&(i=!0,"rejectionHandled"===t?e(n):e(r,n))}catch(t){l.throwLater(t)}"unhandledRejection"===t?j(t,r,n)||i||H(r,"Unhandled rejection "):j(t,n)}function W(t){var e;if("function"==typeof t)e="[function "+(t.name||"anonymous")+"]";else{e=t&&"function"==typeof t.toString?t.toString():c.toString(t);if(/\[object [a-zA-Z0-9$_]+\]/.test(e))try{e=JSON.stringify(t)}catch(t){}0===e.length&&(e="(empty array)")}return"(<"+function(t){if(t.length<41)return t;return t.substr(0,38)+"..."}(e)+">, no stack trace)"}function Z(){return"function"==typeof K}var Y=function(){return!1},X=/[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/;function $(t){var e=t.match(X);if(e)return{fileName:e[1],line:parseInt(e[2],10)}}function J(t){this._parent=t,this._promisesCreated=0;var e=this._length=1+(void 0===t?0:t._length);K(this,J),e>32&&this.uncycle()}c.inherits(J,Error),n.CapturedTrace=J,J.prototype.uncycle=function(){var t=this._length;if(!(t<2)){for(var e=[],r={},n=0,i=this;void 0!==i;++n)e.push(i),i=i._parent;for(n=(t=this._length=n)-1;n>=0;--n){var o=e[n].stack;void 0===r[o]&&(r[o]=n)}for(n=0;n0&&(e[a-1]._parent=void 0,e[a-1]._length=1),e[n]._parent=void 0,e[n]._length=1;var s=n>0?e[n-1]:this;a=0;--u)e[u]._length=l,l++;return}}}},J.prototype.attachExtraTrace=function(t){if(!t.__stackCleaned__){this.uncycle();for(var e=V(t),r=e.message,n=[e.stack],i=this;void 0!==i;)n.push(q(i.stack.split("\n"))),i=i._parent;!function(t){for(var e=t[0],r=1;r=0;--s)if(n[s]===o){a=s;break}for(s=a;s>=0;--s){var l=n[s];if(e[i]!==l)break;e.pop(),i--}e=n}}(n),function(t){for(var e=0;e=0)return m=/@/,v=e,_=!0,function(t){t.stack=(new Error).stack};try{throw new Error}catch(t){n="stack"in t}return"stack"in i||!n||"number"!=typeof Error.stackTraceLimit?(v=function(t,e){return"string"==typeof t?t:"object"!=typeof e&&"function"!=typeof e||void 0===e.name||void 0===e.message?W(e):e.toString()},null):(m=t,v=e,function(t){Error.stackTraceLimit+=6;try{throw new Error}catch(e){t.stack=e.stack}Error.stackTraceLimit-=6})}();"undefined"!=typeof console&&void 0!==console.warn&&(a=function(t){console.warn(t)},c.isNode&&t.stderr.isTTY?a=function(t,e){var r=e?"":"";console.warn(r+t+"\n")}:c.isNode||"string"!=typeof(new Error).stack||(a=function(t,e){console.warn("%c"+t,e?"color: darkorange":"color: red")}));var Q={warnings:b,longStackTraces:!1,cancellation:!1,monitoring:!1};return w&&r.longStackTraces(),{longStackTraces:function(){return Q.longStackTraces},warnings:function(){return Q.warnings},cancellation:function(){return Q.cancellation},monitoring:function(){return Q.monitoring},propagateFromFunction:function(){return F},boundValueFunction:function(){return O},checkForgottenReturns:function(t,e,r,n,i){if(void 0===t&&null!==e&&k){if(void 0!==i&&i._returnedNonUndefined())return;if(0==(65535&n._bitField))return;r&&(r+=" ");var o="",a="";if(e._trace){for(var s=e._trace.stack.split("\n"),l=q(s),u=l.length-1;u>=0;--u){var c=l[u];if(!d.test(c)){var f=c.match(g);f&&(o="at "+f[1]+":"+f[2]+":"+f[3]+" ");break}}if(l.length>0){var h=l[0];for(u=0;u0&&(a="\n"+s[u-1]);break}}}var p="a promise was created in a "+r+"handler "+o+"but was not returned from it, see http://goo.gl/rRqMUw"+a;n._warn(p,!0,e)}},setBounds:function(t,e){if(Z()){for(var r,n,i=t.stack.split("\n"),o=e.stack.split("\n"),a=-1,s=-1,l=0;l=s||(Y=function(t){if(p.test(t))return!0;var e=$(t);return!!(e&&e.fileName===r&&a<=e.line&&e.line<=s)})}},warn:z,deprecated:function(t,e){var r=t+" is deprecated and will be removed in a future version.";return e&&(r+=" Use "+e+" instead."),z(r)},CapturedTrace:J,fireDomEvent:B,fireGlobalEvent:C}}},{"./errors":12,"./es5":13,"./util":36}],10:[function(t,e,r){"use strict";e.exports=function(t){function e(){return this.value}function r(){throw this.reason}t.prototype.return=t.prototype.thenReturn=function(r){return r instanceof t&&r.suppressUnhandledRejections(),this._then(e,void 0,void 0,{value:r},void 0)},t.prototype.throw=t.prototype.thenThrow=function(t){return this._then(r,void 0,void 0,{reason:t},void 0)},t.prototype.catchThrow=function(t){if(arguments.length<=1)return this._then(void 0,r,void 0,{reason:t},void 0);var e=arguments[1];return this.caught(t,function(){throw e})},t.prototype.catchReturn=function(r){if(arguments.length<=1)return r instanceof t&&r.suppressUnhandledRejections(),this._then(void 0,e,void 0,{value:r},void 0);var n=arguments[1];n instanceof t&&n.suppressUnhandledRejections();return this.caught(r,function(){return n})}}},{}],11:[function(t,e,r){"use strict";e.exports=function(t,e){var r=t.reduce,n=t.all;function i(){return n(this)}t.prototype.each=function(t){return r(this,t,e,0)._then(i,void 0,void 0,this,void 0)},t.prototype.mapSeries=function(t){return r(this,t,e,e)},t.each=function(t,n){return r(t,n,e,0)._then(i,void 0,void 0,t,void 0)},t.mapSeries=function(t,n){return r(t,n,e,e)}}},{}],12:[function(t,e,r){"use strict";var n,i,o=t("./es5"),a=o.freeze,s=t("./util"),l=s.inherits,u=s.notEnumerableProp;function c(t,e){function r(n){if(!(this instanceof r))return new r(n);u(this,"message","string"==typeof n?n:e),u(this,"name",t),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):Error.call(this)}return l(r,Error),r}var f=c("Warning","warning"),h=c("CancellationError","cancellation error"),p=c("TimeoutError","timeout error"),d=c("AggregateError","aggregate error");try{n=TypeError,i=RangeError}catch(t){n=c("TypeError","type error"),i=c("RangeError","range error")}for(var g="join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "),m=0;m1?t.cancelPromise._reject(e):t.cancelPromise._cancel(),t.cancelPromise=null,!0)}function f(){return p.call(this,this.promise._target()._settledValue())}function h(t){if(!c(this,t))return a.e=t,a}function p(t){var i=this.promise,s=this.handler;if(!this.called){this.called=!0;var l=this.isFinallyHandler()?s.call(i._boundValue()):s.call(i._boundValue(),t);if(l===n)return l;if(void 0!==l){i._setReturnedNonUndefined();var p=r(l,i);if(p instanceof e){if(null!=this.cancelPromise){if(p._isCancelled()){var d=new o("late cancellation observer");return i._attachExtraTrace(d),a.e=d,a}p.isPending()&&p._attachCancellationCallback(new u(this))}return p._then(f,h,void 0,this,void 0)}}}return i.isRejected()?(c(this),a.e=t,a):(c(this),t)}return l.prototype.isFinallyHandler=function(){return 0===this.type},u.prototype._resultCancelled=function(){c(this.finallyHandler)},e.prototype._passThrough=function(t,e,r,n){return"function"!=typeof t?this.then():this._then(r,n,void 0,new l(this,e,t),void 0)},e.prototype.lastly=e.prototype.finally=function(t){return this._passThrough(t,0,p,p)},e.prototype.tap=function(t){return this._passThrough(t,1,p)},e.prototype.tapCatch=function(t){var r=arguments.length;if(1===r)return this._passThrough(t,1,void 0,p);var n,o=new Array(r-1),a=0;for(n=0;n0&&"function"==typeof arguments[e]&&(t=arguments[e]);var n=[].slice.call(arguments);t&&n.pop();var i=new r(n).promise();return void 0!==t?i.spread(t):i}}},{"./util":36}],18:[function(t,e,r){"use strict";e.exports=function(e,r,n,i,o,a){var s=e._getDomain,l=t("./util"),u=l.tryCatch,c=l.errorObj,f=e._async;function h(t,e,r,n){this.constructor$(t),this._promise._captureStackTrace();var i=s();this._callback=null===i?e:l.domainBind(i,e),this._preservedValues=n===o?new Array(this.length()):null,this._limit=r,this._inFlight=0,this._queue=[],f.invoke(this._asyncInit,this,void 0)}function p(t,r,i,o){if("function"!=typeof r)return n("expecting a function but got "+l.classString(r));var a=0;if(void 0!==i){if("object"!=typeof i||null===i)return e.reject(new TypeError("options argument must be an object but it is "+l.classString(i)));if("number"!=typeof i.concurrency)return e.reject(new TypeError("'concurrency' must be a number but it is "+l.classString(i.concurrency)));a=i.concurrency}return new h(t,r,a="number"==typeof a&&isFinite(a)&&a>=1?a:0,o).promise()}l.inherits(h,r),h.prototype._asyncInit=function(){this._init$(void 0,-2)},h.prototype._init=function(){},h.prototype._promiseFulfilled=function(t,r){var n=this._values,o=this.length(),s=this._preservedValues,l=this._limit;if(r<0){if(n[r=-1*r-1]=t,l>=1&&(this._inFlight--,this._drainQueue(),this._isResolved()))return!0}else{if(l>=1&&this._inFlight>=l)return n[r]=t,this._queue.push(r),!1;null!==s&&(s[r]=t);var f=this._promise,h=this._callback,p=f._boundValue();f._pushContext();var d=u(h).call(p,t,r,o),g=f._popContext();if(a.checkForgottenReturns(d,g,null!==s?"Promise.filter":"Promise.map",f),d===c)return this._reject(d.e),!0;var m=i(d,this._promise);if(m instanceof e){var v=(m=m._target())._bitField;if(0==(50397184&v))return l>=1&&this._inFlight++,n[r]=m,m._proxy(this,-1*(r+1)),!1;if(0==(33554432&v))return 0!=(16777216&v)?(this._reject(m._reason()),!0):(this._cancel(),!0);d=m._value()}n[r]=d}return++this._totalResolved>=o&&(null!==s?this._filter(n,s):this._resolve(n),!0)},h.prototype._drainQueue=function(){for(var t=this._queue,e=this._limit,r=this._values;t.length>0&&this._inFlight1){o.deprecated("calling Promise.try with more than 1 argument");var u=arguments[1],c=arguments[2];n=a.isArray(u)?s(t).apply(c,u):s(t).call(c,u)}else n=s(t)();var f=l._popContext();return o.checkForgottenReturns(n,f,"Promise.try",l),l._resolveFromSyncValue(n),l},e.prototype._resolveFromSyncValue=function(t){t===a.errorObj?this._rejectCallback(t.e,!1):this._resolveCallback(t,!0)}}},{"./util":36}],20:[function(t,e,r){"use strict";var n=t("./util"),i=n.maybeWrapAsError,o=t("./errors").OperationalError,a=t("./es5");var s=/^(?:name|message|stack|cause)$/;function l(t){var e;if(function(t){return t instanceof Error&&a.getPrototypeOf(t)===Error.prototype}(t)){(e=new o(t)).name=t.name,e.message=t.message,e.stack=t.stack;for(var r=a.keys(t),i=0;i1){var r,n=new Array(e-1),i=0;for(r=0;r0&&"function"!=typeof t&&"function"!=typeof e){var r=".then() only accepts functions but was passed: "+u.classString(t);arguments.length>1&&(r+=", "+u.classString(e)),this._warn(r)}return this._then(t,e,void 0,void 0,void 0)},S.prototype.done=function(t,e){this._then(t,e,void 0,void 0,void 0)._setIsFinal()},S.prototype.spread=function(t){return"function"!=typeof t?o("expecting a function but got "+u.classString(t)):this.all()._then(t,void 0,void 0,v,void 0)},S.prototype.toJSON=function(){var t={isFulfilled:!1,isRejected:!1,fulfillmentValue:void 0,rejectionReason:void 0};return this.isFulfilled()?(t.fulfillmentValue=this.value(),t.isFulfilled=!0):this.isRejected()&&(t.rejectionReason=this.reason(),t.isRejected=!0),t},S.prototype.all=function(){return arguments.length>0&&this._warn(".all() was passed arguments but it does not take any"),new b(this).promise()},S.prototype.error=function(t){return this.caught(u.originatesFromRejection,t)},S.getNewLibraryCopy=r.exports,S.is=function(t){return t instanceof S},S.fromNode=S.fromCallback=function(t){var e=new S(m);e._captureStackTrace();var r=arguments.length>1&&!!Object(arguments[1]).multiArgs,n=j(t)(E(e,r));return n===P&&e._rejectCallback(n.e,!0),e._isFateSealed()||e._setAsyncGuaranteed(),e},S.all=function(t){return new b(t).promise()},S.cast=function(t){var e=y(t);return e instanceof S||((e=new S(m))._captureStackTrace(),e._setFulfilled(),e._rejectionHandler0=t),e},S.resolve=S.fulfilled=S.cast,S.reject=S.rejected=function(t){var e=new S(m);return e._captureStackTrace(),e._rejectCallback(t,!0),e},S.setScheduler=function(t){if("function"!=typeof t)throw new d("expecting a function but got "+u.classString(t));return h.setScheduler(t)},S.prototype._then=function(t,e,r,n,i){var o=void 0!==i,a=o?i:new S(m),l=this._target(),c=l._bitField;o||(a._propagateFrom(this,3),a._captureStackTrace(),void 0===n&&0!=(2097152&this._bitField)&&(n=0!=(50397184&c)?this._boundValue():l===this?void 0:this._boundTo),this._fireEvent("promiseChained",this,a));var f=s();if(0!=(50397184&c)){var p,d,v=l._settlePromiseCtx;0!=(33554432&c)?(d=l._rejectionHandler0,p=t):0!=(16777216&c)?(d=l._fulfillmentHandler0,p=e,l._unsetRejectionIsUnhandled()):(v=l._settlePromiseLateCancellationObserver,d=new g("late cancellation observer"),l._attachExtraTrace(d),p=e),h.invoke(v,l,{handler:null===f?p:"function"==typeof p&&u.domainBind(f,p),promise:a,receiver:n,value:d})}else l._addCallbacks(t,e,a,n,f);return a},S.prototype._length=function(){return 65535&this._bitField},S.prototype._isFateSealed=function(){return 0!=(117506048&this._bitField)},S.prototype._isFollowing=function(){return 67108864==(67108864&this._bitField)},S.prototype._setLength=function(t){this._bitField=-65536&this._bitField|65535&t},S.prototype._setFulfilled=function(){this._bitField=33554432|this._bitField,this._fireEvent("promiseFulfilled",this)},S.prototype._setRejected=function(){this._bitField=16777216|this._bitField,this._fireEvent("promiseRejected",this)},S.prototype._setFollowing=function(){this._bitField=67108864|this._bitField,this._fireEvent("promiseResolved",this)},S.prototype._setIsFinal=function(){this._bitField=4194304|this._bitField},S.prototype._isFinal=function(){return(4194304&this._bitField)>0},S.prototype._unsetCancelled=function(){this._bitField=-65537&this._bitField},S.prototype._setCancelled=function(){this._bitField=65536|this._bitField,this._fireEvent("promiseCancelled",this)},S.prototype._setWillBeCancelled=function(){this._bitField=8388608|this._bitField},S.prototype._setAsyncGuaranteed=function(){h.hasCustomScheduler()||(this._bitField=134217728|this._bitField)},S.prototype._receiverAt=function(t){var e=0===t?this._receiver0:this[4*t-4+3];if(e!==l)return void 0===e&&this._isBound()?this._boundValue():e},S.prototype._promiseAt=function(t){return this[4*t-4+2]},S.prototype._fulfillmentHandlerAt=function(t){return this[4*t-4+0]},S.prototype._rejectionHandlerAt=function(t){return this[4*t-4+1]},S.prototype._boundValue=function(){},S.prototype._migrateCallback0=function(t){t._bitField;var e=t._fulfillmentHandler0,r=t._rejectionHandler0,n=t._promise0,i=t._receiverAt(0);void 0===i&&(i=l),this._addCallbacks(e,r,n,i,null)},S.prototype._migrateCallbackAt=function(t,e){var r=t._fulfillmentHandlerAt(e),n=t._rejectionHandlerAt(e),i=t._promiseAt(e),o=t._receiverAt(e);void 0===o&&(o=l),this._addCallbacks(r,n,i,o,null)},S.prototype._addCallbacks=function(t,e,r,n,i){var o=this._length();if(o>=65531&&(o=0,this._setLength(0)),0===o)this._promise0=r,this._receiver0=n,"function"==typeof t&&(this._fulfillmentHandler0=null===i?t:u.domainBind(i,t)),"function"==typeof e&&(this._rejectionHandler0=null===i?e:u.domainBind(i,e));else{var a=4*o-4;this[a+2]=r,this[a+3]=n,"function"==typeof t&&(this[a+0]=null===i?t:u.domainBind(i,t)),"function"==typeof e&&(this[a+1]=null===i?e:u.domainBind(i,e))}return this._setLength(o+1),o},S.prototype._proxy=function(t,e){this._addCallbacks(void 0,void 0,e,t,null)},S.prototype._resolveCallback=function(t,e){if(0==(117506048&this._bitField)){if(t===this)return this._rejectCallback(n(),!1);var r=y(t,this);if(!(r instanceof S))return this._fulfill(t);e&&this._propagateFrom(r,2);var i=r._target();if(i!==this){var o=i._bitField;if(0==(50397184&o)){var a=this._length();a>0&&i._migrateCallback0(this);for(var s=1;s>>16)){if(t===this){var r=n();return this._attachExtraTrace(r),this._reject(r)}this._setFulfilled(),this._rejectionHandler0=t,(65535&e)>0&&(0!=(134217728&e)?this._settlePromises():h.settlePromises(this),this._dereferenceTrace())}},S.prototype._reject=function(t){var e=this._bitField;if(!((117506048&e)>>>16)){if(this._setRejected(),this._fulfillmentHandler0=t,this._isFinal())return h.fatalError(t,u.isNode);(65535&e)>0?h.settlePromises(this):this._ensurePossibleRejectionHandled()}},S.prototype._fulfillPromises=function(t,e){for(var r=1;r0){if(0!=(16842752&t)){var r=this._fulfillmentHandler0;this._settlePromise0(this._rejectionHandler0,r,t),this._rejectPromises(e,r)}else{var n=this._rejectionHandler0;this._settlePromise0(this._fulfillmentHandler0,n,t),this._fulfillPromises(e,n)}this._setLength(0)}this._clearCancellationData()},S.prototype._settledValue=function(){var t=this._bitField;return 0!=(33554432&t)?this._rejectionHandler0:0!=(16777216&t)?this._fulfillmentHandler0:void 0},S.defer=S.pending=function(){return x.deprecated("Promise.defer","new Promise"),{promise:new S(m),resolve:T,reject:M}},u.notEnumerableProp(S,"_makeSelfResolutionError",n),e("./method")(S,m,y,o,x),e("./bind")(S,m,y,x),e("./cancel")(S,b,o,x),e("./direct_resolve")(S),e("./synchronous_inspection")(S),e("./join")(S,b,y,m,h,s),S.Promise=S,S.version="3.5.3",e("./map.js")(S,b,o,y,m,x),e("./call_get.js")(S),e("./using.js")(S,o,y,k,m,x),e("./timers.js")(S,m,x),e("./generators.js")(S,o,m,y,a,x),e("./nodeify.js")(S),e("./promisify.js")(S,m),e("./props.js")(S,b,y,o),e("./race.js")(S,m,y,o),e("./reduce.js")(S,b,o,y,m,x),e("./settle.js")(S,b,x),e("./some.js")(S,b,o),e("./filter.js")(S,m),e("./each.js")(S,m),e("./any.js")(S),u.toFastProperties(S),u.toFastProperties(S.prototype),A({a:1}),A({b:2}),A({c:3}),A(1),A(function(){}),A(void 0),A(!1),A(new S(m)),x.setBounds(f.firstLineError,u.lastLineError),S}},{"./any.js":1,"./async":2,"./bind":3,"./call_get.js":5,"./cancel":6,"./catch_filter":7,"./context":8,"./debuggability":9,"./direct_resolve":10,"./each.js":11,"./errors":12,"./es5":13,"./filter.js":14,"./finally":15,"./generators.js":16,"./join":17,"./map.js":18,"./method":19,"./nodeback":20,"./nodeify.js":21,"./promise_array":23,"./promisify.js":24,"./props.js":25,"./race.js":27,"./reduce.js":28,"./settle.js":30,"./some.js":31,"./synchronous_inspection":32,"./thenables":33,"./timers.js":34,"./using.js":35,"./util":36}],23:[function(t,e,r){"use strict";e.exports=function(e,r,n,i,o){var a=t("./util");a.isArray;function s(t){var n=this._promise=new e(r);t instanceof e&&n._propagateFrom(t,3),n._setOnCancel(this),this._values=t,this._length=0,this._totalResolved=0,this._init(void 0,-2)}return a.inherits(s,o),s.prototype.length=function(){return this._length},s.prototype.promise=function(){return this._promise},s.prototype._init=function t(r,o){var s=n(this._values,this._promise);if(s instanceof e){var l=(s=s._target())._bitField;if(this._values=s,0==(50397184&l))return this._promise._setAsyncGuaranteed(),s._then(t,this._reject,void 0,this,o);if(0==(33554432&l))return 0!=(16777216&l)?this._reject(s._reason()):this._cancel();s=s._value()}if(null!==(s=a.asArray(s)))0!==s.length?this._iterate(s):-5===o?this._resolveEmptyArray():this._resolve(function(t){switch(t){case-2:return[];case-3:return{};case-6:return new Map}}(o));else{var u=i("expecting an array or an iterable object but got "+a.classString(s)).reason();this._promise._rejectCallback(u,!1)}},s.prototype._iterate=function(t){var r=this.getActualLength(t.length);this._length=r,this._values=this.shouldCopyValues()?new Array(r):this._values;for(var i=this._promise,o=!1,a=null,s=0;s=this._length&&(this._resolve(this._values),!0)},s.prototype._promiseCancelled=function(){return this._cancel(),!0},s.prototype._promiseRejected=function(t){return this._totalResolved++,this._reject(t),!0},s.prototype._resultCancelled=function(){if(!this._isResolved()){var t=this._values;if(this._cancel(),t instanceof e)t.cancel();else for(var r=0;r=this._length){var r;if(this._isMap)r=function(t){for(var e=new o,r=t.length/2|0,n=0;n>1},e.prototype.props=function(){return f(this)},e.props=function(t){return f(t)}}},{"./es5":13,"./util":36}],26:[function(t,e,r){"use strict";function n(t){this._capacity=t,this._length=0,this._front=0}n.prototype._willBeOverCapacity=function(t){return this._capacity=this._length&&(this._resolve(this._values),!0)},o.prototype._promiseFulfilled=function(t,e){var r=new i;return r._bitField=33554432,r._settledValueField=t,this._promiseResolved(e,r)},o.prototype._promiseRejected=function(t,e){var r=new i;return r._bitField=16777216,r._settledValueField=t,this._promiseResolved(e,r)},e.settle=function(t){return n.deprecated(".settle()",".reflect()"),new o(t).promise()},e.prototype.settle=function(){return e.settle(this)}}},{"./util":36}],31:[function(t,e,r){"use strict";e.exports=function(e,r,n){var i=t("./util"),o=t("./errors").RangeError,a=t("./errors").AggregateError,s=i.isArray,l={};function u(t){this.constructor$(t),this._howMany=0,this._unwrap=!1,this._initialized=!1}function c(t,e){if((0|e)!==e||e<0)return n("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n");var r=new u(t),i=r.promise();return r.setHowMany(e),r.init(),i}i.inherits(u,r),u.prototype._init=function(){if(this._initialized)if(0!==this._howMany){this._init$(void 0,-5);var t=s(this._values);!this._isResolved()&&t&&this._howMany>this._canPossiblyFulfill()&&this._reject(this._getRangeError(this.length()))}else this._resolve([])},u.prototype.init=function(){this._initialized=!0,this._init()},u.prototype.setUnwrap=function(){this._unwrap=!0},u.prototype.howMany=function(){return this._howMany},u.prototype.setHowMany=function(t){this._howMany=t},u.prototype._promiseFulfilled=function(t){return this._addFulfilled(t),this._fulfilled()===this.howMany()&&(this._values.length=this.howMany(),1===this.howMany()&&this._unwrap?this._resolve(this._values[0]):this._resolve(this._values),!0)},u.prototype._promiseRejected=function(t){return this._addRejected(t),this._checkOutcome()},u.prototype._promiseCancelled=function(){return this._values instanceof e||null==this._values?this._cancel():(this._addRejected(l),this._checkOutcome())},u.prototype._checkOutcome=function(){if(this.howMany()>this._canPossiblyFulfill()){for(var t=new a,e=this.length();e0?this._reject(t):this._cancel(),!0}return!1},u.prototype._fulfilled=function(){return this._totalResolved},u.prototype._rejected=function(){return this._values.length-this.length()},u.prototype._addRejected=function(t){this._values.push(t)},u.prototype._addFulfilled=function(t){this._values[this._totalResolved++]=t},u.prototype._canPossiblyFulfill=function(){return this.length()-this._rejected()},u.prototype._getRangeError=function(t){var e="Input array must contain at least "+this._howMany+" items but contains only "+t+" items";return new o(e)},u.prototype._resolveEmptyArray=function(){this._reject(this._getRangeError(0))},e.some=function(t,e){return c(t,e)},e.prototype.some=function(t){return c(this,t)},e._SomePromiseArray=u}},{"./errors":12,"./util":36}],32:[function(t,e,r){"use strict";e.exports=function(t){function e(t){void 0!==t?(t=t._target(),this._bitField=t._bitField,this._settledValueField=t._isFateSealed()?t._settledValue():void 0):(this._bitField=0,this._settledValueField=void 0)}e.prototype._settledValue=function(){return this._settledValueField};var r=e.prototype.value=function(){if(!this.isFulfilled())throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},n=e.prototype.error=e.prototype.reason=function(){if(!this.isRejected())throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},i=e.prototype.isFulfilled=function(){return 0!=(33554432&this._bitField)},o=e.prototype.isRejected=function(){return 0!=(16777216&this._bitField)},a=e.prototype.isPending=function(){return 0==(50397184&this._bitField)},s=e.prototype.isResolved=function(){return 0!=(50331648&this._bitField)};e.prototype.isCancelled=function(){return 0!=(8454144&this._bitField)},t.prototype.__isCancelled=function(){return 65536==(65536&this._bitField)},t.prototype._isCancelled=function(){return this._target().__isCancelled()},t.prototype.isCancelled=function(){return 0!=(8454144&this._target()._bitField)},t.prototype.isPending=function(){return a.call(this._target())},t.prototype.isRejected=function(){return o.call(this._target())},t.prototype.isFulfilled=function(){return i.call(this._target())},t.prototype.isResolved=function(){return s.call(this._target())},t.prototype.value=function(){return r.call(this._target())},t.prototype.reason=function(){var t=this._target();return t._unsetRejectionIsUnhandled(),n.call(t)},t.prototype._value=function(){return this._settledValue()},t.prototype._reason=function(){return this._unsetRejectionIsUnhandled(),this._settledValue()},t.PromiseInspection=e}},{}],33:[function(t,e,r){"use strict";e.exports=function(e,r){var n=t("./util"),i=n.errorObj,o=n.isObject;var a={}.hasOwnProperty;return function(t,s){if(o(t)){if(t instanceof e)return t;var l=function(t){try{return function(t){return t.then}(t)}catch(t){return i.e=t,i}}(t);if(l===i){s&&s._pushContext();var u=e.reject(l.e);return s&&s._popContext(),u}if("function"==typeof l)return function(t){try{return a.call(t,"_promise0")}catch(t){return!1}}(t)?(u=new e(r),t._then(u._fulfill,u._reject,void 0,u,null),u):function(t,o,a){var s=new e(r),l=s;a&&a._pushContext(),s._captureStackTrace(),a&&a._popContext();var u=!0,c=n.tryCatch(o).call(t,function(t){s&&(s._resolveCallback(t),s=null)},function(t){s&&(s._rejectCallback(t,u,!0),s=null)});return u=!1,s&&c===i&&(s._rejectCallback(c.e,!0,!0),s=null),l}(t,l,s)}return t}}},{"./util":36}],34:[function(t,e,r){"use strict";e.exports=function(e,r,n){var i=t("./util"),o=e.TimeoutError;function a(t){this.handle=t}a.prototype._resultCancelled=function(){clearTimeout(this.handle)};var s=function(t){return l(+this).thenReturn(t)},l=e.delay=function(t,i){var o,l;return void 0!==i?(o=e.resolve(i)._then(s,null,null,t,void 0),n.cancellation()&&i instanceof e&&o._setOnCancel(i)):(o=new e(r),l=setTimeout(function(){o._fulfill()},+t),n.cancellation()&&o._setOnCancel(new a(l)),o._captureStackTrace()),o._setAsyncGuaranteed(),o};e.prototype.delay=function(t){return l(t,this)};function u(t){return clearTimeout(this.handle),t}function c(t){throw clearTimeout(this.handle),t}e.prototype.timeout=function(t,e){var r,s;t=+t;var l=new a(setTimeout(function(){r.isPending()&&function(t,e,r){var n;n="string"!=typeof e?e instanceof Error?e:new o("operation timed out"):new o(e),i.markAsOriginatingFromRejection(n),t._attachExtraTrace(n),t._reject(n),null!=r&&r.cancel()}(r,e,s)},t));return n.cancellation()?(s=this.then(),(r=s._then(u,c,void 0,l,void 0))._setOnCancel(l)):r=this._then(u,c,void 0,l,void 0),r}}},{"./util":36}],35:[function(t,e,r){"use strict";e.exports=function(e,r,n,i,o,a){var s=t("./util"),l=t("./errors").TypeError,u=t("./util").inherits,c=s.errorObj,f=s.tryCatch,h={};function p(t){setTimeout(function(){throw t},0)}function d(t,r){var i=0,a=t.length,s=new e(o);return function o(){if(i>=a)return s._fulfill();var l=function(t){var e=n(t);return e!==t&&"function"==typeof t._isDisposable&&"function"==typeof t._getDisposer&&t._isDisposable()&&e._setDisposable(t._getDisposer()),e}(t[i++]);if(l instanceof e&&l._isDisposable()){try{l=n(l._getDisposer().tryDispose(r),t.promise)}catch(t){return p(t)}if(l instanceof e)return l._then(o,p,null,null,null)}o()}(),s}function g(t,e,r){this._data=t,this._promise=e,this._context=r}function m(t,e,r){this.constructor$(t,e,r)}function v(t){return g.isDisposer(t)?(this.resources[this.index]._setDisposable(t),t.promise()):t}function _(t){this.length=t,this.promise=null,this[t-1]=null}g.prototype.data=function(){return this._data},g.prototype.promise=function(){return this._promise},g.prototype.resource=function(){return this.promise().isFulfilled()?this.promise().value():h},g.prototype.tryDispose=function(t){var e=this.resource(),r=this._context;void 0!==r&&r._pushContext();var n=e!==h?this.doDispose(e,t):null;return void 0!==r&&r._popContext(),this._promise._unsetDisposable(),this._data=null,n},g.isDisposer=function(t){return null!=t&&"function"==typeof t.resource&&"function"==typeof t.tryDispose},u(m,g),m.prototype.doDispose=function(t,e){return this.data().call(t,t,e)},_.prototype._resultCancelled=function(){for(var t=this.length,r=0;r0},e.prototype._getDisposer=function(){return this._disposer},e.prototype._unsetDisposable=function(){this._bitField=-131073&this._bitField,this._disposer=void 0},e.prototype.disposer=function(t){if("function"==typeof t)return new m(t,this,i());throw new l}}},{"./errors":12,"./util":36}],36:[function(e,r,i){"use strict";var o=e("./es5"),a="undefined"==typeof navigator,s={e:{}},l,u="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==n?n:void 0!==this?this:null;function c(){try{var t=l;return l=null,t.apply(this,arguments)}catch(t){return s.e=t,s}}function f(t){return l=t,c}var h=function(t,e){var r={}.hasOwnProperty;function n(){for(var n in this.constructor=t,this.constructor$=e,e.prototype)r.call(e.prototype,n)&&"$"!==n.charAt(n.length-1)&&(this[n+"$"]=e.prototype[n])}return n.prototype=e.prototype,t.prototype=new n,t.prototype};function p(t){return null==t||!0===t||!1===t||"string"==typeof t||"number"==typeof t}function d(t){return"function"==typeof t||"object"==typeof t&&null!==t}function g(t){return p(t)?new Error(P(t)):t}function m(t,e){var r,n=t.length,i=new Array(n+1);for(r=0;r1,n=e.length>0&&!(1===e.length&&"constructor"===e[0]),i=w.test(t+"")&&o.names(t).length>0;if(r||n||i)return!0}return!1}catch(t){return!1}}function x(t){function e(){}e.prototype=t;var r=new e;function n(){return typeof r.foo}return n(),n(),t}var B=/^[a-z$_][a-z$_0-9]*$/i;function C(t){return B.test(t)}function E(t,e,r){for(var n=new Array(t),i=0;i10||V[0]>0),q.isNode&&q.toFastProperties(t);try{throw new Error}catch(t){q.lastLineError=t}r.exports=q},{"./es5":13}]},{},[4])(4)}),"undefined"!=typeof window&&null!==window?window.P=window.Promise:"undefined"!=typeof self&&null!==self&&(self.P=self.Promise)}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},t("timers").setImmediate)},{_process:118,timers:172}],4:[function(t,e,r){},{}],5:[function(t,e,r){(function(r){var n=t("tty"),i=t("./lib/encode"),o=t("stream").Stream,a=e.exports=function(){var t=null;function e(e){if(t)throw new Error("multiple inputs specified");t=e}var i=null;function o(t){if(i)throw new Error("multiple outputs specified");i=t}for(var a=0;a0&&this.down(e),t>0?this.right(t):t<0&&this.left(-t),this},s.prototype.up=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"A")),this},s.prototype.down=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"B")),this},s.prototype.right=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"C")),this},s.prototype.left=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"D")),this},s.prototype.column=function(t){return this.write(i("["+Math.floor(t)+"G")),this},s.prototype.push=function(t){return this.write(i(t?"7":"[s")),this},s.prototype.pop=function(t){return this.write(i(t?"8":"[u")),this},s.prototype.erase=function(t){return"end"===t||"$"===t?this.write(i("[K")):"start"===t||"^"===t?this.write(i("[1K")):"line"===t?this.write(i("[2K")):"down"===t?this.write(i("[J")):"up"===t?this.write(i("[1J")):"screen"===t?this.write(i("[1J")):this.emit("error",new Error("Unknown erase type: "+t)),this},s.prototype.display=function(t){var e={reset:0,bright:1,dim:2,underscore:4,blink:5,reverse:7,hidden:8}[t];return void 0===e&&this.emit("error",new Error("Unknown attribute: "+t)),this.write(i("["+e+"m")),this},s.prototype.foreground=function(t){if("number"==typeof t)(t<0||t>=256)&&this.emit("error",new Error("Color out of range: "+t)),this.write(i("[38;5;"+t+"m"));else{var e={black:30,red:31,green:32,yellow:33,blue:34,magenta:35,cyan:36,white:37}[t.toLowerCase()];e||this.emit("error",new Error("Unknown color: "+t)),this.write(i("["+e+"m"))}return this},s.prototype.background=function(t){if("number"==typeof t)(t<0||t>=256)&&this.emit("error",new Error("Color out of range: "+t)),this.write(i("[48;5;"+t+"m"));else{var e={black:40,red:41,green:42,yellow:43,blue:44,magenta:45,cyan:46,white:47}[t.toLowerCase()];e||this.emit("error",new Error("Unknown color: "+t)),this.write(i("["+e+"m"))}return this},s.prototype.cursor=function(t){return this.write(i(t?"[?25h":"[?25l")),this};var l=a.extractCodes=function(t){for(var e=[],r=-1,n=0;n=0&&e.push(t.slice(r,n)),r=n):r>=0&&n===t.length-1&&e.push(t.slice(r));return e}}).call(this,t("_process"))},{"./lib/encode":6,_process:118,stream:169,tty:173}],6:[function(t,e,r){(function(t){var r=(e.exports=function(e){return new t([27].concat(function t(e){return"string"==typeof e?e.split("").map(r):Array.isArray(e)?e.reduce(function(e,r){return e.concat(t(r))},[]):void 0}(e)))}).ord=function(t){return t.charCodeAt(0)}}).call(this,t("buffer").Buffer)},{buffer:48}],7:[function(t,e,r){(function(r){"use strict";var n=t("readable-stream").Readable,i=t("util");function o(t,e){if(!(this instanceof o))return new o(t,e);n.call(this,e),null!==t&&void 0!==t||(t=String(t)),this._obj=t}e.exports=o,i.inherits(o,n),o.prototype._read=function(t){var e=this._obj;"string"==typeof e?this.push(new r(e)):r.isBuffer(e)?this.push(e):this.push(new r(JSON.stringify(e))),this.push(null)}}).call(this,t("buffer").Buffer)},{buffer:48,"readable-stream":13,util:180}],8:[function(t,e,r){(function(r){e.exports=s;var n=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e},i=t("core-util-is");i.inherits=t("inherits");var o=t("./_stream_readable"),a=t("./_stream_writable");function s(t){if(!(this instanceof s))return new s(t);o.call(this,t),a.call(this,t),t&&!1===t.readable&&(this.readable=!1),t&&!1===t.writable&&(this.writable=!1),this.allowHalfOpen=!0,t&&!1===t.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",l)}function l(){this.allowHalfOpen||this._writableState.ended||r.nextTick(this.end.bind(this))}i.inherits(s,o),function(t,e){for(var r=0,n=t.length;r0?d(t):b(t)}(t,e);else if(e.objectMode||n&&n.length>0)if(e.ended&&!a){var l=new Error("stream.push() after EOF");t.emit("error",l)}else if(e.endEmitted&&a){l=new Error("stream.unshift() after end event");t.emit("error",l)}else!e.decoder||a||o||(n=e.decoder.write(n)),e.length+=e.objectMode?1:n.length,a?e.buffer.unshift(n):(e.reading=!1,e.buffer.push(n)),e.needReadable&&d(t),function(t,e){e.readingMore||(e.readingMore=!0,r.nextTick(function(){!function(t,e){var r=e.length;for(;!e.reading&&!e.flowing&&!e.ended&&e.lengthe.highWaterMark&&(e.highWaterMark=function(t){if(t>=h)t=h;else{t--;for(var e=1;e<32;e<<=1)t|=t>>e;t++}return t}(t)),t>e.length?e.ended?e.length:(e.needReadable=!0,0):t)}function d(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,e.sync?r.nextTick(function(){g(t)}):g(t))}function g(t){t.emit("readable")}function m(t){var e,r=t._readableState;function n(t,n,i){!1===t.write(e)&&r.awaitDrain++}for(r.awaitDrain=0;r.pipesCount&&null!==(e=t.read());)if(1===r.pipesCount?n(r.pipes):w(r.pipes,n),t.emit("data",e),r.awaitDrain>0)return;if(0===r.pipesCount)return r.flowing=!1,void(o.listenerCount(t,"data")>0&&_(t));r.ranOut=!0}function v(){this._readableState.ranOut&&(this._readableState.ranOut=!1,m(this))}function _(t,e){if(t._readableState.flowing)throw new Error("Cannot switch to old mode now.");var n=e||!1,i=!1;t.readable=!0,t.pipe=s.prototype.pipe,t.on=t.addListener=s.prototype.on,t.on("readable",function(){var e;for(i=!0;!n&&null!==(e=t.read());)t.emit("data",e);null===e&&(i=!1,t._readableState.needReadable=!0)}),t.pause=function(){n=!0,this.emit("pause")},t.resume=function(){n=!1,i?r.nextTick(function(){t.emit("readable")}):this.read(0),this.emit("resume")},t.emit("readable")}function y(t,e){var r,n=e.buffer,o=e.length,a=!!e.decoder,s=!!e.objectMode;if(0===n.length)return null;if(0===o)r=null;else if(s)r=n.shift();else if(!t||t>=o)r=a?n.join(""):i.concat(n,o),n.length=0;else{if(t0)throw new Error("endReadable called on non-empty stream");!e.endEmitted&&e.calledRead&&(e.ended=!0,r.nextTick(function(){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}))}function w(t,e){for(var r=0,n=t.length;r0)&&(e.emittedReadable=!1),0===t&&e.needReadable&&(e.length>=e.highWaterMark||e.ended))return d(this),null;if(0===(t=p(t,e))&&e.ended)return r=null,e.length>0&&e.decoder&&(r=y(t,e),e.length-=r.length),0===e.length&&b(this),r;var i=e.needReadable;return e.length-t<=e.highWaterMark&&(i=!0),(e.ended||e.reading)&&(i=!1),i&&(e.reading=!0,e.sync=!0,0===e.length&&(e.needReadable=!0),this._read(e.highWaterMark),e.sync=!1),i&&!e.reading&&(t=p(n,e)),null===(r=t>0?y(t,e):null)&&(e.needReadable=!0,t=0),e.length-=t,0!==e.length||e.ended||(e.needReadable=!0),e.ended&&!e.endEmitted&&0===e.length&&b(this),r},c.prototype._read=function(t){this.emit("error",new Error("not implemented"))},c.prototype.pipe=function(t,e){var i=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=t;break;case 1:a.pipes=[a.pipes,t];break;default:a.pipes.push(t)}a.pipesCount+=1;var s=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?u:f;function l(t){t===i&&f()}function u(){t.end()}a.endEmitted?r.nextTick(s):i.once("end",s),t.on("unpipe",l);var c=function(t){return function(){var e=t._readableState;e.awaitDrain--,0===e.awaitDrain&&m(t)}}(i);function f(){t.removeListener("close",p),t.removeListener("finish",d),t.removeListener("drain",c),t.removeListener("error",h),t.removeListener("unpipe",l),i.removeListener("end",u),i.removeListener("end",f),t._writableState&&!t._writableState.needDrain||c()}function h(e){g(),t.removeListener("error",h),0===o.listenerCount(t,"error")&&t.emit("error",e)}function p(){t.removeListener("finish",d),g()}function d(){t.removeListener("close",p),g()}function g(){i.unpipe(t)}return t.on("drain",c),t._events&&t._events.error?n(t._events.error)?t._events.error.unshift(h):t._events.error=[h,t._events.error]:t.on("error",h),t.once("close",p),t.once("finish",d),t.emit("pipe",i),a.flowing||(this.on("readable",v),a.flowing=!0,r.nextTick(function(){m(i)})),t},c.prototype.unpipe=function(t){var e=this._readableState;if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,this.removeListener("readable",v),e.flowing=!1,t&&t.emit("unpipe",this),this);if(!t){var r=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,this.removeListener("readable",v),e.flowing=!1;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"===o)e.scalarArgs.push(i),e.shimArgs.push("scalar"+i);else if("index"===o){if(e.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"===o){if(e.shapeArgs.push(i),ir.length)throw new Error("cwise: Too many arguments in pre() block");if(e.body.args.length>r.length)throw new Error("cwise: Too many arguments in body() block");if(e.post.args.length>r.length)throw new Error("cwise: Too many arguments in post() block");return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||"cwise",e.blockSize=t.blockSize||64,n(e)}},{"./lib/thunk.js":17}],16:[function(t,e,r){"use strict";var n=t("uniq");function i(t,e,r){var n,i,o=t.length,a=e.arrayArgs.length,s=e.indexArgs.length>0,l=[],u=[],c=0,f=0;for(n=0;n0&&l.push("var "+u.join(",")),n=o-1;n>=0;--n)c=t[n],l.push(["for(i",n,"=0;i",n,"0&&l.push(["index[",f,"]-=s",f].join("")),l.push(["++index[",c,"]"].join(""))),l.push("}")}return l.join("\n")}function o(t,e,r){for(var n=t.body,i=[],o=[],a=0;a0&&_.push("shape=SS.slice(0)"),t.indexArgs.length>0){var y=new Array(r);for(l=0;l0&&v.push("var "+_.join(",")),l=0;l3&&v.push(o(t.pre,t,s));var x=o(t.body,t,s),B=function(t){for(var e=0,r=t[0].length;e0,u=[],c=0;c0;){"].join("")),u.push(["if(j",c,"<",s,"){"].join("")),u.push(["s",e[c],"=j",c].join("")),u.push(["j",c,"=0"].join("")),u.push(["}else{s",e[c],"=",s].join("")),u.push(["j",c,"-=",s,"}"].join("")),l&&u.push(["index[",e[c],"]=j",c].join(""));for(c=0;c3&&v.push(o(t.post,t,s)),t.debug&&console.log("-----Generated cwise routine for ",e,":\n"+v.join("\n")+"\n----------");var C=[t.funcName||"unnamed","_cwise_loop_",a[0].join("s"),"m",B,function(t){for(var e=new Array(t.length),r=!0,n=0;n0&&(r=r&&e[n]===e[n-1])}return r?e[0]:e.join("")}(s)].join("");return new Function(["function ",C,"(",m.join(","),"){",v.join("\n"),"} return ",C].join(""))()}},{uniq:176}],17:[function(t,e,r){"use strict";var n=t("./compile.js");e.exports=function(t){var e=["'use strict'","var CACHED={}"],r=[],i=t.funcName+"_cwise_thunk";e.push(["return function ",i,"(",t.shimArgs.join(","),"){"].join(""));for(var o=[],a=[],s=[["array",t.arrayArgs[0],".shape.slice(",Math.max(0,t.arrayBlockIndices[0]),t.arrayBlockIndices[0]<0?","+t.arrayBlockIndices[0]+")":")"].join("")],l=[],u=[],c=0;c0&&(l.push("array"+t.arrayArgs[0]+".shape.length===array"+f+".shape.length+"+(Math.abs(t.arrayBlockIndices[0])-Math.abs(t.arrayBlockIndices[c]))),u.push("array"+t.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,t.arrayBlockIndices[0])+"]===array"+f+".shape[shapeIndex+"+Math.max(0,t.arrayBlockIndices[c])+"]"))}for(t.arrayArgs.length>1&&(e.push("if (!("+l.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),e.push("for(var shapeIndex=array"+t.arrayArgs[0]+".shape.length-"+Math.abs(t.arrayBlockIndices[0])+"; shapeIndex--\x3e0;) {"),e.push("if (!("+u.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),e.push("}")),c=0;cf)&&(o[l]=f,p.push(l,f),i[l]=s));if(void 0!==r&&void 0===o[r]){var d=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(d)}return i},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e;n;)r.push(n),t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var i=n.single_source_shortest_paths(t,e,r);return n.extract_shortest_path_from_predecessor_list(i,r)},PriorityQueue:{make:function(t){var e,r=n.PriorityQueue,i={};for(e in t=t||{},r)r.hasOwnProperty(e)&&(i[e]=r[e]);return i.queue=[],i.sorter=t.sorter||r.default_sorter,i},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};void 0!==e&&(e.exports=n)},{}],21:[function(t,e,r){"use strict";e.exports=function(t,e){switch(void 0===e&&(e=0),typeof t){case"number":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n 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"},{}],25:[function(t,e,r){e.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"},{}],26:[function(t,e,r){e.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"},{}],27:[function(t,e,r){e.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"},{}],28:[function(t,e,r){e.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"},{}],29:[function(t,e,r){e.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"},{}],30:[function(t,e,r){(function(r,n){"use strict";var i=t("path"),o=t("ndarray"),a=t("omggif").GifReader,s=(t("ndarray-pack"),t("through"),t("data-uri-to-buffer"));function l(t,e){var r;try{r=new a(t)}catch(t){return void e(t)}if(r.numFrames()>0){var n=[r.numFrames(),r.height,r.width,4],i=new Uint8Array(n[0]*n[1]*n[2]*n[3]),s=o(i,n);try{for(var l=0;l=0&&(this.dispose=t)},l.prototype.setRepeat=function(t){this.repeat=t},l.prototype.setTransparent=function(t){this.transparent=t},l.prototype.analyzeImage=function(t){this.setImagePixels(this.removeAlphaChannel(t)),this.analyzePixels()},l.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},l.prototype.outputImage=function(){this.writePixels()},l.prototype.addFrame=function(t){this.emit("frame#start"),this.analyzeImage(t),this.writeImageInfo(),this.outputImage(),this.emit("frame#stop")},l.prototype.finish=function(){this.emit("finish#start"),this.writeByte(59),this.emit("finish#stop")},l.prototype.setQuality=function(t){t<1&&(t=1),this.sample=t},l.prototype.writeHeader=function(){this.emit("writeHeader#start"),this.writeUTFBytes("GIF89a"),this.emit("writeHeader#stop")},l.prototype.analyzePixels=function(){var t=this.pixels.length/3;this.indexedPixels=new Uint8Array(t);var e=new o(this.pixels,this.sample);e.buildColormap(),this.colorTab=e.getColormap();for(var r=0,n=0;n>16,r=(65280&t)>>8,n=255&t,i=0,o=16777216,a=this.colorTab.length,s=0;s=0&&(e=7&dispose),e<<=2,this.writeByte(0|e|t),this.writeShort(this.delay),this.writeByte(this.transIndex),this.writeByte(0)},l.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)},l.prototype.writeLSD=function(){this.writeShort(this.width),this.writeShort(this.height),this.writeByte(240|this.palSize),this.writeByte(0),this.writeByte(0)},l.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)},l.prototype.writePalette=function(){this.writeBytes(this.colorTab);for(var t=768-this.colorTab.length,e=0;e>8&255)},l.prototype.writePixels=function(){new a(this.width,this.height,this.indexedPixels,this.colorDepth).encode(this)},l.prototype.stream=function(){return this},l.ByteCapacitor=s,e.exports=l}).call(this,t("buffer").Buffer)},{"./LZWEncoder.js":33,"./TypedNeuQuant.js":34,assert:41,buffer:48,events:49,"readable-stream":40,util:180}],33:[function(t,e,r){var n=-1,i=12,o=5003,a=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535];e.exports=function(t,e,r,s){var l,u,c,f,h,p,d,g,m,v=Math.max(2,s),_=new Uint8Array(256),y=new Int32Array(o),b=new Int32Array(o),w=0,k=0,x=!1;function B(t,e){_[u++]=t,u>=254&&P(e)}function C(t){E(o),k=g+2,x=!0,T(g,t)}function E(t){for(var e=0;e0&&(t.writeByte(u),t.writeBytes(_,0,u),u=0)}function j(t){return(1<0?l|=t<=8;)B(255&l,e),l>>=8,w-=8;if((k>c||x)&&(x?(c=j(p=d),x=!1):c=++p==i?1<0;)B(255&l,e),l>>=8,w-=8;P(e)}}this.encode=function(r){r.writeByte(v),f=t*e,h=0,function(t,e){var r,a,s,l,f,h,v;for(x=!1,c=j(p=d=t),m=1+(g=1<=0){f=h-s,0===s&&(f=1);do{if((s-=f)<0&&(s+=h),y[s]===r){l=b[s];continue t}}while(y[s]>=0)}T(l,e),l=a,k<1<>c,h=l<>3)*(1<u;)l=P[p++],fu&&((s=r[h--])[0]-=l*(s[0]-n)/_,s[1]-=l*(s[1]-o)/_,s[2]-=l*(s[2]-a)/_)}function T(t,e,n){var o,l,p,d,g,m=~(1<<31),v=m,_=-1,y=_;for(o=0;o>s-a))>c,E[o]-=g,C[o]+=g<>3),t=0;t>p;for(E<=1&&(E=0),r=0;r=c&&(M-=c),r++,0===_&&(_=1),r%_==0)for(B-=B/f,(E=(C-=C/g)>>p)<=1&&(E=0),u=0;u>=a,r[t][1]>>=a,r[t][2]>>=a,r[t][3]=t}(),function(){var t,e,n,a,s,l,u=0,c=0;for(t=0;t>1,e=u+1;e>1,e=u+1;e<256;e++)B[e]=o}()},this.getColormap=function(){for(var t=[],e=[],n=0;n=0;)c=l?c=i:(c++,s<0&&(s=-s),(o=a[0]-t)<0&&(o=-o),(s+=o)=0&&((s=e-(a=r[f])[1])>=l?f=-1:(f--,s<0&&(s=-s),(o=a[0]-t)<0&&(o=-o),(s+=o)0)if(e.ended&&!o){var s=new Error("stream.push() after EOF");t.emit("error",s)}else if(e.endEmitted&&o){s=new Error("stream.unshift() after end event");t.emit("error",s)}else!e.decoder||o||i||(n=e.decoder.write(n)),o||(e.reading=!1),e.flowing&&0===e.length&&!e.sync?(t.emit("data",n),t.read(0)):(e.length+=e.objectMode?1:n.length,o?e.buffer.unshift(n):e.buffer.push(n),e.needReadable&&g(t)),function(t,e){e.readingMore||(e.readingMore=!0,r.nextTick(function(){!function(t,e){var r=e.length;for(;!e.reading&&!e.flowing&&!e.ended&&e.lengthe.highWaterMark&&(e.highWaterMark=function(t){if(t>=p)t=p;else{t--;for(var e=1;e<32;e<<=1)t|=t>>e;t++}return t}(t)),t>e.length?e.ended?e.length:(e.needReadable=!0,0):t)}function g(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(u("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?r.nextTick(function(){m(t)}):m(t))}function m(t){u("emit readable"),t.emit("readable"),v(t)}function v(t){var e=t._readableState;if(u("flow",e.flowing),e.flowing)do{var r=t.read()}while(null!==r&&e.flowing)}function _(t,e){var r,n=e.buffer,o=e.length,a=!!e.decoder,s=!!e.objectMode;if(0===n.length)return null;if(0===o)r=null;else if(s)r=n.shift();else if(!t||t>=o)r=a?n.join(""):i.concat(n,o),n.length=0;else{if(t0)throw new Error("endReadable called on non-empty stream");e.endEmitted||(e.ended=!0,r.nextTick(function(){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}))}f.prototype.read=function(t){u("read",t);var e=this._readableState,r=t;if((!l.isNumber(t)||t>0)&&(e.emittedReadable=!1),0===t&&e.needReadable&&(e.length>=e.highWaterMark||e.ended))return u("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?y(this):g(this),null;if(0===(t=d(t,e))&&e.ended)return 0===e.length&&y(this),null;var n,i=e.needReadable;return u("need readable",i),(0===e.length||e.length-t0?_(t,e):null,l.isNull(n)&&(e.needReadable=!0,t=0),e.length-=t,0!==e.length||e.ended||(e.needReadable=!0),r!==t&&e.ended&&0===e.length&&y(this),l.isNull(n)||this.emit("data",n),n},f.prototype._read=function(t){this.emit("error",new Error("not implemented"))},f.prototype.pipe=function(t,e){var i=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=t;break;case 1:a.pipes=[a.pipes,t];break;default:a.pipes.push(t)}a.pipesCount+=1,u("pipe count=%d opts=%j",a.pipesCount,e);var s=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?c:h;function l(t){u("onunpipe"),t===i&&h()}function c(){u("onend"),t.end()}a.endEmitted?r.nextTick(s):i.once("end",s),t.on("unpipe",l);var f=function(t){return function(){var e=t._readableState;u("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o.listenerCount(t,"data")&&(e.flowing=!0,v(t))}}(i);function h(){u("cleanup"),t.removeListener("close",g),t.removeListener("finish",m),t.removeListener("drain",f),t.removeListener("error",d),t.removeListener("unpipe",l),i.removeListener("end",c),i.removeListener("end",h),i.removeListener("data",p),!a.awaitDrain||t._writableState&&!t._writableState.needDrain||f()}function p(e){u("ondata"),!1===t.write(e)&&(u("false write response, pause",i._readableState.awaitDrain),i._readableState.awaitDrain++,i.pause())}function d(e){u("onerror",e),_(),t.removeListener("error",d),0===o.listenerCount(t,"error")&&t.emit("error",e)}function g(){t.removeListener("finish",m),_()}function m(){u("onfinish"),t.removeListener("close",g),_()}function _(){u("unpipe"),i.unpipe(t)}return t.on("drain",f),i.on("data",p),t._events&&t._events.error?n(t._events.error)?t._events.error.unshift(d):t._events.error=[d,t._events.error]:t.on("error",d),t.once("close",g),t.once("finish",m),t.emit("pipe",i),a.flowing||(u("pipe resume"),i.resume()),t},f.prototype.unpipe=function(t){var e=this._readableState;if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this),this);if(!t){var r=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var i=0;i1){for(var r=[],n=0;n=0;u--)if(c[u]!==f[u])return!1;for(u=c.length-1;u>=0;u--)if(l=c[u],!_(t[l],e[l],r,n))return!1;return!0}(t,e,r,a))}return r?t===e:t==e}function y(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function b(t,e){if(!t||!e)return!1;if("[object RegExp]"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function w(t,e,r,n){var i;if("function"!=typeof e)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(n=r,r=null),i=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),t&&!i&&m(i,r,"Missing expected exception"+n);var a="string"==typeof n,s=!t&&o.isError(i),l=!t&&i&&!r;if((s&&a&&b(i,r)||l)&&m(i,r,"Got unwanted exception"+n),t&&i&&r&&!b(i,r)||!t&&i)throw i}f.AssertionError=function(t){var e;this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=d(g((e=this).actual),128)+" "+e.operator+" "+d(g(e.expected),128),this.generatedMessage=!0);var r=t.stackStartFunction||m;if(Error.captureStackTrace)Error.captureStackTrace(this,r);else{var n=new Error;if(n.stack){var i=n.stack,o=p(r),a=i.indexOf("\n"+o);if(a>=0){var s=i.indexOf("\n",a+1);i=i.substring(s+1)}this.stack=i}}},o.inherits(f.AssertionError,Error),f.fail=m,f.ok=v,f.equal=function(t,e,r){t!=e&&m(t,e,r,"==",f.equal)},f.notEqual=function(t,e,r){t==e&&m(t,e,r,"!=",f.notEqual)},f.deepEqual=function(t,e,r){_(t,e,!1)||m(t,e,r,"deepEqual",f.deepEqual)},f.deepStrictEqual=function(t,e,r){_(t,e,!0)||m(t,e,r,"deepStrictEqual",f.deepStrictEqual)},f.notDeepEqual=function(t,e,r){_(t,e,!1)&&m(t,e,r,"notDeepEqual",f.notDeepEqual)},f.notDeepStrictEqual=function t(e,r,n){_(e,r,!0)&&m(e,r,n,"notDeepStrictEqual",t)},f.strictEqual=function(t,e,r){t!==e&&m(t,e,r,"===",f.strictEqual)},f.notStrictEqual=function(t,e,r){t===e&&m(t,e,r,"!==",f.notStrictEqual)},f.throws=function(t,e,r){w(!0,t,e,r)},f.doesNotThrow=function(t,e,r){w(!1,t,e,r)},f.ifError=function(t){if(t)throw t};var k=Object.keys||function(t){var e=[];for(var r in t)a.call(t,r)&&e.push(r);return e}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"util/":44}],42:[function(t,e,r){"function"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],43:[function(t,e,r){e.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},{}],44:[function(t,e,r){(function(e,n){var i=/%[sdj%]/g;r.format=function(t){if(!v(t)){for(var e=[],r=0;r=o)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return t}}),l=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),d(e)?n.showHidden=e:e&&r._extend(n,e),_(n.showHidden)&&(n.showHidden=!1),_(n.depth)&&(n.depth=2),_(n.colors)&&(n.colors=!1),_(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=l),c(n,t,n.depth)}function l(t,e){var r=s.styles[e];return r?"["+s.colors[r][0]+"m"+t+"["+s.colors[r][1]+"m":t}function u(t,e){return t}function c(t,e,n){if(t.customInspect&&e&&x(e.inspect)&&e.inspect!==r.inspect&&(!e.constructor||e.constructor.prototype!==e)){var i=e.inspect(n,t);return v(i)||(i=c(t,i,n)),i}var o=function(t,e){if(_(e))return t.stylize("undefined","undefined");if(v(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}if(m(e))return t.stylize(""+e,"number");if(d(e))return t.stylize(""+e,"boolean");if(g(e))return t.stylize("null","null")}(t,e);if(o)return o;var a=Object.keys(e),s=function(t){var e={};return t.forEach(function(t,r){e[t]=!0}),e}(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(e)),k(e)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(e);if(0===a.length){if(x(e)){var l=e.name?": "+e.name:"";return t.stylize("[Function"+l+"]","special")}if(y(e))return t.stylize(RegExp.prototype.toString.call(e),"regexp");if(w(e))return t.stylize(Date.prototype.toString.call(e),"date");if(k(e))return f(e)}var u,b="",B=!1,C=["{","}"];(p(e)&&(B=!0,C=["[","]"]),x(e))&&(b=" [Function"+(e.name?": "+e.name:"")+"]");return y(e)&&(b=" "+RegExp.prototype.toString.call(e)),w(e)&&(b=" "+Date.prototype.toUTCString.call(e)),k(e)&&(b=" "+f(e)),0!==a.length||B&&0!=e.length?n<0?y(e)?t.stylize(RegExp.prototype.toString.call(e),"regexp"):t.stylize("[Object]","special"):(t.seen.push(e),u=B?function(t,e,r,n,i){for(var o=[],a=0,s=e.length;a=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1];return r[0]+e+" "+t.join(", ")+" "+r[1]}(u,b,C)):C[0]+b+C[1]}function f(t){return"["+Error.prototype.toString.call(t)+"]"}function h(t,e,r,n,i,o){var a,s,l;if((l=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),P(n,i)||(a="["+i+"]"),s||(t.seen.indexOf(l.value)<0?(s=g(r)?c(t,l.value,null):c(t,l.value,r-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map(function(t){return" "+t}).join("\n").substr(2):"\n"+s.split("\n").map(function(t){return" "+t}).join("\n")):s=t.stylize("[Circular]","special")),_(a)){if(o&&i.match(/^\d+$/))return s;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function p(t){return Array.isArray(t)}function d(t){return"boolean"==typeof t}function g(t){return null===t}function m(t){return"number"==typeof t}function v(t){return"string"==typeof t}function _(t){return void 0===t}function y(t){return b(t)&&"[object RegExp]"===B(t)}function b(t){return"object"==typeof t&&null!==t}function w(t){return b(t)&&"[object Date]"===B(t)}function k(t){return b(t)&&("[object Error]"===B(t)||t instanceof Error)}function x(t){return"function"==typeof t}function B(t){return Object.prototype.toString.call(t)}function C(t){return t<10?"0"+t.toString(10):t.toString(10)}r.debuglog=function(t){if(_(o)&&(o=e.env.NODE_DEBUG||""),t=t.toUpperCase(),!a[t])if(new RegExp("\\b"+t+"\\b","i").test(o)){var n=e.pid;a[t]=function(){var e=r.format.apply(r,arguments);console.error("%s %d: %s",t,n,e)}}else a[t]=function(){};return a[t]},r.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"},r.isArray=p,r.isBoolean=d,r.isNull=g,r.isNullOrUndefined=function(t){return null==t},r.isNumber=m,r.isString=v,r.isSymbol=function(t){return"symbol"==typeof t},r.isUndefined=_,r.isRegExp=y,r.isObject=b,r.isDate=w,r.isError=k,r.isFunction=x,r.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},r.isBuffer=t("./support/isBuffer");var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function P(t,e){return Object.prototype.hasOwnProperty.call(t,e)}r.log=function(){var t,e;console.log("%s - %s",(t=new Date,e=[C(t.getHours()),C(t.getMinutes()),C(t.getSeconds())].join(":"),[t.getDate(),E[t.getMonth()],e].join(" ")),r.format.apply(r,arguments))},r.inherits=t("inherits"),r._extend=function(t,e){if(!e||!b(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t}}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":43,_process:118,inherits:42}],45:[function(t,e,r){(function(e,n){"use strict";var i=t("assert"),o=t("pako/lib/zlib/zstream"),a=t("pako/lib/zlib/deflate.js"),s=t("pako/lib/zlib/inflate.js"),l=t("pako/lib/zlib/constants");for(var u in l)r[u]=l[u];r.NONE=0,r.DEFLATE=1,r.INFLATE=2,r.GZIP=3,r.GUNZIP=4,r.DEFLATERAW=5,r.INFLATERAW=6,r.UNZIP=7;function c(t){if("number"!=typeof t||tr.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=t,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}c.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,i(this.init_done,"close before init"),i(this.mode<=r.UNZIP),this.mode===r.DEFLATE||this.mode===r.GZIP||this.mode===r.DEFLATERAW?a.deflateEnd(this.strm):this.mode!==r.INFLATE&&this.mode!==r.GUNZIP&&this.mode!==r.INFLATERAW&&this.mode!==r.UNZIP||s.inflateEnd(this.strm),this.mode=r.NONE,this.dictionary=null)},c.prototype.write=function(t,e,r,n,i,o,a){return this._write(!0,t,e,r,n,i,o,a)},c.prototype.writeSync=function(t,e,r,n,i,o,a){return this._write(!1,t,e,r,n,i,o,a)},c.prototype._write=function(t,o,a,s,l,u,c,f){if(i.equal(arguments.length,8),i(this.init_done,"write before init"),i(this.mode!==r.NONE,"already finalized"),i.equal(!1,this.write_in_progress,"write already in progress"),i.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,i.equal(!1,void 0===o,"must provide flush value"),this.write_in_progress=!0,o!==r.Z_NO_FLUSH&&o!==r.Z_PARTIAL_FLUSH&&o!==r.Z_SYNC_FLUSH&&o!==r.Z_FULL_FLUSH&&o!==r.Z_FINISH&&o!==r.Z_BLOCK)throw new Error("Invalid flush value");if(null==a&&(a=n.alloc(0),l=0,s=0),this.strm.avail_in=l,this.strm.input=a,this.strm.next_in=s,this.strm.avail_out=f,this.strm.output=u,this.strm.next_out=c,this.flush=o,!t)return this._process(),this._checkError()?this._afterSync():void 0;var h=this;return e.nextTick(function(){h._process(),h._after()}),this},c.prototype._afterSync=function(){var t=this.strm.avail_out,e=this.strm.avail_in;return this.write_in_progress=!1,[e,t]},c.prototype._process=function(){var t=null;switch(this.mode){case r.DEFLATE:case r.GZIP:case r.DEFLATERAW:this.err=a.deflate(this.strm,this.flush);break;case r.UNZIP:switch(this.strm.avail_in>0&&(t=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(null===t)break;if(31!==this.strm.input[t]){this.mode=r.INFLATE;break}if(this.gzip_id_bytes_read=1,t++,1===this.strm.avail_in)break;case 1:if(null===t)break;139===this.strm.input[t]?(this.gzip_id_bytes_read=2,this.mode=r.GUNZIP):this.mode=r.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case r.INFLATE:case r.GUNZIP:case r.INFLATERAW:for(this.err=s.inflate(this.strm,this.flush),this.err===r.Z_NEED_DICT&&this.dictionary&&(this.err=s.inflateSetDictionary(this.strm,this.dictionary),this.err===r.Z_OK?this.err=s.inflate(this.strm,this.flush):this.err===r.Z_DATA_ERROR&&(this.err=r.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===r.GUNZIP&&this.err===r.Z_STREAM_END&&0!==this.strm.next_in[0];)this.reset(),this.err=s.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},c.prototype._checkError=function(){switch(this.err){case r.Z_OK:case r.Z_BUF_ERROR:if(0!==this.strm.avail_out&&this.flush===r.Z_FINISH)return this._error("unexpected end of file"),!1;break;case r.Z_STREAM_END:break;case r.Z_NEED_DICT:return null==this.dictionary?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0},c.prototype._after=function(){if(this._checkError()){var t=this.strm.avail_out,e=this.strm.avail_in;this.write_in_progress=!1,this.callback(e,t),this.pending_close&&this.close()}},c.prototype._error=function(t){this.strm.msg&&(t=this.strm.msg),this.onerror(t,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},c.prototype.init=function(t,e,n,o,a){i(4===arguments.length||5===arguments.length,"init(windowBits, level, memLevel, strategy, [dictionary])"),i(t>=8&&t<=15,"invalid windowBits"),i(e>=-1&&e<=9,"invalid compression level"),i(n>=1&&n<=9,"invalid memlevel"),i(o===r.Z_FILTERED||o===r.Z_HUFFMAN_ONLY||o===r.Z_RLE||o===r.Z_FIXED||o===r.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(e,t,n,o,a),this._setDictionary()},c.prototype.params=function(){throw new Error("deflateParams Not supported")},c.prototype.reset=function(){this._reset(),this._setDictionary()},c.prototype._init=function(t,e,n,i,l){switch(this.level=t,this.windowBits=e,this.memLevel=n,this.strategy=i,this.flush=r.Z_NO_FLUSH,this.err=r.Z_OK,this.mode!==r.GZIP&&this.mode!==r.GUNZIP||(this.windowBits+=16),this.mode===r.UNZIP&&(this.windowBits+=32),this.mode!==r.DEFLATERAW&&this.mode!==r.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new o,this.mode){case r.DEFLATE:case r.GZIP:case r.DEFLATERAW:this.err=a.deflateInit2(this.strm,this.level,r.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case r.INFLATE:case r.GUNZIP:case r.INFLATERAW:case r.UNZIP:this.err=s.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==r.Z_OK&&this._error("Init error"),this.dictionary=l,this.write_in_progress=!1,this.init_done=!0},c.prototype._setDictionary=function(){if(null!=this.dictionary){switch(this.err=r.Z_OK,this.mode){case r.DEFLATE:case r.DEFLATERAW:this.err=a.deflateSetDictionary(this.strm,this.dictionary)}this.err!==r.Z_OK&&this._error("Failed to set dictionary")}},c.prototype._reset=function(){switch(this.err=r.Z_OK,this.mode){case r.DEFLATE:case r.DEFLATERAW:case r.GZIP:this.err=a.deflateReset(this.strm);break;case r.INFLATE:case r.INFLATERAW:case r.GUNZIP:this.err=s.inflateReset(this.strm)}this.err!==r.Z_OK&&this._error("Failed to reset stream")},r.Zlib=c}).call(this,t("_process"),t("buffer").Buffer)},{_process:118,assert:41,buffer:48,"pako/lib/zlib/constants":52,"pako/lib/zlib/deflate.js":54,"pako/lib/zlib/inflate.js":56,"pako/lib/zlib/zstream":60}],46:[function(t,e,r){(function(e){"use strict";var n=t("buffer").Buffer,i=t("stream").Transform,o=t("./binding"),a=t("util"),s=t("assert").ok,l=t("buffer").kMaxLength,u="Cannot create final Buffer. It would be larger than 0x"+l.toString(16)+" bytes";o.Z_MIN_WINDOWBITS=8,o.Z_MAX_WINDOWBITS=15,o.Z_DEFAULT_WINDOWBITS=15,o.Z_MIN_CHUNK=64,o.Z_MAX_CHUNK=1/0,o.Z_DEFAULT_CHUNK=16384,o.Z_MIN_MEMLEVEL=1,o.Z_MAX_MEMLEVEL=9,o.Z_DEFAULT_MEMLEVEL=8,o.Z_MIN_LEVEL=-1,o.Z_MAX_LEVEL=9,o.Z_DEFAULT_LEVEL=o.Z_DEFAULT_COMPRESSION;for(var c=Object.keys(o),f=0;f=l?a=new RangeError(u):e=n.concat(i,o),i=[],t.close(),r(a,e)}t.on("error",function(e){t.removeListener("end",s),t.removeListener("readable",a),r(e)}),t.on("end",s),t.end(e),a()}function _(t,e){if("string"==typeof e&&(e=n.from(e)),!n.isBuffer(e))throw new TypeError("Not a string or buffer");var r=t._finishFlushFlag;return t._processChunk(e,r)}function y(t){if(!(this instanceof y))return new y(t);P.call(this,t,o.DEFLATE)}function b(t){if(!(this instanceof b))return new b(t);P.call(this,t,o.INFLATE)}function w(t){if(!(this instanceof w))return new w(t);P.call(this,t,o.GZIP)}function k(t){if(!(this instanceof k))return new k(t);P.call(this,t,o.GUNZIP)}function x(t){if(!(this instanceof x))return new x(t);P.call(this,t,o.DEFLATERAW)}function B(t){if(!(this instanceof B))return new B(t);P.call(this,t,o.INFLATERAW)}function C(t){if(!(this instanceof C))return new C(t);P.call(this,t,o.UNZIP)}function E(t){return t===o.Z_NO_FLUSH||t===o.Z_PARTIAL_FLUSH||t===o.Z_SYNC_FLUSH||t===o.Z_FULL_FLUSH||t===o.Z_FINISH||t===o.Z_BLOCK}function P(t,e){var a=this;if(this._opts=t=t||{},this._chunkSize=t.chunkSize||r.Z_DEFAULT_CHUNK,i.call(this,t),t.flush&&!E(t.flush))throw new Error("Invalid flush flag: "+t.flush);if(t.finishFlush&&!E(t.finishFlush))throw new Error("Invalid flush flag: "+t.finishFlush);if(this._flushFlag=t.flush||o.Z_NO_FLUSH,this._finishFlushFlag=void 0!==t.finishFlush?t.finishFlush:o.Z_FINISH,t.chunkSize&&(t.chunkSizer.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+t.chunkSize);if(t.windowBits&&(t.windowBitsr.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+t.windowBits);if(t.level&&(t.levelr.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+t.level);if(t.memLevel&&(t.memLevelr.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+t.memLevel);if(t.strategy&&t.strategy!=r.Z_FILTERED&&t.strategy!=r.Z_HUFFMAN_ONLY&&t.strategy!=r.Z_RLE&&t.strategy!=r.Z_FIXED&&t.strategy!=r.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+t.strategy);if(t.dictionary&&!n.isBuffer(t.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new o.Zlib(e);var s=this;this._hadError=!1,this._handle.onerror=function(t,e){j(s),s._hadError=!0;var n=new Error(t);n.errno=e,n.code=r.codes[e],s.emit("error",n)};var l=r.Z_DEFAULT_COMPRESSION;"number"==typeof t.level&&(l=t.level);var u=r.Z_DEFAULT_STRATEGY;"number"==typeof t.strategy&&(u=t.strategy),this._handle.init(t.windowBits||r.Z_DEFAULT_WINDOWBITS,l,t.memLevel||r.Z_DEFAULT_MEMLEVEL,u,t.dictionary),this._buffer=n.allocUnsafe(this._chunkSize),this._offset=0,this._level=l,this._strategy=u,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!a._handle},configurable:!0,enumerable:!0})}function j(t,r){r&&e.nextTick(r),t._handle&&(t._handle.close(),t._handle=null)}function S(t){t.emit("close")}Object.defineProperty(r,"codes",{enumerable:!0,value:Object.freeze(p),writable:!1}),r.Deflate=y,r.Inflate=b,r.Gzip=w,r.Gunzip=k,r.DeflateRaw=x,r.InflateRaw=B,r.Unzip=C,r.createDeflate=function(t){return new y(t)},r.createInflate=function(t){return new b(t)},r.createDeflateRaw=function(t){return new x(t)},r.createInflateRaw=function(t){return new B(t)},r.createGzip=function(t){return new w(t)},r.createGunzip=function(t){return new k(t)},r.createUnzip=function(t){return new C(t)},r.deflate=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new y(e),t,r)},r.deflateSync=function(t,e){return _(new y(e),t)},r.gzip=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new w(e),t,r)},r.gzipSync=function(t,e){return _(new w(e),t)},r.deflateRaw=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new x(e),t,r)},r.deflateRawSync=function(t,e){return _(new x(e),t)},r.unzip=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new C(e),t,r)},r.unzipSync=function(t,e){return _(new C(e),t)},r.inflate=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new b(e),t,r)},r.inflateSync=function(t,e){return _(new b(e),t)},r.gunzip=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new k(e),t,r)},r.gunzipSync=function(t,e){return _(new k(e),t)},r.inflateRaw=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new B(e),t,r)},r.inflateRawSync=function(t,e){return _(new B(e),t)},a.inherits(P,i),P.prototype.params=function(t,n,i){if(tr.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+t);if(n!=r.Z_FILTERED&&n!=r.Z_HUFFMAN_ONLY&&n!=r.Z_RLE&&n!=r.Z_FIXED&&n!=r.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+n);if(this._level!==t||this._strategy!==n){var a=this;this.flush(o.Z_SYNC_FLUSH,function(){s(a._handle,"zlib binding closed"),a._handle.params(t,n),a._hadError||(a._level=t,a._strategy=n,i&&i())})}else e.nextTick(i)},P.prototype.reset=function(){return s(this._handle,"zlib binding closed"),this._handle.reset()},P.prototype._flush=function(t){this._transform(n.alloc(0),"",t)},P.prototype.flush=function(t,r){var i=this,a=this._writableState;("function"==typeof t||void 0===t&&!r)&&(r=t,t=o.Z_FULL_FLUSH),a.ended?r&&e.nextTick(r):a.ending?r&&this.once("end",r):a.needDrain?r&&this.once("drain",function(){return i.flush(t,r)}):(this._flushFlag=t,this.write(n.alloc(0),"",r))},P.prototype.close=function(t){j(this,t),e.nextTick(S,this)},P.prototype._transform=function(t,e,r){var i,a=this._writableState,s=(a.ending||a.ended)&&(!t||a.length===t.length);return null===t||n.isBuffer(t)?this._handle?(s?i=this._finishFlushFlag:(i=this._flushFlag,t.length>=a.length&&(this._flushFlag=this._opts.flush||o.Z_NO_FLUSH)),void this._processChunk(t,i,r)):r(new Error("zlib binding closed")):r(new Error("invalid input"))},P.prototype._processChunk=function(t,e,r){var i=t&&t.length,o=this._chunkSize-this._offset,a=0,c=this,f="function"==typeof r;if(!f){var h,p=[],d=0;this.on("error",function(t){h=t}),s(this._handle,"zlib binding closed");do{var g=this._handle.writeSync(e,t,a,i,this._buffer,this._offset,o)}while(!this._hadError&&_(g[0],g[1]));if(this._hadError)throw h;if(d>=l)throw j(this),new RangeError(u);var m=n.concat(p,d);return j(this),m}s(this._handle,"zlib binding closed");var v=this._handle.write(e,t,a,i,this._buffer,this._offset,o);function _(l,u){if(this&&(this.buffer=null,this.callback=null),!c._hadError){var h=o-u;if(s(h>=0,"have should not go down"),h>0){var g=c._buffer.slice(c._offset,c._offset+h);c._offset+=h,f?c.push(g):(p.push(g),d+=g.length)}if((0===u||c._offset>=c._chunkSize)&&(o=c._chunkSize,c._offset=0,c._buffer=n.allocUnsafe(c._chunkSize)),0===u){if(a+=i-l,i=l,!f)return!0;var m=c._handle.write(e,t,a,i,c._buffer,c._offset,c._chunkSize);return m.callback=_,void(m.buffer=t)}if(!f)return!1;r()}}v.buffer=t,v.callback=_},a.inherits(y,P),a.inherits(b,P),a.inherits(w,P),a.inherits(k,P),a.inherits(x,P),a.inherits(B,P),a.inherits(C,P)}).call(this,t("_process"))},{"./binding":45,_process:118,assert:41,buffer:48,stream:169,util:180}],47:[function(t,e,r){arguments[4][4][0].apply(r,arguments)},{dup:4}],48:[function(t,e,r){"use strict";var n=t("base64-js"),i=t("ieee754");r.Buffer=s,r.SlowBuffer=function(t){+t!=t&&(t=0);return s.alloc(+t)},r.INSPECT_MAX_BYTES=50;var o=2147483647;function a(t){if(t>o)throw new RangeError("Invalid typed array length");var e=new Uint8Array(t);return e.__proto__=s.prototype,e}function s(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return c(t)}return l(t,e,r)}function l(t,e,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return U(t)?function(t,e,r){if(e<0||t.byteLength=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function p(t,e){if(s.isBuffer(t))return t.length;if(z(t)||U(t))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return O(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return D(t).length;default:if(n)return O(t).length;e=(""+e).toLowerCase(),n=!0}}function d(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function g(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),q(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=s.from(e,n)),s.isBuffer(e))return 0===e.length?-1:m(t,e,r,n,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):m(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function m(t,e,r,n,i){var o,a=1,s=t.length,l=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;a=2,s/=2,l/=2,r/=2}function u(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){var c=-1;for(o=r;os&&(r=s-l),o=r;o>=0;o--){for(var f=!0,h=0;hi&&(n=i):n=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var a=0;a>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function x(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function B(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:u>223?3:u>191?2:1;if(i+f<=r)switch(f){case 1:u<128&&(c=u);break;case 2:128==(192&(o=t[i+1]))&&(l=(31&u)<<6|63&o)>127&&(c=l);break;case 3:o=t[i+1],a=t[i+2],128==(192&o)&&128==(192&a)&&(l=(15&u)<<12|(63&o)<<6|63&a)>2047&&(l<55296||l>57343)&&(c=l);break;case 4:o=t[i+1],a=t[i+2],s=t[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(l=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&l<1114112&&(c=l)}null===c?(c=65533,f=1):c>65535&&(c-=65536,n.push(c>>>10&1023|55296),c=56320|1023&c),n.push(c),i+=f}return function(t){var e=t.length;if(e<=C)return String.fromCharCode.apply(String,t);var r="",n=0;for(;nthis.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return j(this,e,r);case"utf8":case"utf-8":return B(this,e,r);case"ascii":return E(this,e,r);case"latin1":case"binary":return P(this,e,r);case"base64":return x(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}.apply(this,arguments)},s.prototype.equals=function(t){if(!s.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===s.compare(this,t)},s.prototype.inspect=function(){var t="",e=r.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,e).match(/.{2}/g).join(" "),this.length>e&&(t+=" ... ")),""},s.prototype.compare=function(t,e,r,n,i){if(!s.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(e>>>=0,r>>>=0,n>>>=0,i>>>=0,this===t)return 0;for(var o=i-n,a=r-e,l=Math.min(o,a),u=this.slice(n,i),c=t.slice(e,r),f=0;f>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return v(this,t,e,r);case"utf8":case"utf-8":return _(this,t,e,r);case"ascii":return y(this,t,e,r);case"latin1":case"binary":return b(this,t,e,r);case"base64":return w(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},s.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var C=4096;function E(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;in)&&(r=n);for(var i="",o=e;or)throw new RangeError("Trying to access beyond buffer length")}function M(t,e,r,n,i,o){if(!s.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function A(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function I(t,e,r,n,o){return e=+e,r>>>=0,o||A(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function R(t,e,r,n,o){return e=+e,r>>>=0,o||A(t,0,r,8),i.write(t,e,r,n,52,8),r+8}s.prototype.slice=function(t,e){var r=this.length;t=~~t,e=void 0===e?r:~~e,t<0?(t+=r)<0&&(t=0):t>r&&(t=r),e<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||T(t,e,this.length);for(var n=this[t],i=1,o=0;++o>>=0,e>>>=0,r||T(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},s.prototype.readUInt8=function(t,e){return t>>>=0,e||T(t,1,this.length),this[t]},s.prototype.readUInt16LE=function(t,e){return t>>>=0,e||T(t,2,this.length),this[t]|this[t+1]<<8},s.prototype.readUInt16BE=function(t,e){return t>>>=0,e||T(t,2,this.length),this[t]<<8|this[t+1]},s.prototype.readUInt32LE=function(t,e){return t>>>=0,e||T(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},s.prototype.readUInt32BE=function(t,e){return t>>>=0,e||T(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},s.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||T(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},s.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||T(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},s.prototype.readInt8=function(t,e){return t>>>=0,e||T(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},s.prototype.readInt16LE=function(t,e){t>>>=0,e||T(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},s.prototype.readInt16BE=function(t,e){t>>>=0,e||T(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},s.prototype.readInt32LE=function(t,e){return t>>>=0,e||T(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},s.prototype.readInt32BE=function(t,e){return t>>>=0,e||T(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},s.prototype.readFloatLE=function(t,e){return t>>>=0,e||T(t,4,this.length),i.read(this,t,!0,23,4)},s.prototype.readFloatBE=function(t,e){return t>>>=0,e||T(t,4,this.length),i.read(this,t,!1,23,4)},s.prototype.readDoubleLE=function(t,e){return t>>>=0,e||T(t,8,this.length),i.read(this,t,!0,52,8)},s.prototype.readDoubleBE=function(t,e){return t>>>=0,e||T(t,8,this.length),i.read(this,t,!1,52,8)},s.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e>>>=0,r>>>=0,n)||M(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o>>=0,r>>>=0,n)||M(this,t,e,r,Math.pow(2,8*r)-1,0);var i=r-1,o=1;for(this[e+i]=255&t;--i>=0&&(o*=256);)this[e+i]=t/o&255;return e+r},s.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,1,255,0),this[e]=255&t,e+1},s.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},s.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},s.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},s.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},s.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,t,e,r,i-1,-i)}var o=0,a=1,s=0;for(this[e]=255&t;++o>0)-s&255;return e+r},s.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,t,e,r,i-1,-i)}var o=r-1,a=1,s=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===s&&0!==this[e+o+1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+r},s.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},s.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},s.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},s.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},s.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},s.prototype.writeFloatLE=function(t,e,r){return I(this,t,e,!0,r)},s.prototype.writeFloatBE=function(t,e,r){return I(this,t,e,!1,r)},s.prototype.writeDoubleLE=function(t,e,r){return R(this,t,e,!0,r)},s.prototype.writeDoubleBE=function(t,e,r){return R(this,t,e,!1,r)},s.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(o<1e3)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function D(t){return n.toByteArray(function(t){if((t=t.trim().replace(L,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function N(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function U(t){return t instanceof ArrayBuffer||null!=t&&null!=t.constructor&&"ArrayBuffer"===t.constructor.name&&"number"==typeof t.byteLength}function z(t){return"function"==typeof ArrayBuffer.isView&&ArrayBuffer.isView(t)}function q(t){return t!=t}},{"base64-js":1,ieee754:61}],49:[function(t,e,r){var n=Object.create||function(t){var e=function(){};return e.prototype=t,new e},i=Object.keys||function(t){var e=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.push(r);return r},o=Function.prototype.bind||function(t){var e=this;return function(){return e.apply(t,arguments)}};function a(){this._events&&Object.prototype.hasOwnProperty.call(this,"_events")||(this._events=n(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0}e.exports=a,a.EventEmitter=a,a.prototype._events=void 0,a.prototype._maxListeners=void 0;var s,l=10;try{var u={};Object.defineProperty&&Object.defineProperty(u,"x",{value:0}),s=0===u.x}catch(t){s=!1}function c(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function f(t,e,r,i){var o,a,s;if("function"!=typeof r)throw new TypeError('"listener" argument must be a function');if((a=t._events)?(a.newListener&&(t.emit("newListener",e,r.listener?r.listener:r),a=t._events),s=a[e]):(a=t._events=n(null),t._eventsCount=0),s){if("function"==typeof s?s=a[e]=i?[r,s]:[s,r]:i?s.unshift(r):s.push(r),!s.warned&&(o=c(t))&&o>0&&s.length>o){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+' "'+String(e)+'" listeners added. Use emitter.setMaxListeners() to increase limit.');l.name="MaxListenersExceededWarning",l.emitter=t,l.type=e,l.count=s.length,"object"==typeof console&&console.warn&&console.warn("%s: %s",l.name,l.message)}}else s=a[e]=r,++t._eventsCount;return t}function h(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var t=new Array(arguments.length),e=0;e1&&(e=arguments[1]),e instanceof Error)throw e;var l=new Error('Unhandled "error" event. ('+e+")");throw l.context=e,l}if(!(r=a[t]))return!1;var u="function"==typeof r;switch(n=arguments.length){case 1:!function(t,e,r){if(e)t.call(r);else for(var n=t.length,i=m(t,n),o=0;o=0;a--)if(r[a]===e||r[a].listener===e){s=r[a].listener,o=a;break}if(o<0)return this;0===o?r.shift():function(t,e){for(var r=e,n=r+1,i=t.length;n=0;o--)this.removeListener(t,e[o]);return this},a.prototype.listeners=function(t){return d(this,t,!0)},a.prototype.rawListeners=function(t){return d(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):g.call(t,e)},a.prototype.listenerCount=g,a.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]}},{}],50:[function(t,e,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function i(t,e){return Object.prototype.hasOwnProperty.call(t,e)}r.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var r=e.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var n in r)i(r,n)&&(t[n]=r[n])}}return t},r.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var o={arraySet:function(t,e,r,n,i){if(e.subarray&&t.subarray)t.set(e.subarray(r,r+n),i);else for(var o=0;o>>16&65535|0,a=0;0!==r;){r-=a=r>2e3?2e3:r;do{o=o+(i=i+e[n++]|0)|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}},{}],52:[function(t,e,r){"use strict";e.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}},{}],53:[function(t,e,r){"use strict";var n=function(){for(var t,e=[],r=0;r<256;r++){t=r;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[r]=t}return e}();e.exports=function(t,e,r,i){var o=n,a=i+r;t^=-1;for(var s=i;s>>8^o[255&(t^e[s])];return-1^t}},{}],54:[function(t,e,r){"use strict";var n,i=t("../utils/common"),o=t("./trees"),a=t("./adler32"),s=t("./crc32"),l=t("./messages"),u=0,c=1,f=3,h=4,p=5,d=0,g=1,m=-2,v=-3,_=-5,y=-1,b=1,w=2,k=3,x=4,B=0,C=2,E=8,P=9,j=15,S=8,T=286,M=30,A=19,I=2*T+1,R=15,L=3,F=258,O=F+L+1,D=32,N=42,U=69,z=73,q=91,V=103,H=113,G=666,W=1,Z=2,Y=3,X=4,$=3;function J(t,e){return t.msg=l[e],e}function K(t){return(t<<1)-(t>4?9:0)}function Q(t){for(var e=t.length;--e>=0;)t[e]=0}function tt(t){var e=t.state,r=e.pending;r>t.avail_out&&(r=t.avail_out),0!==r&&(i.arraySet(t.output,e.pending_buf,e.pending_out,r,t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,0===e.pending&&(e.pending_out=0))}function et(t,e){o._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,tt(t.strm)}function rt(t,e){t.pending_buf[t.pending++]=e}function nt(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function it(t,e){var r,n,i=t.max_chain_length,o=t.strstart,a=t.prev_length,s=t.nice_match,l=t.strstart>t.w_size-O?t.strstart-(t.w_size-O):0,u=t.window,c=t.w_mask,f=t.prev,h=t.strstart+F,p=u[o+a-1],d=u[o+a];t.prev_length>=t.good_match&&(i>>=2),s>t.lookahead&&(s=t.lookahead);do{if(u[(r=e)+a]===d&&u[r+a-1]===p&&u[r]===u[o]&&u[++r]===u[o+1]){o+=2,r++;do{}while(u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&oa){if(t.match_start=e,a=n,n>=s)break;p=u[o+a-1],d=u[o+a]}}}while((e=f[e&c])>l&&0!=--i);return a<=t.lookahead?a:t.lookahead}function ot(t){var e,r,n,o,l,u,c,f,h,p,d=t.w_size;do{if(o=t.window_size-t.lookahead-t.strstart,t.strstart>=d+(d-O)){i.arraySet(t.window,t.window,d,d,0),t.match_start-=d,t.strstart-=d,t.block_start-=d,e=r=t.hash_size;do{n=t.head[--e],t.head[e]=n>=d?n-d:0}while(--r);e=r=d;do{n=t.prev[--e],t.prev[e]=n>=d?n-d:0}while(--r);o+=d}if(0===t.strm.avail_in)break;if(u=t.strm,c=t.window,f=t.strstart+t.lookahead,h=o,p=void 0,(p=u.avail_in)>h&&(p=h),r=0===p?0:(u.avail_in-=p,i.arraySet(c,u.input,u.next_in,p,f),1===u.state.wrap?u.adler=a(u.adler,c,p,f):2===u.state.wrap&&(u.adler=s(u.adler,c,p,f)),u.next_in+=p,u.total_in+=p,p),t.lookahead+=r,t.lookahead+t.insert>=L)for(l=t.strstart-t.insert,t.ins_h=t.window[l],t.ins_h=(t.ins_h<=L&&(t.ins_h=(t.ins_h<=L)if(n=o._tr_tally(t,t.strstart-t.match_start,t.match_length-L),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=L){t.match_length--;do{t.strstart++,t.ins_h=(t.ins_h<=L&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=L-1)),t.prev_length>=L&&t.match_length<=t.prev_length){i=t.strstart+t.lookahead-L,n=o._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-L),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=i&&(t.ins_h=(t.ins_h<15&&(s=2,n-=16),o<1||o>P||r!==E||n<8||n>15||e<0||e>9||a<0||a>x)return J(t,m);8===n&&(n=9);var l=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=E,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*I),this.dyn_dtree=new i.Buf16(2*(2*M+1)),this.bl_tree=new i.Buf16(2*(2*A+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(R+1),this.heap=new i.Buf16(2*T+1),Q(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*T+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 t.state=l,l.strm=t,l.wrap=s,l.gzhead=null,l.w_bits=n,l.w_size=1<t.pending_buf_size-5&&(r=t.pending_buf_size-5);;){if(t.lookahead<=1){if(ot(t),0===t.lookahead&&e===u)return W;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var n=t.block_start+r;if((0===t.strstart||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,et(t,!1),0===t.strm.avail_out))return W;if(t.strstart-t.block_start>=t.w_size-O&&(et(t,!1),0===t.strm.avail_out))return W}return t.insert=0,e===h?(et(t,!0),0===t.strm.avail_out?Y:X):(t.strstart>t.block_start&&(et(t,!1),t.strm.avail_out),W)}),new lt(4,4,8,4,at),new lt(4,5,16,8,at),new lt(4,6,32,32,at),new lt(4,4,16,16,st),new lt(8,16,32,32,st),new lt(8,16,128,128,st),new lt(8,32,128,256,st),new lt(32,128,258,1024,st),new lt(32,258,258,4096,st)],r.deflateInit=function(t,e){return ft(t,e,E,j,S,B)},r.deflateInit2=ft,r.deflateReset=ct,r.deflateResetKeep=ut,r.deflateSetHeader=function(t,e){return t&&t.state?2!==t.state.wrap?m:(t.state.gzhead=e,d):m},r.deflate=function(t,e){var r,i,a,l;if(!t||!t.state||e>p||e<0)return t?J(t,m):m;if(i=t.state,!t.output||!t.input&&0!==t.avail_in||i.status===G&&e!==h)return J(t,0===t.avail_out?_:m);if(i.strm=t,r=i.last_flush,i.last_flush=e,i.status===N)if(2===i.wrap)t.adler=0,rt(i,31),rt(i,139),rt(i,8),i.gzhead?(rt(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)),rt(i,255&i.gzhead.time),rt(i,i.gzhead.time>>8&255),rt(i,i.gzhead.time>>16&255),rt(i,i.gzhead.time>>24&255),rt(i,9===i.level?2:i.strategy>=w||i.level<2?4:0),rt(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(rt(i,255&i.gzhead.extra.length),rt(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(t.adler=s(t.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=U):(rt(i,0),rt(i,0),rt(i,0),rt(i,0),rt(i,0),rt(i,9===i.level?2:i.strategy>=w||i.level<2?4:0),rt(i,$),i.status=H);else{var v=E+(i.w_bits-8<<4)<<8;v|=(i.strategy>=w||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(v|=D),v+=31-v%31,i.status=H,nt(i,v),0!==i.strstart&&(nt(i,t.adler>>>16),nt(i,65535&t.adler)),t.adler=1}if(i.status===U)if(i.gzhead.extra){for(a=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),tt(t),a=i.pending,i.pending!==i.pending_buf_size));)rt(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=z)}else i.status=z;if(i.status===z)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),tt(t),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.gzindex=0,i.status=q)}else i.status=q;if(i.status===q)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),tt(t),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.status=V)}else i.status=V;if(i.status===V&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&tt(t),i.pending+2<=i.pending_buf_size&&(rt(i,255&t.adler),rt(i,t.adler>>8&255),t.adler=0,i.status=H)):i.status=H),0!==i.pending){if(tt(t),0===t.avail_out)return i.last_flush=-1,d}else if(0===t.avail_in&&K(e)<=K(r)&&e!==h)return J(t,_);if(i.status===G&&0!==t.avail_in)return J(t,_);if(0!==t.avail_in||0!==i.lookahead||e!==u&&i.status!==G){var y=i.strategy===w?function(t,e){for(var r;;){if(0===t.lookahead&&(ot(t),0===t.lookahead)){if(e===u)return W;break}if(t.match_length=0,r=o._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(et(t,!1),0===t.strm.avail_out))return W}return t.insert=0,e===h?(et(t,!0),0===t.strm.avail_out?Y:X):t.last_lit&&(et(t,!1),0===t.strm.avail_out)?W:Z}(i,e):i.strategy===k?function(t,e){for(var r,n,i,a,s=t.window;;){if(t.lookahead<=F){if(ot(t),t.lookahead<=F&&e===u)return W;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=L&&t.strstart>0&&(n=s[i=t.strstart-1])===s[++i]&&n===s[++i]&&n===s[++i]){a=t.strstart+F;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&it.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=L?(r=o._tr_tally(t,1,t.match_length-L),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=o._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(et(t,!1),0===t.strm.avail_out))return W}return t.insert=0,e===h?(et(t,!0),0===t.strm.avail_out?Y:X):t.last_lit&&(et(t,!1),0===t.strm.avail_out)?W:Z}(i,e):n[i.level].func(i,e);if(y!==Y&&y!==X||(i.status=G),y===W||y===Y)return 0===t.avail_out&&(i.last_flush=-1),d;if(y===Z&&(e===c?o._tr_align(i):e!==p&&(o._tr_stored_block(i,0,0,!1),e===f&&(Q(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),tt(t),0===t.avail_out))return i.last_flush=-1,d}return e!==h?d:i.wrap<=0?g:(2===i.wrap?(rt(i,255&t.adler),rt(i,t.adler>>8&255),rt(i,t.adler>>16&255),rt(i,t.adler>>24&255),rt(i,255&t.total_in),rt(i,t.total_in>>8&255),rt(i,t.total_in>>16&255),rt(i,t.total_in>>24&255)):(nt(i,t.adler>>>16),nt(i,65535&t.adler)),tt(t),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?d:g)},r.deflateEnd=function(t){var e;return t&&t.state?(e=t.state.status)!==N&&e!==U&&e!==z&&e!==q&&e!==V&&e!==H&&e!==G?J(t,m):(t.state=null,e===H?J(t,v):d):m},r.deflateSetDictionary=function(t,e){var r,n,o,s,l,u,c,f,h=e.length;if(!t||!t.state)return m;if(2===(s=(r=t.state).wrap)||1===s&&r.status!==N||r.lookahead)return m;for(1===s&&(t.adler=a(t.adler,e,h,0)),r.wrap=0,h>=r.w_size&&(0===s&&(Q(r.head),r.strstart=0,r.block_start=0,r.insert=0),f=new i.Buf8(r.w_size),i.arraySet(f,e,h-r.w_size,r.w_size,0),e=f,h=r.w_size),l=t.avail_in,u=t.next_in,c=t.input,t.avail_in=h,t.next_in=0,t.input=e,ot(r);r.lookahead>=L;){n=r.strstart,o=r.lookahead-(L-1);do{r.ins_h=(r.ins_h<>>=b=y>>>24,d-=b,0===(b=y>>>16&255))E[o++]=65535&y;else{if(!(16&b)){if(0==(64&b)){y=g[(65535&y)+(p&(1<>>=b,d-=b),d<15&&(p+=C[n++]<>>=b=y>>>24,d-=b,!(16&(b=y>>>16&255))){if(0==(64&b)){y=m[(65535&y)+(p&(1<l){t.msg="invalid distance too far back",r.mode=30;break t}if(p>>>=b,d-=b,k>(b=o-a)){if((b=k-b)>c&&r.sane){t.msg="invalid distance too far back",r.mode=30;break t}if(x=0,B=h,0===f){if(x+=u-b,b2;)E[o++]=B[x++],E[o++]=B[x++],E[o++]=B[x++],w-=3;w&&(E[o++]=B[x++],w>1&&(E[o++]=B[x++]))}else{x=o-k;do{E[o++]=E[x++],E[o++]=E[x++],E[o++]=E[x++],w-=3}while(w>2);w&&(E[o++]=E[x++],w>1&&(E[o++]=E[x++]))}break}}break}}while(n>3,p&=(1<<(d-=w<<3))-1,t.next_in=n,t.next_out=o,t.avail_in=n>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24)}function it(t){var e;return t&&t.state?(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=k,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new n.Buf32(tt),e.distcode=e.distdyn=new n.Buf32(et),e.sane=1,e.back=-1,d):v}function ot(t){var e;return t&&t.state?((e=t.state).wsize=0,e.whave=0,e.wnext=0,it(t)):v}function at(t,e){var r,n;return t&&t.state?(n=t.state,e<0?(r=0,e=-e):(r=1+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?v:(null!==n.window&&n.wbits!==e&&(n.window=null),n.wrap=r,n.wbits=e,ot(t))):v}function st(t,e){var r,i;return t?(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 n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0},t.state=i,i.window=null,(r=at(t,e))!==d&&(t.state=null),r):v}var lt,ut,ct=!0;function ft(t){if(ct){var e;for(lt=new n.Buf32(512),ut=new n.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(s(u,t.lens,0,288,lt,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;s(c,t.lens,0,32,ut,0,t.work,{bits:5}),ct=!1}t.lencode=lt,t.lenbits=9,t.distcode=ut,t.distbits=5}function ht(t,e,r,i){var o,a=t.state;return null===a.window&&(a.wsize=1<=a.wsize?(n.arraySet(a.window,e,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):((o=a.wsize-a.wnext)>i&&(o=i),n.arraySet(a.window,e,r-i,o,a.wnext),(i-=o)?(n.arraySet(a.window,e,r-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=o,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,r.check=o(r.check,Pt,2,0),st=0,lt=0,r.mode=x;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&st)<<8)+(st>>8))%31){t.msg="incorrect header check",r.mode=J;break}if((15&st)!==w){t.msg="unknown compression method",r.mode=J;break}if(lt-=4,kt=8+(15&(st>>>=4)),0===r.wbits)r.wbits=kt;else if(kt>r.wbits){t.msg="invalid window size",r.mode=J;break}r.dmax=1<>8&1),512&r.flags&&(Pt[0]=255&st,Pt[1]=st>>>8&255,r.check=o(r.check,Pt,2,0)),st=0,lt=0,r.mode=B;case B:for(;lt<32;){if(0===ot)break t;ot--,st+=tt[rt++]<>>8&255,Pt[2]=st>>>16&255,Pt[3]=st>>>24&255,r.check=o(r.check,Pt,4,0)),st=0,lt=0,r.mode=C;case C:for(;lt<16;){if(0===ot)break t;ot--,st+=tt[rt++]<>8),512&r.flags&&(Pt[0]=255&st,Pt[1]=st>>>8&255,r.check=o(r.check,Pt,2,0)),st=0,lt=0,r.mode=E;case E:if(1024&r.flags){for(;lt<16;){if(0===ot)break t;ot--,st+=tt[rt++]<>>8&255,r.check=o(r.check,Pt,2,0)),st=0,lt=0}else r.head&&(r.head.extra=null);r.mode=P;case P:if(1024&r.flags&&((pt=r.length)>ot&&(pt=ot),pt&&(r.head&&(kt=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,tt,rt,pt,kt)),512&r.flags&&(r.check=o(r.check,tt,pt,rt)),ot-=pt,rt+=pt,r.length-=pt),r.length))break t;r.length=0,r.mode=j;case j:if(2048&r.flags){if(0===ot)break t;pt=0;do{kt=tt[rt+pt++],r.head&&kt&&r.length<65536&&(r.head.name+=String.fromCharCode(kt))}while(kt&&pt>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=I;break;case M:for(;lt<32;){if(0===ot)break t;ot--,st+=tt[rt++]<>>=7<,lt-=7<,r.mode=Y;break}for(;lt<3;){if(0===ot)break t;ot--,st+=tt[rt++]<>>=1)){case 0:r.mode=L;break;case 1:if(ft(r),r.mode=z,e===p){st>>>=2,lt-=2;break t}break;case 2:r.mode=D;break;case 3:t.msg="invalid block type",r.mode=J}st>>>=2,lt-=2;break;case L:for(st>>>=7<,lt-=7<lt<32;){if(0===ot)break t;ot--,st+=tt[rt++]<>>16^65535)){t.msg="invalid stored block lengths",r.mode=J;break}if(r.length=65535&st,st=0,lt=0,r.mode=F,e===p)break t;case F:r.mode=O;case O:if(pt=r.length){if(pt>ot&&(pt=ot),pt>at&&(pt=at),0===pt)break t;n.arraySet(et,tt,rt,pt,it),ot-=pt,rt+=pt,at-=pt,it+=pt,r.length-=pt;break}r.mode=I;break;case D:for(;lt<14;){if(0===ot)break t;ot--,st+=tt[rt++]<>>=5,lt-=5,r.ndist=1+(31&st),st>>>=5,lt-=5,r.ncode=4+(15&st),st>>>=4,lt-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=J;break}r.have=0,r.mode=N;case N:for(;r.have>>=3,lt-=3}for(;r.have<19;)r.lens[jt[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,Bt={bits:r.lenbits},xt=s(l,r.lens,0,19,r.lencode,0,r.work,Bt),r.lenbits=Bt.bits,xt){t.msg="invalid code lengths set",r.mode=J;break}r.have=0,r.mode=U;case U:for(;r.have>>16&255,_t=65535&Et,!((mt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>>=mt,lt-=mt,r.lens[r.have++]=_t;else{if(16===_t){for(Ct=mt+2;lt>>=mt,lt-=mt,0===r.have){t.msg="invalid bit length repeat",r.mode=J;break}kt=r.lens[r.have-1],pt=3+(3&st),st>>>=2,lt-=2}else if(17===_t){for(Ct=mt+3;lt>>=mt)),st>>>=3,lt-=3}else{for(Ct=mt+7;lt>>=mt)),st>>>=7,lt-=7}if(r.have+pt>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=J;break}for(;pt--;)r.lens[r.have++]=kt}}if(r.mode===J)break;if(0===r.lens[256]){t.msg="invalid code -- missing end-of-block",r.mode=J;break}if(r.lenbits=9,Bt={bits:r.lenbits},xt=s(u,r.lens,0,r.nlen,r.lencode,0,r.work,Bt),r.lenbits=Bt.bits,xt){t.msg="invalid literal/lengths set",r.mode=J;break}if(r.distbits=6,r.distcode=r.distdyn,Bt={bits:r.distbits},xt=s(c,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,Bt),r.distbits=Bt.bits,xt){t.msg="invalid distances set",r.mode=J;break}if(r.mode=z,e===p)break t;case z:r.mode=q;case q:if(ot>=6&&at>=258){t.next_out=it,t.avail_out=at,t.next_in=rt,t.avail_in=ot,r.hold=st,r.bits=lt,a(t,ct),it=t.next_out,et=t.output,at=t.avail_out,rt=t.next_in,tt=t.input,ot=t.avail_in,st=r.hold,lt=r.bits,r.mode===I&&(r.back=-1);break}for(r.back=0;vt=(Et=r.lencode[st&(1<>>16&255,_t=65535&Et,!((mt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>yt)])>>>16&255,_t=65535&Et,!(yt+(mt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>>=yt,lt-=yt,r.back+=yt}if(st>>>=mt,lt-=mt,r.back+=mt,r.length=_t,0===vt){r.mode=Z;break}if(32&vt){r.back=-1,r.mode=I;break}if(64&vt){t.msg="invalid literal/length code",r.mode=J;break}r.extra=15&vt,r.mode=V;case V:if(r.extra){for(Ct=r.extra;lt>>=r.extra,lt-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=H;case H:for(;vt=(Et=r.distcode[st&(1<>>16&255,_t=65535&Et,!((mt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>yt)])>>>16&255,_t=65535&Et,!(yt+(mt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>>=yt,lt-=yt,r.back+=yt}if(st>>>=mt,lt-=mt,r.back+=mt,64&vt){t.msg="invalid distance code",r.mode=J;break}r.offset=_t,r.extra=15&vt,r.mode=G;case G:if(r.extra){for(Ct=r.extra;lt>>=r.extra,lt-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=J;break}r.mode=W;case W:if(0===at)break t;if(pt=ct-at,r.offset>pt){if((pt=r.offset-pt)>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=J;break}pt>r.wnext?(pt-=r.wnext,dt=r.wsize-pt):dt=r.wnext-pt,pt>r.length&&(pt=r.length),gt=r.window}else gt=et,dt=it-r.offset,pt=r.length;pt>at&&(pt=at),at-=pt,r.length-=pt;do{et[it++]=gt[dt++]}while(--pt);0===r.length&&(r.mode=q);break;case Z:if(0===at)break t;et[it++]=r.length,at--,r.mode=q;break;case Y:if(r.wrap){for(;lt<32;){if(0===ot)break t;ot--,st|=tt[rt++]<=1&&0===L[E];E--);if(P>E&&(P=E),0===E)return u[c++]=20971520,u[c++]=20971520,h.bits=1,0;for(C=1;C0&&(0===t||1!==E))return-1;for(F[1]=0,x=1;x<15;x++)F[x+1]=F[x]+L[x];for(B=0;B852||2===t&&M>592)return 1;for(;;){y=x-S,f[B]<_?(b=0,w=f[B]):f[B]>_?(b=O[D+f[B]],w=I[R+f[B]]):(b=96,w=0),p=1<>S)+(d-=p)]=y<<24|b<<16|w|0}while(0!==d);for(p=1<>=1;if(0!==p?(A&=p-1,A+=p):A=0,B++,0==--L[x]){if(x===E)break;x=e[r+f[B]]}if(x>P&&(A&m)!==g){for(0===S&&(S=P),v+=C,T=1<<(j=x-S);j+S852||2===t&&M>592)return 1;u[g=A&m]=P<<24|j<<16|v-c|0}}return 0!==A&&(u[v+A]=x-S<<24|64<<16|0),h.bits=P,0}},{"../utils/common":50}],58:[function(t,e,r){"use strict";e.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"}},{}],59:[function(t,e,r){"use strict";var n=t("../utils/common"),i=4,o=0,a=1,s=2;function l(t){for(var e=t.length;--e>=0;)t[e]=0}var u=0,c=1,f=2,h=29,p=256,d=p+1+h,g=30,m=19,v=2*d+1,_=15,y=16,b=7,w=256,k=16,x=17,B=18,C=[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],E=[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],P=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],j=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],S=new Array(2*(d+2));l(S);var T=new Array(2*g);l(T);var M=new Array(512);l(M);var A=new Array(256);l(A);var I=new Array(h);l(I);var R,L,F,O=new Array(g);function D(t,e,r,n,i){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=t&&t.length}function N(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function U(t){return t<256?M[t]:M[256+(t>>>7)]}function z(t,e){t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255}function q(t,e,r){t.bi_valid>y-r?(t.bi_buf|=e<>y-t.bi_valid,t.bi_valid+=r-y):(t.bi_buf|=e<>>=1,r<<=1}while(--e>0);return r>>>1}function G(t,e,r){var n,i,o=new Array(_+1),a=0;for(n=1;n<=_;n++)o[n]=a=a+r[n-1]<<1;for(i=0;i<=e;i++){var s=t[2*i+1];0!==s&&(t[2*i]=H(o[s]++,s))}}function W(t){var e;for(e=0;e8?z(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function Y(t,e,r,n){var i=2*e,o=2*r;return t[i]>1;r>=1;r--)X(t,o,r);i=l;do{r=t.heap[1],t.heap[1]=t.heap[t.heap_len--],X(t,o,1),n=t.heap[1],t.heap[--t.heap_max]=r,t.heap[--t.heap_max]=n,o[2*i]=o[2*r]+o[2*n],t.depth[i]=(t.depth[r]>=t.depth[n]?t.depth[r]:t.depth[n])+1,o[2*r+1]=o[2*n+1]=i,t.heap[1]=i++,X(t,o,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],function(t,e){var r,n,i,o,a,s,l=e.dyn_tree,u=e.max_code,c=e.stat_desc.static_tree,f=e.stat_desc.has_stree,h=e.stat_desc.extra_bits,p=e.stat_desc.extra_base,d=e.stat_desc.max_length,g=0;for(o=0;o<=_;o++)t.bl_count[o]=0;for(l[2*t.heap[t.heap_max]+1]=0,r=t.heap_max+1;rd&&(o=d,g++),l[2*n+1]=o,n>u||(t.bl_count[o]++,a=0,n>=p&&(a=h[n-p]),s=l[2*n],t.opt_len+=s*(o+a),f&&(t.static_len+=s*(c[2*n+1]+a)));if(0!==g){do{for(o=d-1;0===t.bl_count[o];)o--;t.bl_count[o]--,t.bl_count[o+1]+=2,t.bl_count[d]--,g-=2}while(g>0);for(o=d;0!==o;o--)for(n=t.bl_count[o];0!==n;)(i=t.heap[--r])>u||(l[2*i+1]!==o&&(t.opt_len+=(o-l[2*i+1])*l[2*i],l[2*i+1]=o),n--)}}(t,e),G(o,u,t.bl_count)}function K(t,e,r){var n,i,o=-1,a=e[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),e[2*(r+1)+1]=65535,n=0;n<=r;n++)i=a,a=e[2*(n+1)+1],++s>=7;n0?(t.strm.data_type===s&&(t.strm.data_type=function(t){var e,r=4093624447;for(e=0;e<=31;e++,r>>>=1)if(1&r&&0!==t.dyn_ltree[2*e])return o;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return a;for(e=32;e=3&&0===t.bl_tree[2*j[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}(t),l=t.opt_len+3+7>>>3,(u=t.static_len+3+7>>>3)<=l&&(l=u)):l=u=r+5,r+4<=l&&-1!==e?et(t,e,r,n):t.strategy===i||u===l?(q(t,(c<<1)+(n?1:0),3),$(t,S,T)):(q(t,(f<<1)+(n?1:0),3),function(t,e,r,n){var i;for(q(t,e-257,5),q(t,r-1,5),q(t,n-4,4),i=0;i>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&r,t.last_lit++,0===e?t.dyn_ltree[2*r]++:(t.matches++,e--,t.dyn_ltree[2*(A[r]+p+1)]++,t.dyn_dtree[2*U(e)]++),t.last_lit===t.lit_bufsize-1},r._tr_align=function(t){q(t,c<<1,3),V(t,w,S),function(t){16===t.bi_valid?(z(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}(t)}},{"../utils/common":50}],60:[function(t,e,r){"use strict";e.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}},{}],61:[function(t,e,r){r.read=function(t,e,r,n,i){var o,a,s=8*i-n-1,l=(1<>1,c=-7,f=r?i-1:0,h=r?-1:1,p=t[e+f];for(f+=h,o=p&(1<<-c)-1,p>>=-c,c+=s;c>0;o=256*o+t[e+f],f+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=n;c>0;a=256*a+t[e+f],f+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,n),o-=u}return(p?-1:1)*a*Math.pow(2,o-n)},r.write=function(t,e,r,n,i,o){var a,s,l,u=8*o-i-1,c=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:o-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),(e+=a+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(a++,l/=2),a+f>=c?(s=0,a=c):a+f>=1?(s=(e*l-1)*Math.pow(2,i),a+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;t[r+p]=255&s,p+=d,s/=256,i-=8);for(a=a<0;t[r+p]=255&a,p+=d,a/=256,u-=8);t[r+p-d]|=128*g}},{}],62:[function(t,e,r){e.exports=[function(t,e){return{options:t,draw:function(e,r,n){n.stop(!0),n.overrideFlag=!0;var i=this;return e.pixelManipulation({output:function(t,e,r){i.output={src:e,format:r}},changePixel:function(t,e,r,n){return[255-t,255-e,255-r,n]},format:e.format,image:t.image,inBrowser:t.inBrowser,callback:r})},output:void 0,UI:e}},{name:"Invert",description:"Inverts the image.",inputs:{}}]},{}],63:[function(t,e,r){"use strict";var n=t("underscore"),i=e.exports={Bitmap:t("./lib/bitmap")};n.extend(i,t("./lib/enums"))},{"./lib/bitmap":64,"./lib/enums":65,underscore:175}],64:[function(t,e,r){(function(r){"use strict";var n=t("fs"),i=(t("underscore"),t("bluebird")),o=t("jpeg-js"),a=t("node-png").PNG,s=t("./enums"),l=t("./utils"),u=t("./resize"),c={r:0,g:0,b:0,a:0},f=e.exports=function(t){t&&(t instanceof f?this._data={data:new r(t.data.data),width:t.width,height:t.height}:t.data?this._data=t:t.width&&t.height&&(this._data={data:new r(4*t.width*t.height),width:t.width,height:t.height},t.color&&this._fill(t.color)))};f.prototype={get width(){return this._data.width},get height(){return this._data.height},attach:function(t){var e=this._data;return this._data=t,e},detach:function(){var t=this._data;return delete this._data,t},_deduceFileType:function(t){if(!t)throw new Error("Can't determine image type");switch(t.substr(-4).toLowerCase()){case".jpg":return s.ImageType.JPG;case".png":return s.ImageType.PNG}if(".jpeg"==t.substr(-5).toLowerCase())return s.ImageType.JPG;throw new Error("Can't recognise image type: "+t)},_readStream:function(t){var e=i.defer(),n=[];return t.on("data",function(t){n.push(t)}),t.on("end",function(){var t=r.concat(n);e.resolve(t)}),t.on("error",function(t){e.reject(t)}),e.promise},_readPNG:function(t){var e=i.defer(),r=new a({filterType:4});return r.on("parsed",function(){e.resolve(r)}),r.on("error",function(t){e.rejecyt(t)}),t.pipe(r),e.promise},_parseOptions:function(t,e){return"number"==typeof(t=t||{})&&(t={type:t}),t.type=t.type||this._deduceFileType(e),t},read:function(t,e){var r=this;switch((e=this._parseOptions(e)).type){case s.ImageType.JPG:return this._readStream(t).then(function(t){r._data=o.decode(t)});case s.ImageType.PNG:return this._readPNG(t).then(function(t){r._data={data:t.data,width:t.width,height:t.height}});default:return i.reject(new Error("Not supported: ImageType "+e.type))}},readFile:function(t,e){var r=this;return l.fs.exists(t).then(function(i){if(i){e=r._parseOptions(e,t);var o=n.createReadStream(t);return r.read(o,e)}throw new Error("File Not Found: "+t)})},write:function(t,e){e=this._parseOptions(e);var r=i.defer();try{switch(t.on("finish",function(){r.resolve()}),t.on("error",function(t){r.reject(t)}),e.type){case s.ImageType.JPG:var n=o.encode(this._data,e.quality||90).data;t.write(n),t.end();break;case s.ImageType.PNG:var l=new a;l.width=this.width,l.height=this.height,l.data=this._data.data,l.on("end",function(){r.resolve()}),l.on("error",function(t){r.reject(t)}),l.pack().pipe(t);break;default:throw new Error("Not supported: ImageType "+e.type)}}catch(t){r.reject(t)}return r.promise},writeFile:function(t,e){e=this._parseOptions(e,t);var r=n.createWriteStream(t);return this.write(r,e)},clone:function(){return new f({width:this.width,height:this.height,data:new r(this._data.data)})},setPixel:function(t,e,r,n,i,o){if(void 0===n){var a=r;r=a.r,n=a.g,i=a.b,o=a.a}void 0===o&&(o=255);var s=4*(e*this.width+t),l=this._data.data;l[s++]=r,l[s++]=n,l[s++]=i,l[s++]=o},getPixel:function(t,e,r){var n=4*(e*this.width+t);r=r||{};var i=this._data.data;return r.r=i[n++],r.g=i[n++],r.b=i[n++],r.a=i[n++],r},negative:function(){for(var t=new f({width:this.width,height:this.height}),e=this.width*this.height,r=this._data.data,n=t._data.data,i=0,o=0,a=0;a-1&&S-1&&T=0&&T>=0?w[F]:O)+D*(m=S=0?w[F+4]:O),z=(1-D)*(v=S>=0&&T0?a:0)-(c>0?4:0)]+2*s[p-(u>0?a:0)]+1*s[p-(u>0?a:0)+(c0?4:0)]+4*s[p]+2*s[p+(c0?4:0)]+2*s[p+(u0?o[k-4]:2*o[k]-o[k+4],B=o[k],C=o[k+4],E=z0?g[k-4*h]:2*g[k]-g[k+4*h],T=g[k],M=g[k+4*h],A=N1)for(m=0;m0&&!t[a-1];)a--;o.push({children:[],index:0});var s,l=o[0];for(r=0;r0;)l=o.pop();for(l.index++,o.push(l);o.length<=r;)o.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s;i++}r+10)return p>>--d&1;if(255==(p=e[r++])){var t=e[r++];if(t)throw"unexpected marker: "+(p<<8|t).toString(16)}return d=7,p>>>7}function m(t){for(var e,r=t;null!==(e=g());){if("number"==typeof(r=r[e]))return r;if("object"!=typeof r)throw"invalid huffman sequence"}return null}function v(t){for(var e=0;t>0;){var r=g();if(null===r)return;e=e<<1|r,t--}return e}function _(t){var e=v(t);return e>=1<0)y--;else for(var n=a,i=s;n<=i;){var o=m(e.huffmanTableAC),l=15&o,c=o>>4;if(0!==l)r[t[n+=c]]=_(l)*(1<>4,0===f)o<15?(y=v(o)+(1<>4;if(0!==s)r[t[o+=l]]=_(s),o++;else{if(l<15)break;o+=16}}};var M,A,I,R,L=0;for(A=1==T?i[0].blocksPerLine*i[0].blocksPerColumn:c*n.mcusPerColumn,o||(o=A);L=65488&&M<=65495))break;r+=2}return r-h}function h(t,u){var c,f,h=[],p=u.blocksPerLine,d=u.blocksPerColumn,g=p<<3,m=new Int32Array(64),v=new Uint8Array(64);function _(t,c,f){var h,p,d,g,m,v,_,y,b,w,k=u.quantizationTable,x=f;for(w=0;w<64;w++)x[w]=t[w]*k[w];for(w=0;w<8;++w){var B=8*w;0!=x[1+B]||0!=x[2+B]||0!=x[3+B]||0!=x[4+B]||0!=x[5+B]||0!=x[6+B]||0!=x[7+B]?(h=s*x[0+B]+128>>8,p=s*x[4+B]+128>>8,d=x[2+B],g=x[6+B],m=l*(x[1+B]-x[7+B])+128>>8,y=l*(x[1+B]+x[7+B])+128>>8,v=x[3+B]<<4,_=x[5+B]<<4,b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+g*o+128>>8,d=d*o-g*a+128>>8,g=b,b=m-_+1>>1,m=m+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=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=m*i+y*n+2048>>12,m=m*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+B]=h+y,x[7+B]=h-y,x[1+B]=p+_,x[6+B]=p-_,x[2+B]=d+v,x[5+B]=d-v,x[3+B]=g+m,x[4+B]=g-m):(b=s*x[0+B]+512>>10,x[0+B]=b,x[1+B]=b,x[2+B]=b,x[3+B]=b,x[4+B]=b,x[5+B]=b,x[6+B]=b,x[7+B]=b)}for(w=0;w<8;++w){var C=w;0!=x[8+C]||0!=x[16+C]||0!=x[24+C]||0!=x[32+C]||0!=x[40+C]||0!=x[48+C]||0!=x[56+C]?(h=s*x[0+C]+2048>>12,p=s*x[32+C]+2048>>12,d=x[16+C],g=x[48+C],m=l*(x[8+C]-x[56+C])+2048>>12,y=l*(x[8+C]+x[56+C])+2048>>12,v=x[24+C],_=x[40+C],b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+g*o+2048>>12,d=d*o-g*a+2048>>12,g=b,b=m-_+1>>1,m=m+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=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=m*i+y*n+2048>>12,m=m*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+C]=h+y,x[56+C]=h-y,x[8+C]=p+_,x[48+C]=p-_,x[16+C]=d+v,x[40+C]=d-v,x[24+C]=g+m,x[32+C]=g-m):(b=s*f[w+0]+8192>>14,x[0+C]=b,x[8+C]=b,x[16+C]=b,x[24+C]=b,x[32+C]=b,x[40+C]=b,x[48+C]=b,x[56+C]=b)}for(w=0;w<64;++w){var E=128+(x[w]+8>>4);c[w]=E<0?0:E>255?255:E}}for(var y=0;y255?255:t}return u.prototype={load:function(t){var e=new XMLHttpRequest;e.open("GET",t,!0),e.responseType="arraybuffer",e.onload=function(){var t=new Uint8Array(e.response||e.mozResponseArrayBuffer);this.parse(t),this.onload&&this.onload()}.bind(this),e.send(null)},parse:function(e){var r=0;e.length;function n(){var t=e[r]<<8|e[r+1];return r+=2,t}function i(){var t=n(),i=e.subarray(r,r+t-2);return r+=i.length,i}function o(t){var e,r,n=0,i=0;for(r in t.components)t.components.hasOwnProperty(r)&&(n<(e=t.components[r]).h&&(n=e.h),i>4==0)for(z=0;z<64;z++){w[t[z]]=e[r++]}else{if(b>>4!=1)throw"DQT: invalid table spec";for(z=0;z<64;z++){w[t[z]]=n()}}p[15&b]=w}break;case 65472:case 65473:case 65474:n(),(a={}).extended=65473===v,a.progressive=65474===v,a.precision=e[r++],a.scanLines=n(),a.samplesPerLine=n(),a.components={},a.componentsOrder=[];var k,x=e[r++];for(N=0;N>4,C=15&e[r+1],E=e[r+2];a.componentsOrder.push(k),a.components[k]={h:B,v:C,quantizationIdx:E},r+=3}o(a),d.push(a);break;case 65476:var P=n();for(N=2;N>4==0?m:g)[15&j]=c(S,M)}break;case 65501:n(),s=n();break;case 65498:n();var A=e[r++],I=[];for(N=0;N>4],q.huffmanTableAC=g[15&R],I.push(q)}var L=e[r++],F=e[r++],O=e[r++],D=f(e,r,a,I,s,L,F,O>>4,15&O);r+=D;break;default:if(255==e[r-3]&&e[r-2]>=192&&e[r-2]<=254){r-=3;break}throw"unknown JPEG marker "+v.toString(16)}v=n()}if(1!=d.length)throw"only single frame JPEGs supported";for(var N=0;N=0;)e&1<>8&255),L(255&t)}function O(t,e,r,n,i){var o,a=i[0],s=i[240];for(var l=function(t,e){var r,n,i,o,a,s,l,u,c,f,h=0;for(c=0;c<8;++c){r=t[h],n=t[h+1],i=t[h+2],o=t[h+3],a=t[h+4],s=t[h+5],l=t[h+6];var p=r+(u=t[h+7]),g=r-u,m=n+l,v=n-l,_=i+s,y=i-s,b=o+a,w=o-a,k=p+b,x=p-b,B=m+_,C=m-_;t[h]=k+B,t[h+4]=k-B;var E=.707106781*(C+x);t[h+2]=x+E,t[h+6]=x-E;var P=.382683433*((k=w+y)-(C=v+g)),j=.5411961*k+P,S=1.306562965*C+P,T=.707106781*(B=y+v),M=g+T,A=g-T;t[h+5]=A+j,t[h+3]=A-j,t[h+1]=M+S,t[h+7]=M-S,h+=8}for(h=0,c=0;c<8;++c){r=t[h],n=t[h+8],i=t[h+16],o=t[h+24],a=t[h+32],s=t[h+40],l=t[h+48];var I=r+(u=t[h+56]),R=r-u,L=n+l,F=n-l,O=i+s,D=i-s,N=o+a,U=o-a,z=I+N,q=I-N,V=L+O,H=L-O;t[h]=z+V,t[h+32]=z-V;var G=.707106781*(H+q);t[h+16]=q+G,t[h+48]=q-G;var W=.382683433*((z=U+D)-(H=F+R)),Z=.5411961*z+W,Y=1.306562965*H+W,X=.707106781*(V=D+F),$=R+X,J=R-X;t[h+40]=J+Z,t[h+24]=J-Z,t[h+8]=$+Y,t[h+56]=$-Y,h++}for(c=0;c<64;++c)f=t[c]*e[c],d[c]=f>0?f+.5|0:f-.5|0;return d}(t,e),u=0;u<64;++u)g[B[u]]=l[u];var c=g[0]-r;r=g[0],0==c?R(n[0]):(R(n[p[o=32767+c]]),R(h[o]));for(var f=63;f>0&&0==g[f];f--);if(0==f)return R(a),r;for(var m,v=1;v<=f;){for(var _=v;0==g[v]&&v<=f;++v);var y=v-_;if(y>=16){m=y>>4;for(var b=1;b<=m;++b)R(s);y&=15}o=32767+g[v],R(i[(y<<4)+p[o]]),R(h[o]),v++}return 63!=f&&R(a),r}function D(t){if(t<=0&&(t=1),t>100&&(t=100),a!=t){(function(t){for(var e=[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],r=0;r<64;r++){var n=s((e[r]*t+50)/100);n<1?n=1:n>255&&(n=255),l[B[r]]=n}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],o=0;o<64;o++){var a=s((i[o]*t+50)/100);a<1?a=1:a>255&&(a=255),u[B[o]]=a}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++)c[p]=1/(l[B[p]]*h[d]*h[g]*8),f[p]=1/(u[B[p]]*h[d]*h[g]*8),p++})(t<50?Math.floor(5e3/t):Math.floor(200-2*t)),a=t}}this.encode=function(e,a){(new Date).getTime();a&&D(a),m=new Array,v=0,_=7,F(65496),F(65504),F(16),L(74),L(70),L(73),L(70),L(0),L(1),L(1),L(0),F(1),F(1),L(0),L(0),function(){F(65499),F(132),L(0);for(var t=0;t<64;t++)L(l[t]);L(1);for(var e=0;e<64;e++)L(u[e])}(),function(t,e){F(65472),F(17),L(8),F(e),F(t),L(3),L(1),L(17),L(0),L(2),L(17),L(1),L(3),L(17),L(1)}(e.width,e.height),function(){F(65476),F(418),L(0);for(var t=0;t<16;t++)L(C[t+1]);for(var e=0;e<=11;e++)L(E[e]);L(16);for(var r=0;r<16;r++)L(P[r+1]);for(var n=0;n<=161;n++)L(j[n]);L(1);for(var i=0;i<16;i++)L(S[i+1]);for(var o=0;o<=11;o++)L(T[o]);L(17);for(var a=0;a<16;a++)L(M[a+1]);for(var s=0;s<=161;s++)L(A[s])}(),F(65498),F(12),L(3),L(1),L(0),L(2),L(17),L(3),L(17),L(0),L(63),L(0);var s=0,h=0,p=0;v=0,_=7,this.encode.displayName="_encode_";for(var d,g,k,B,I,N,U,z,q,V=e.data,H=e.width,G=e.height,W=4*H,Z=0;Z>3)*W+(U=4*(7&q)),Z+z>=G&&(N-=W*(Z+1+z-G)),d+U>=W&&(N-=d+U-W+4),g=V[N++],k=V[N++],B=V[N++],y[q]=(x[g]+x[k+256>>0]+x[B+512>>0]>>16)-128,b[q]=(x[g+768>>0]+x[k+1024>>0]+x[B+1280>>0]>>16)-128,w[q]=(x[g+1280>>0]+x[k+1536>>0]+x[B+1792>>0]>>16)-128;s=O(y,c,s,r,i),h=O(b,f,h,n,o),p=O(w,f,p,n,o),d+=32}Z+=8}if(_>=0){var Y=[];Y[1]=_+1,Y[0]=(1<<_+1)-1,R(Y)}return F(65497),new t(m)},function(){(new Date).getTime();e||(e=50),function(){for(var t=String.fromCharCode,e=0;e<256;e++)k[e]=t(e)}(),r=I(C,E),n=I(S,T),i=I(P,j),o=I(M,A),function(){for(var t=1,e=2,r=1;r<=15;r++){for(var n=t;n>0]=38470*t,x[t+512>>0]=7471*t+32768,x[t+768>>0]=-11059*t,x[t+1024>>0]=-21709*t,x[t+1280>>0]=32768*t+8421375,x[t+1536>>0]=-27439*t,x[t+1792>>0]=-5329*t}(),D(e),(new Date).getTime()}()}e.exports=function(t,e){void 0===e&&(e=50);return{data:new r(e).encode(t,e),width:t.width,height:t.height}}}).call(this,t("buffer").Buffer)},{buffer:48}],71:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],72:[function(t,e,r){"use strict";e.exports=function(t){for(var e=new Array(t),r=0;r=this.width||e<0||e>=this.height)&&!!this.data[e*this.width+t]},t.prototype.set=function(t,e,r){this.data[e*this.width+t]=r?1:0},t.prototype.setRegion=function(t,e,r,n,i){for(var o=e;o=this.size&&(i=(i^this.primitive)&this.size-1);for(o=0;o1&&0===e[0]){for(var n=1;ni.length&&(r=(o=[i,r])[0],i=o[1]);for(var o,a=new Uint8ClampedArray(i.length),s=i.length-r.length,l=0;lr?r:t}var s=function(){function t(t,e){this.width=t,this.data=new Uint8ClampedArray(t*e)}return t.prototype.get=function(t,e){return this.data[e*this.width+t]},t.prototype.set=function(t,e,r){this.data[e*this.width+t]=r},t}();e.binarize=function(t,e,r,l){if(t.length!==e*r*4)throw new Error("Malformed data passed to binarizer.");for(var u=new s(e,r),c=0;c0&&y>0)){var C=(v.get(y,_-1)+2*v.get(y-1,_)+v.get(y-1,_-1))/4;w6&&(r.setRegion(e-11,0,3,6,!0),r.setRegion(0,e-11,6,3,!0)),r}(e),s=[],u=0,f=0,h=!0,p=o-1;p>0;p-=2){6===p&&p--;for(var d=0;d=0;i--)for(var o=e-9;o>=e-11;o--)n=l(t.get(o,i),n);var u=0;for(o=5;o>=0;o--)for(i=e-9;i>=e-11;i--)u=l(t.get(o,i),u);for(var c,f=1/0,h=0,p=a.VERSIONS;h=0;n--)6!==n&&(e=l(t.get(8,n),e));var i=t.height,o=0;for(n=i-1;n>=i-7;n--)o=l(t.get(8,n),o);for(r=i-8;r1){var c=n.ecBlocks[0].numBlocks,f=n.ecBlocks[1].numBlocks;for(s=0;s0;)for(var h=0,p=i;h=3;){if((u=t.readBits(10))>=1e3)throw new Error("Invalid numeric value above 999");var a=Math.floor(u/100),s=Math.floor(u/10)%10,l=u%10;r.push(48+a,48+s,48+l),n+=a.toString()+s.toString()+l.toString(),o-=3}if(2===o){if((u=t.readBits(7))>=100)throw new Error("Invalid numeric value above 99");a=Math.floor(u/10),s=u%10;r.push(48+a,48+s),n+=a.toString()+s.toString()}else if(1===o){var u;if((u=t.readBits(4))>=10)throw new Error("Invalid numeric value above 9");r.push(48+u),n+=u.toString()}return{bytes:r,text:n}}!function(t){t.Numeric="numeric",t.Alphanumeric="alphanumeric",t.Byte="byte",t.Kanji="kanji",t.ECI="eci"}(n=e.Mode||(e.Mode={})),function(t){t[t.Terminator=0]="Terminator",t[t.Numeric=1]="Numeric",t[t.Alphanumeric=2]="Alphanumeric",t[t.Byte=4]="Byte",t[t.Kanji=8]="Kanji",t[t.ECI=7]="ECI"}(i||(i={}));var l=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function u(t,e){for(var r=[],n="",i=[9,11,13][e],o=t.readBits(i);o>=2;){var a=t.readBits(11),s=Math.floor(a/45),u=a%45;r.push(l[s].charCodeAt(0),l[u].charCodeAt(0)),n+=l[s]+l[u],o-=2}if(1===o){s=t.readBits(6);r.push(l[s].charCodeAt(0)),n+=l[s]}return{bytes:r,text:n}}function c(t,e){for(var r=[],n="",i=[8,16,16][e],o=t.readBits(i),a=0;a>8,255&u),n+=String.fromCharCode(a.shiftJISTable[u])}return{bytes:r,text:n}}e.decode=function(t,e){for(var r,a,l,h,p=new o.BitStream(t),d=e<=9?0:e<=26?1:2,g={text:"",bytes:[],chunks:[]};p.available()>=4;){var m=p.readBits(4);if(m===i.Terminator)return g;if(m===i.ECI)0===p.readBits(1)?g.chunks.push({type:n.ECI,assignmentNumber:p.readBits(7)}):0===p.readBits(1)?g.chunks.push({type:n.ECI,assignmentNumber:p.readBits(14)}):0===p.readBits(1)?g.chunks.push({type:n.ECI,assignmentNumber:p.readBits(21)}):g.chunks.push({type:n.ECI,assignmentNumber:-1});else if(m===i.Numeric){var v=s(p,d);g.text+=v.text,(r=g.bytes).push.apply(r,v.bytes),g.chunks.push({type:n.Numeric,text:v.text})}else if(m===i.Alphanumeric){var _=u(p,d);g.text+=_.text,(a=g.bytes).push.apply(a,_.bytes),g.chunks.push({type:n.Alphanumeric,text:_.text})}else if(m===i.Byte){var y=c(p,d);g.text+=y.text,(l=g.bytes).push.apply(l,y.bytes),g.chunks.push({type:n.Byte,bytes:y.bytes,text:y.text})}else if(m===i.Kanji){var b=f(p,d);g.text+=b.text,(h=g.bytes).push.apply(h,b.bytes),g.chunks.push({type:n.Kanji,bytes:b.bytes,text:b.text})}}}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t){this.byteOffset=0,this.bitOffset=0,this.bytes=t}return t.prototype.readBits=function(t){if(t<1||t>32||t>this.available())throw new Error("Cannot read "+t.toString()+" bits");var e=0;if(this.bitOffset>0){var r=8-this.bitOffset,n=t>8-n<<(o=r-n);e=(this.bytes[this.byteOffset]&i)>>o,t-=n,this.bitOffset+=n,8===this.bitOffset&&(this.bitOffset=0,this.byteOffset++)}if(t>0){for(;t>=8;)e=e<<8|255&this.bytes[this.byteOffset],this.byteOffset++,t-=8;if(t>0){var o;i=255>>(o=8-t)<>o,this.bitOffset+=t}}return e},t.prototype.available=function(){return 8*(this.bytes.length-this.byteOffset)-this.bitOffset},t}();e.BitStream=n},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.shiftJISTable={32:32,33:33,34:34,35:35,36:36,37:37,38:38,39:39,40:40,41:41,42:42,43:43,44:44,45:45,46:46,47:47,48:48,49:49,50:50,51:51,52:52,53:53,54:54,55:55,56:56,57:57,58:58,59:59,60:60,61:61,62:62,63:63,64:64,65:65,66:66,67:67,68:68,69:69,70:70,71:71,72:72,73:73,74:74,75:75,76:76,77:77,78:78,79:79,80:80,81:81,82:82,83:83,84:84,85:85,86:86,87:87,88:88,89:89,90:90,91:91,92:165,93:93,94:94,95:95,96:96,97:97,98:98,99:99,100:100,101:101,102:102,103:103,104:104,105:105,106:106,107:107,108:108,109:109,110:110,111:111,112:112,113:113,114:114,115:115,116:116,117:117,118:118,119:119,120:120,121:121,122:122,123:123,124:124,125:125,126:8254,33088:12288,33089:12289,33090:12290,33091:65292,33092:65294,33093:12539,33094:65306,33095:65307,33096:65311,33097:65281,33098:12443,33099:12444,33100:180,33101:65344,33102:168,33103:65342,33104:65507,33105:65343,33106:12541,33107:12542,33108:12445,33109:12446,33110:12291,33111:20189,33112:12293,33113:12294,33114:12295,33115:12540,33116:8213,33117:8208,33118:65295,33119:92,33120:12316,33121:8214,33122:65372,33123:8230,33124:8229,33125:8216,33126:8217,33127:8220,33128:8221,33129:65288,33130:65289,33131:12308,33132:12309,33133:65339,33134:65341,33135:65371,33136:65373,33137:12296,33138:12297,33139:12298,33140:12299,33141:12300,33142:12301,33143:12302,33144:12303,33145:12304,33146:12305,33147:65291,33148:8722,33149:177,33150:215,33152:247,33153:65309,33154:8800,33155:65308,33156:65310,33157:8806,33158:8807,33159:8734,33160:8756,33161:9794,33162:9792,33163:176,33164:8242,33165:8243,33166:8451,33167:65509,33168:65284,33169:162,33170:163,33171:65285,33172:65283,33173:65286,33174:65290,33175:65312,33176:167,33177:9734,33178:9733,33179:9675,33180:9679,33181:9678,33182:9671,33183:9670,33184:9633,33185:9632,33186:9651,33187:9650,33188:9661,33189:9660,33190:8251,33191:12306,33192:8594,33193:8592,33194:8593,33195:8595,33196:12307,33208:8712,33209:8715,33210:8838,33211:8839,33212:8834,33213:8835,33214:8746,33215:8745,33224:8743,33225:8744,33226:172,33227:8658,33228:8660,33229:8704,33230:8707,33242:8736,33243:8869,33244:8978,33245:8706,33246:8711,33247:8801,33248:8786,33249:8810,33250:8811,33251:8730,33252:8765,33253:8733,33254:8757,33255:8747,33256:8748,33264:8491,33265:8240,33266:9839,33267:9837,33268:9834,33269:8224,33270:8225,33271:182,33276:9711,33359:65296,33360:65297,33361:65298,33362:65299,33363:65300,33364:65301,33365:65302,33366:65303,33367:65304,33368:65305,33376:65313,33377:65314,33378:65315,33379:65316,33380:65317,33381:65318,33382:65319,33383:65320,33384:65321,33385:65322,33386:65323,33387:65324,33388:65325,33389:65326,33390:65327,33391:65328,33392:65329,33393:65330,33394:65331,33395:65332,33396:65333,33397:65334,33398:65335,33399:65336,33400:65337,33401:65338,33409:65345,33410:65346,33411:65347,33412:65348,33413:65349,33414:65350,33415:65351,33416:65352,33417:65353,33418:65354,33419:65355,33420:65356,33421:65357,33422:65358,33423:65359,33424:65360,33425:65361,33426:65362,33427:65363,33428:65364,33429:65365,33430:65366,33431:65367,33432:65368,33433:65369,33434:65370,33439:12353,33440:12354,33441:12355,33442:12356,33443:12357,33444:12358,33445:12359,33446:12360,33447:12361,33448:12362,33449:12363,33450:12364,33451:12365,33452:12366,33453:12367,33454:12368,33455:12369,33456:12370,33457:12371,33458:12372,33459:12373,33460:12374,33461:12375,33462:12376,33463:12377,33464:12378,33465:12379,33466:12380,33467:12381,33468:12382,33469:12383,33470:12384,33471:12385,33472:12386,33473:12387,33474:12388,33475:12389,33476:12390,33477:12391,33478:12392,33479:12393,33480:12394,33481:12395,33482:12396,33483:12397,33484:12398,33485:12399,33486:12400,33487:12401,33488:12402,33489:12403,33490:12404,33491:12405,33492:12406,33493:12407,33494:12408,33495:12409,33496:12410,33497:12411,33498:12412,33499:12413,33500:12414,33501:12415,33502:12416,33503:12417,33504:12418,33505:12419,33506:12420,33507:12421,33508:12422,33509:12423,33510:12424,33511:12425,33512:12426,33513:12427,33514:12428,33515:12429,33516:12430,33517:12431,33518:12432,33519:12433,33520:12434,33521:12435,33600:12449,33601:12450,33602:12451,33603:12452,33604:12453,33605:12454,33606:12455,33607:12456,33608:12457,33609:12458,33610:12459,33611:12460,33612:12461,33613:12462,33614:12463,33615:12464,33616:12465,33617:12466,33618:12467,33619:12468,33620:12469,33621:12470,33622:12471,33623:12472,33624:12473,33625:12474,33626:12475,33627:12476,33628:12477,33629:12478,33630:12479,33631:12480,33632:12481,33633:12482,33634:12483,33635:12484,33636:12485,33637:12486,33638:12487,33639:12488,33640:12489,33641:12490,33642:12491,33643:12492,33644:12493,33645:12494,33646:12495,33647:12496,33648:12497,33649:12498,33650:12499,33651:12500,33652:12501,33653:12502,33654:12503,33655:12504,33656:12505,33657:12506,33658:12507,33659:12508,33660:12509,33661:12510,33662:12511,33664:12512,33665:12513,33666:12514,33667:12515,33668:12516,33669:12517,33670:12518,33671:12519,33672:12520,33673:12521,33674:12522,33675:12523,33676:12524,33677:12525,33678:12526,33679:12527,33680:12528,33681:12529,33682:12530,33683:12531,33684:12532,33685:12533,33686:12534,33695:913,33696:914,33697:915,33698:916,33699:917,33700:918,33701:919,33702:920,33703:921,33704:922,33705:923,33706:924,33707:925,33708:926,33709:927,33710:928,33711:929,33712:931,33713:932,33714:933,33715:934,33716:935,33717:936,33718:937,33727:945,33728:946,33729:947,33730:948,33731:949,33732:950,33733:951,33734:952,33735:953,33736:954,33737:955,33738:956,33739:957,33740:958,33741:959,33742:960,33743:961,33744:963,33745:964,33746:965,33747:966,33748:967,33749:968,33750:969,33856:1040,33857:1041,33858:1042,33859:1043,33860:1044,33861:1045,33862:1025,33863:1046,33864:1047,33865:1048,33866:1049,33867:1050,33868:1051,33869:1052,33870:1053,33871:1054,33872:1055,33873:1056,33874:1057,33875:1058,33876:1059,33877:1060,33878:1061,33879:1062,33880:1063,33881:1064,33882:1065,33883:1066,33884:1067,33885:1068,33886:1069,33887:1070,33888:1071,33904:1072,33905:1073,33906:1074,33907:1075,33908:1076,33909:1077,33910:1105,33911:1078,33912:1079,33913:1080,33914:1081,33915:1082,33916:1083,33917:1084,33918:1085,33920:1086,33921:1087,33922:1088,33923:1089,33924:1090,33925:1091,33926:1092,33927:1093,33928:1094,33929:1095,33930:1096,33931:1097,33932:1098,33933:1099,33934:1100,33935:1101,33936:1102,33937:1103,33951:9472,33952:9474,33953:9484,33954:9488,33955:9496,33956:9492,33957:9500,33958:9516,33959:9508,33960:9524,33961:9532,33962:9473,33963:9475,33964:9487,33965:9491,33966:9499,33967:9495,33968:9507,33969:9523,33970:9515,33971:9531,33972:9547,33973:9504,33974:9519,33975:9512,33976:9527,33977:9535,33978:9501,33979:9520,33980:9509,33981:9528,33982:9538,34975:20124,34976:21782,34977:23043,34978:38463,34979:21696,34980:24859,34981:25384,34982:23030,34983:36898,34984:33909,34985:33564,34986:31312,34987:24746,34988:25569,34989:28197,34990:26093,34991:33894,34992:33446,34993:39925,34994:26771,34995:22311,34996:26017,34997:25201,34998:23451,34999:22992,35000:34427,35001:39156,35002:32098,35003:32190,35004:39822,35005:25110,35006:31903,35007:34999,35008:23433,35009:24245,35010:25353,35011:26263,35012:26696,35013:38343,35014:38797,35015:26447,35016:20197,35017:20234,35018:20301,35019:20381,35020:20553,35021:22258,35022:22839,35023:22996,35024:23041,35025:23561,35026:24799,35027:24847,35028:24944,35029:26131,35030:26885,35031:28858,35032:30031,35033:30064,35034:31227,35035:32173,35036:32239,35037:32963,35038:33806,35039:34915,35040:35586,35041:36949,35042:36986,35043:21307,35044:20117,35045:20133,35046:22495,35047:32946,35048:37057,35049:30959,35050:19968,35051:22769,35052:28322,35053:36920,35054:31282,35055:33576,35056:33419,35057:39983,35058:20801,35059:21360,35060:21693,35061:21729,35062:22240,35063:23035,35064:24341,35065:39154,35066:28139,35067:32996,35068:34093,35136:38498,35137:38512,35138:38560,35139:38907,35140:21515,35141:21491,35142:23431,35143:28879,35144:32701,35145:36802,35146:38632,35147:21359,35148:40284,35149:31418,35150:19985,35151:30867,35152:33276,35153:28198,35154:22040,35155:21764,35156:27421,35157:34074,35158:39995,35159:23013,35160:21417,35161:28006,35162:29916,35163:38287,35164:22082,35165:20113,35166:36939,35167:38642,35168:33615,35169:39180,35170:21473,35171:21942,35172:23344,35173:24433,35174:26144,35175:26355,35176:26628,35177:27704,35178:27891,35179:27945,35180:29787,35181:30408,35182:31310,35183:38964,35184:33521,35185:34907,35186:35424,35187:37613,35188:28082,35189:30123,35190:30410,35191:39365,35192:24742,35193:35585,35194:36234,35195:38322,35196:27022,35197:21421,35198:20870,35200:22290,35201:22576,35202:22852,35203:23476,35204:24310,35205:24616,35206:25513,35207:25588,35208:27839,35209:28436,35210:28814,35211:28948,35212:29017,35213:29141,35214:29503,35215:32257,35216:33398,35217:33489,35218:34199,35219:36960,35220:37467,35221:40219,35222:22633,35223:26044,35224:27738,35225:29989,35226:20985,35227:22830,35228:22885,35229:24448,35230:24540,35231:25276,35232:26106,35233:27178,35234:27431,35235:27572,35236:29579,35237:32705,35238:35158,35239:40236,35240:40206,35241:40644,35242:23713,35243:27798,35244:33659,35245:20740,35246:23627,35247:25014,35248:33222,35249:26742,35250:29281,35251:20057,35252:20474,35253:21368,35254:24681,35255:28201,35256:31311,35257:38899,35258:19979,35259:21270,35260:20206,35261:20309,35262:20285,35263:20385,35264:20339,35265:21152,35266:21487,35267:22025,35268:22799,35269:23233,35270:23478,35271:23521,35272:31185,35273:26247,35274:26524,35275:26550,35276:27468,35277:27827,35278:28779,35279:29634,35280:31117,35281:31166,35282:31292,35283:31623,35284:33457,35285:33499,35286:33540,35287:33655,35288:33775,35289:33747,35290:34662,35291:35506,35292:22057,35293:36008,35294:36838,35295:36942,35296:38686,35297:34442,35298:20420,35299:23784,35300:25105,35301:29273,35302:30011,35303:33253,35304:33469,35305:34558,35306:36032,35307:38597,35308:39187,35309:39381,35310:20171,35311:20250,35312:35299,35313:22238,35314:22602,35315:22730,35316:24315,35317:24555,35318:24618,35319:24724,35320:24674,35321:25040,35322:25106,35323:25296,35324:25913,35392:39745,35393:26214,35394:26800,35395:28023,35396:28784,35397:30028,35398:30342,35399:32117,35400:33445,35401:34809,35402:38283,35403:38542,35404:35997,35405:20977,35406:21182,35407:22806,35408:21683,35409:23475,35410:23830,35411:24936,35412:27010,35413:28079,35414:30861,35415:33995,35416:34903,35417:35442,35418:37799,35419:39608,35420:28012,35421:39336,35422:34521,35423:22435,35424:26623,35425:34510,35426:37390,35427:21123,35428:22151,35429:21508,35430:24275,35431:25313,35432:25785,35433:26684,35434:26680,35435:27579,35436:29554,35437:30906,35438:31339,35439:35226,35440:35282,35441:36203,35442:36611,35443:37101,35444:38307,35445:38548,35446:38761,35447:23398,35448:23731,35449:27005,35450:38989,35451:38990,35452:25499,35453:31520,35454:27179,35456:27263,35457:26806,35458:39949,35459:28511,35460:21106,35461:21917,35462:24688,35463:25324,35464:27963,35465:28167,35466:28369,35467:33883,35468:35088,35469:36676,35470:19988,35471:39993,35472:21494,35473:26907,35474:27194,35475:38788,35476:26666,35477:20828,35478:31427,35479:33970,35480:37340,35481:37772,35482:22107,35483:40232,35484:26658,35485:33541,35486:33841,35487:31909,35488:21e3,35489:33477,35490:29926,35491:20094,35492:20355,35493:20896,35494:23506,35495:21002,35496:21208,35497:21223,35498:24059,35499:21914,35500:22570,35501:23014,35502:23436,35503:23448,35504:23515,35505:24178,35506:24185,35507:24739,35508:24863,35509:24931,35510:25022,35511:25563,35512:25954,35513:26577,35514:26707,35515:26874,35516:27454,35517:27475,35518:27735,35519:28450,35520:28567,35521:28485,35522:29872,35523:29976,35524:30435,35525:30475,35526:31487,35527:31649,35528:31777,35529:32233,35530:32566,35531:32752,35532:32925,35533:33382,35534:33694,35535:35251,35536:35532,35537:36011,35538:36996,35539:37969,35540:38291,35541:38289,35542:38306,35543:38501,35544:38867,35545:39208,35546:33304,35547:20024,35548:21547,35549:23736,35550:24012,35551:29609,35552:30284,35553:30524,35554:23721,35555:32747,35556:36107,35557:38593,35558:38929,35559:38996,35560:39e3,35561:20225,35562:20238,35563:21361,35564:21916,35565:22120,35566:22522,35567:22855,35568:23305,35569:23492,35570:23696,35571:24076,35572:24190,35573:24524,35574:25582,35575:26426,35576:26071,35577:26082,35578:26399,35579:26827,35580:26820,35648:27231,35649:24112,35650:27589,35651:27671,35652:27773,35653:30079,35654:31048,35655:23395,35656:31232,35657:32e3,35658:24509,35659:35215,35660:35352,35661:36020,35662:36215,35663:36556,35664:36637,35665:39138,35666:39438,35667:39740,35668:20096,35669:20605,35670:20736,35671:22931,35672:23452,35673:25135,35674:25216,35675:25836,35676:27450,35677:29344,35678:30097,35679:31047,35680:32681,35681:34811,35682:35516,35683:35696,35684:25516,35685:33738,35686:38816,35687:21513,35688:21507,35689:21931,35690:26708,35691:27224,35692:35440,35693:30759,35694:26485,35695:40653,35696:21364,35697:23458,35698:33050,35699:34384,35700:36870,35701:19992,35702:20037,35703:20167,35704:20241,35705:21450,35706:21560,35707:23470,35708:24339,35709:24613,35710:25937,35712:26429,35713:27714,35714:27762,35715:27875,35716:28792,35717:29699,35718:31350,35719:31406,35720:31496,35721:32026,35722:31998,35723:32102,35724:26087,35725:29275,35726:21435,35727:23621,35728:24040,35729:25298,35730:25312,35731:25369,35732:28192,35733:34394,35734:35377,35735:36317,35736:37624,35737:28417,35738:31142,35739:39770,35740:20136,35741:20139,35742:20140,35743:20379,35744:20384,35745:20689,35746:20807,35747:31478,35748:20849,35749:20982,35750:21332,35751:21281,35752:21375,35753:21483,35754:21932,35755:22659,35756:23777,35757:24375,35758:24394,35759:24623,35760:24656,35761:24685,35762:25375,35763:25945,35764:27211,35765:27841,35766:29378,35767:29421,35768:30703,35769:33016,35770:33029,35771:33288,35772:34126,35773:37111,35774:37857,35775:38911,35776:39255,35777:39514,35778:20208,35779:20957,35780:23597,35781:26241,35782:26989,35783:23616,35784:26354,35785:26997,35786:29577,35787:26704,35788:31873,35789:20677,35790:21220,35791:22343,35792:24062,35793:37670,35794:26020,35795:27427,35796:27453,35797:29748,35798:31105,35799:31165,35800:31563,35801:32202,35802:33465,35803:33740,35804:34943,35805:35167,35806:35641,35807:36817,35808:37329,35809:21535,35810:37504,35811:20061,35812:20534,35813:21477,35814:21306,35815:29399,35816:29590,35817:30697,35818:33510,35819:36527,35820:39366,35821:39368,35822:39378,35823:20855,35824:24858,35825:34398,35826:21936,35827:31354,35828:20598,35829:23507,35830:36935,35831:38533,35832:20018,35833:27355,35834:37351,35835:23633,35836:23624,35904:25496,35905:31391,35906:27795,35907:38772,35908:36705,35909:31402,35910:29066,35911:38536,35912:31874,35913:26647,35914:32368,35915:26705,35916:37740,35917:21234,35918:21531,35919:34219,35920:35347,35921:32676,35922:36557,35923:37089,35924:21350,35925:34952,35926:31041,35927:20418,35928:20670,35929:21009,35930:20804,35931:21843,35932:22317,35933:29674,35934:22411,35935:22865,35936:24418,35937:24452,35938:24693,35939:24950,35940:24935,35941:25001,35942:25522,35943:25658,35944:25964,35945:26223,35946:26690,35947:28179,35948:30054,35949:31293,35950:31995,35951:32076,35952:32153,35953:32331,35954:32619,35955:33550,35956:33610,35957:34509,35958:35336,35959:35427,35960:35686,35961:36605,35962:38938,35963:40335,35964:33464,35965:36814,35966:39912,35968:21127,35969:25119,35970:25731,35971:28608,35972:38553,35973:26689,35974:20625,35975:27424,35976:27770,35977:28500,35978:31348,35979:32080,35980:34880,35981:35363,35982:26376,35983:20214,35984:20537,35985:20518,35986:20581,35987:20860,35988:21048,35989:21091,35990:21927,35991:22287,35992:22533,35993:23244,35994:24314,35995:25010,35996:25080,35997:25331,35998:25458,35999:26908,36000:27177,36001:29309,36002:29356,36003:29486,36004:30740,36005:30831,36006:32121,36007:30476,36008:32937,36009:35211,36010:35609,36011:36066,36012:36562,36013:36963,36014:37749,36015:38522,36016:38997,36017:39443,36018:40568,36019:20803,36020:21407,36021:21427,36022:24187,36023:24358,36024:28187,36025:28304,36026:29572,36027:29694,36028:32067,36029:33335,36030:35328,36031:35578,36032:38480,36033:20046,36034:20491,36035:21476,36036:21628,36037:22266,36038:22993,36039:23396,36040:24049,36041:24235,36042:24359,36043:25144,36044:25925,36045:26543,36046:28246,36047:29392,36048:31946,36049:34996,36050:32929,36051:32993,36052:33776,36053:34382,36054:35463,36055:36328,36056:37431,36057:38599,36058:39015,36059:40723,36060:20116,36061:20114,36062:20237,36063:21320,36064:21577,36065:21566,36066:23087,36067:24460,36068:24481,36069:24735,36070:26791,36071:27278,36072:29786,36073:30849,36074:35486,36075:35492,36076:35703,36077:37264,36078:20062,36079:39881,36080:20132,36081:20348,36082:20399,36083:20505,36084:20502,36085:20809,36086:20844,36087:21151,36088:21177,36089:21246,36090:21402,36091:21475,36092:21521,36160:21518,36161:21897,36162:22353,36163:22434,36164:22909,36165:23380,36166:23389,36167:23439,36168:24037,36169:24039,36170:24055,36171:24184,36172:24195,36173:24218,36174:24247,36175:24344,36176:24658,36177:24908,36178:25239,36179:25304,36180:25511,36181:25915,36182:26114,36183:26179,36184:26356,36185:26477,36186:26657,36187:26775,36188:27083,36189:27743,36190:27946,36191:28009,36192:28207,36193:28317,36194:30002,36195:30343,36196:30828,36197:31295,36198:31968,36199:32005,36200:32024,36201:32094,36202:32177,36203:32789,36204:32771,36205:32943,36206:32945,36207:33108,36208:33167,36209:33322,36210:33618,36211:34892,36212:34913,36213:35611,36214:36002,36215:36092,36216:37066,36217:37237,36218:37489,36219:30783,36220:37628,36221:38308,36222:38477,36224:38917,36225:39321,36226:39640,36227:40251,36228:21083,36229:21163,36230:21495,36231:21512,36232:22741,36233:25335,36234:28640,36235:35946,36236:36703,36237:40633,36238:20811,36239:21051,36240:21578,36241:22269,36242:31296,36243:37239,36244:40288,36245:40658,36246:29508,36247:28425,36248:33136,36249:29969,36250:24573,36251:24794,36252:39592,36253:29403,36254:36796,36255:27492,36256:38915,36257:20170,36258:22256,36259:22372,36260:22718,36261:23130,36262:24680,36263:25031,36264:26127,36265:26118,36266:26681,36267:26801,36268:28151,36269:30165,36270:32058,36271:33390,36272:39746,36273:20123,36274:20304,36275:21449,36276:21766,36277:23919,36278:24038,36279:24046,36280:26619,36281:27801,36282:29811,36283:30722,36284:35408,36285:37782,36286:35039,36287:22352,36288:24231,36289:25387,36290:20661,36291:20652,36292:20877,36293:26368,36294:21705,36295:22622,36296:22971,36297:23472,36298:24425,36299:25165,36300:25505,36301:26685,36302:27507,36303:28168,36304:28797,36305:37319,36306:29312,36307:30741,36308:30758,36309:31085,36310:25998,36311:32048,36312:33756,36313:35009,36314:36617,36315:38555,36316:21092,36317:22312,36318:26448,36319:32618,36320:36001,36321:20916,36322:22338,36323:38442,36324:22586,36325:27018,36326:32948,36327:21682,36328:23822,36329:22524,36330:30869,36331:40442,36332:20316,36333:21066,36334:21643,36335:25662,36336:26152,36337:26388,36338:26613,36339:31364,36340:31574,36341:32034,36342:37679,36343:26716,36344:39853,36345:31545,36346:21273,36347:20874,36348:21047,36416:23519,36417:25334,36418:25774,36419:25830,36420:26413,36421:27578,36422:34217,36423:38609,36424:30352,36425:39894,36426:25420,36427:37638,36428:39851,36429:30399,36430:26194,36431:19977,36432:20632,36433:21442,36434:23665,36435:24808,36436:25746,36437:25955,36438:26719,36439:29158,36440:29642,36441:29987,36442:31639,36443:32386,36444:34453,36445:35715,36446:36059,36447:37240,36448:39184,36449:26028,36450:26283,36451:27531,36452:20181,36453:20180,36454:20282,36455:20351,36456:21050,36457:21496,36458:21490,36459:21987,36460:22235,36461:22763,36462:22987,36463:22985,36464:23039,36465:23376,36466:23629,36467:24066,36468:24107,36469:24535,36470:24605,36471:25351,36472:25903,36473:23388,36474:26031,36475:26045,36476:26088,36477:26525,36478:27490,36480:27515,36481:27663,36482:29509,36483:31049,36484:31169,36485:31992,36486:32025,36487:32043,36488:32930,36489:33026,36490:33267,36491:35222,36492:35422,36493:35433,36494:35430,36495:35468,36496:35566,36497:36039,36498:36060,36499:38604,36500:39164,36501:27503,36502:20107,36503:20284,36504:20365,36505:20816,36506:23383,36507:23546,36508:24904,36509:25345,36510:26178,36511:27425,36512:28363,36513:27835,36514:29246,36515:29885,36516:30164,36517:30913,36518:31034,36519:32780,36520:32819,36521:33258,36522:33940,36523:36766,36524:27728,36525:40575,36526:24335,36527:35672,36528:40235,36529:31482,36530:36600,36531:23437,36532:38635,36533:19971,36534:21489,36535:22519,36536:22833,36537:23241,36538:23460,36539:24713,36540:28287,36541:28422,36542:30142,36543:36074,36544:23455,36545:34048,36546:31712,36547:20594,36548:26612,36549:33437,36550:23649,36551:34122,36552:32286,36553:33294,36554:20889,36555:23556,36556:25448,36557:36198,36558:26012,36559:29038,36560:31038,36561:32023,36562:32773,36563:35613,36564:36554,36565:36974,36566:34503,36567:37034,36568:20511,36569:21242,36570:23610,36571:26451,36572:28796,36573:29237,36574:37196,36575:37320,36576:37675,36577:33509,36578:23490,36579:24369,36580:24825,36581:20027,36582:21462,36583:23432,36584:25163,36585:26417,36586:27530,36587:29417,36588:29664,36589:31278,36590:33131,36591:36259,36592:37202,36593:39318,36594:20754,36595:21463,36596:21610,36597:23551,36598:25480,36599:27193,36600:32172,36601:38656,36602:22234,36603:21454,36604:21608,36672:23447,36673:23601,36674:24030,36675:20462,36676:24833,36677:25342,36678:27954,36679:31168,36680:31179,36681:32066,36682:32333,36683:32722,36684:33261,36685:33311,36686:33936,36687:34886,36688:35186,36689:35728,36690:36468,36691:36655,36692:36913,36693:37195,36694:37228,36695:38598,36696:37276,36697:20160,36698:20303,36699:20805,36700:21313,36701:24467,36702:25102,36703:26580,36704:27713,36705:28171,36706:29539,36707:32294,36708:37325,36709:37507,36710:21460,36711:22809,36712:23487,36713:28113,36714:31069,36715:32302,36716:31899,36717:22654,36718:29087,36719:20986,36720:34899,36721:36848,36722:20426,36723:23803,36724:26149,36725:30636,36726:31459,36727:33308,36728:39423,36729:20934,36730:24490,36731:26092,36732:26991,36733:27529,36734:28147,36736:28310,36737:28516,36738:30462,36739:32020,36740:24033,36741:36981,36742:37255,36743:38918,36744:20966,36745:21021,36746:25152,36747:26257,36748:26329,36749:28186,36750:24246,36751:32210,36752:32626,36753:26360,36754:34223,36755:34295,36756:35576,36757:21161,36758:21465,36759:22899,36760:24207,36761:24464,36762:24661,36763:37604,36764:38500,36765:20663,36766:20767,36767:21213,36768:21280,36769:21319,36770:21484,36771:21736,36772:21830,36773:21809,36774:22039,36775:22888,36776:22974,36777:23100,36778:23477,36779:23558,36780:23567,36781:23569,36782:23578,36783:24196,36784:24202,36785:24288,36786:24432,36787:25215,36788:25220,36789:25307,36790:25484,36791:25463,36792:26119,36793:26124,36794:26157,36795:26230,36796:26494,36797:26786,36798:27167,36799:27189,36800:27836,36801:28040,36802:28169,36803:28248,36804:28988,36805:28966,36806:29031,36807:30151,36808:30465,36809:30813,36810:30977,36811:31077,36812:31216,36813:31456,36814:31505,36815:31911,36816:32057,36817:32918,36818:33750,36819:33931,36820:34121,36821:34909,36822:35059,36823:35359,36824:35388,36825:35412,36826:35443,36827:35937,36828:36062,36829:37284,36830:37478,36831:37758,36832:37912,36833:38556,36834:38808,36835:19978,36836:19976,36837:19998,36838:20055,36839:20887,36840:21104,36841:22478,36842:22580,36843:22732,36844:23330,36845:24120,36846:24773,36847:25854,36848:26465,36849:26454,36850:27972,36851:29366,36852:30067,36853:31331,36854:33976,36855:35698,36856:37304,36857:37664,36858:22065,36859:22516,36860:39166,36928:25325,36929:26893,36930:27542,36931:29165,36932:32340,36933:32887,36934:33394,36935:35302,36936:39135,36937:34645,36938:36785,36939:23611,36940:20280,36941:20449,36942:20405,36943:21767,36944:23072,36945:23517,36946:23529,36947:24515,36948:24910,36949:25391,36950:26032,36951:26187,36952:26862,36953:27035,36954:28024,36955:28145,36956:30003,36957:30137,36958:30495,36959:31070,36960:31206,36961:32051,36962:33251,36963:33455,36964:34218,36965:35242,36966:35386,36967:36523,36968:36763,36969:36914,36970:37341,36971:38663,36972:20154,36973:20161,36974:20995,36975:22645,36976:22764,36977:23563,36978:29978,36979:23613,36980:33102,36981:35338,36982:36805,36983:38499,36984:38765,36985:31525,36986:35535,36987:38920,36988:37218,36989:22259,36990:21416,36992:36887,36993:21561,36994:22402,36995:24101,36996:25512,36997:27700,36998:28810,36999:30561,37000:31883,37001:32736,37002:34928,37003:36930,37004:37204,37005:37648,37006:37656,37007:38543,37008:29790,37009:39620,37010:23815,37011:23913,37012:25968,37013:26530,37014:36264,37015:38619,37016:25454,37017:26441,37018:26905,37019:33733,37020:38935,37021:38592,37022:35070,37023:28548,37024:25722,37025:23544,37026:19990,37027:28716,37028:30045,37029:26159,37030:20932,37031:21046,37032:21218,37033:22995,37034:24449,37035:24615,37036:25104,37037:25919,37038:25972,37039:26143,37040:26228,37041:26866,37042:26646,37043:27491,37044:28165,37045:29298,37046:29983,37047:30427,37048:31934,37049:32854,37050:22768,37051:35069,37052:35199,37053:35488,37054:35475,37055:35531,37056:36893,37057:37266,37058:38738,37059:38745,37060:25993,37061:31246,37062:33030,37063:38587,37064:24109,37065:24796,37066:25114,37067:26021,37068:26132,37069:26512,37070:30707,37071:31309,37072:31821,37073:32318,37074:33034,37075:36012,37076:36196,37077:36321,37078:36447,37079:30889,37080:20999,37081:25305,37082:25509,37083:25666,37084:25240,37085:35373,37086:31363,37087:31680,37088:35500,37089:38634,37090:32118,37091:33292,37092:34633,37093:20185,37094:20808,37095:21315,37096:21344,37097:23459,37098:23554,37099:23574,37100:24029,37101:25126,37102:25159,37103:25776,37104:26643,37105:26676,37106:27849,37107:27973,37108:27927,37109:26579,37110:28508,37111:29006,37112:29053,37113:26059,37114:31359,37115:31661,37116:32218,37184:32330,37185:32680,37186:33146,37187:33307,37188:33337,37189:34214,37190:35438,37191:36046,37192:36341,37193:36984,37194:36983,37195:37549,37196:37521,37197:38275,37198:39854,37199:21069,37200:21892,37201:28472,37202:28982,37203:20840,37204:31109,37205:32341,37206:33203,37207:31950,37208:22092,37209:22609,37210:23720,37211:25514,37212:26366,37213:26365,37214:26970,37215:29401,37216:30095,37217:30094,37218:30990,37219:31062,37220:31199,37221:31895,37222:32032,37223:32068,37224:34311,37225:35380,37226:38459,37227:36961,37228:40736,37229:20711,37230:21109,37231:21452,37232:21474,37233:20489,37234:21930,37235:22766,37236:22863,37237:29245,37238:23435,37239:23652,37240:21277,37241:24803,37242:24819,37243:25436,37244:25475,37245:25407,37246:25531,37248:25805,37249:26089,37250:26361,37251:24035,37252:27085,37253:27133,37254:28437,37255:29157,37256:20105,37257:30185,37258:30456,37259:31379,37260:31967,37261:32207,37262:32156,37263:32865,37264:33609,37265:33624,37266:33900,37267:33980,37268:34299,37269:35013,37270:36208,37271:36865,37272:36973,37273:37783,37274:38684,37275:39442,37276:20687,37277:22679,37278:24974,37279:33235,37280:34101,37281:36104,37282:36896,37283:20419,37284:20596,37285:21063,37286:21363,37287:24687,37288:25417,37289:26463,37290:28204,37291:36275,37292:36895,37293:20439,37294:23646,37295:36042,37296:26063,37297:32154,37298:21330,37299:34966,37300:20854,37301:25539,37302:23384,37303:23403,37304:23562,37305:25613,37306:26449,37307:36956,37308:20182,37309:22810,37310:22826,37311:27760,37312:35409,37313:21822,37314:22549,37315:22949,37316:24816,37317:25171,37318:26561,37319:33333,37320:26965,37321:38464,37322:39364,37323:39464,37324:20307,37325:22534,37326:23550,37327:32784,37328:23729,37329:24111,37330:24453,37331:24608,37332:24907,37333:25140,37334:26367,37335:27888,37336:28382,37337:32974,37338:33151,37339:33492,37340:34955,37341:36024,37342:36864,37343:36910,37344:38538,37345:40667,37346:39899,37347:20195,37348:21488,37349:22823,37350:31532,37351:37261,37352:38988,37353:40441,37354:28381,37355:28711,37356:21331,37357:21828,37358:23429,37359:25176,37360:25246,37361:25299,37362:27810,37363:28655,37364:29730,37365:35351,37366:37944,37367:28609,37368:35582,37369:33592,37370:20967,37371:34552,37372:21482,37440:21481,37441:20294,37442:36948,37443:36784,37444:22890,37445:33073,37446:24061,37447:31466,37448:36799,37449:26842,37450:35895,37451:29432,37452:40008,37453:27197,37454:35504,37455:20025,37456:21336,37457:22022,37458:22374,37459:25285,37460:25506,37461:26086,37462:27470,37463:28129,37464:28251,37465:28845,37466:30701,37467:31471,37468:31658,37469:32187,37470:32829,37471:32966,37472:34507,37473:35477,37474:37723,37475:22243,37476:22727,37477:24382,37478:26029,37479:26262,37480:27264,37481:27573,37482:30007,37483:35527,37484:20516,37485:30693,37486:22320,37487:24347,37488:24677,37489:26234,37490:27744,37491:30196,37492:31258,37493:32622,37494:33268,37495:34584,37496:36933,37497:39347,37498:31689,37499:30044,37500:31481,37501:31569,37502:33988,37504:36880,37505:31209,37506:31378,37507:33590,37508:23265,37509:30528,37510:20013,37511:20210,37512:23449,37513:24544,37514:25277,37515:26172,37516:26609,37517:27880,37518:34411,37519:34935,37520:35387,37521:37198,37522:37619,37523:39376,37524:27159,37525:28710,37526:29482,37527:33511,37528:33879,37529:36015,37530:19969,37531:20806,37532:20939,37533:21899,37534:23541,37535:24086,37536:24115,37537:24193,37538:24340,37539:24373,37540:24427,37541:24500,37542:25074,37543:25361,37544:26274,37545:26397,37546:28526,37547:29266,37548:30010,37549:30522,37550:32884,37551:33081,37552:33144,37553:34678,37554:35519,37555:35548,37556:36229,37557:36339,37558:37530,37559:38263,37560:38914,37561:40165,37562:21189,37563:25431,37564:30452,37565:26389,37566:27784,37567:29645,37568:36035,37569:37806,37570:38515,37571:27941,37572:22684,37573:26894,37574:27084,37575:36861,37576:37786,37577:30171,37578:36890,37579:22618,37580:26626,37581:25524,37582:27131,37583:20291,37584:28460,37585:26584,37586:36795,37587:34086,37588:32180,37589:37716,37590:26943,37591:28528,37592:22378,37593:22775,37594:23340,37595:32044,37596:29226,37597:21514,37598:37347,37599:40372,37600:20141,37601:20302,37602:20572,37603:20597,37604:21059,37605:35998,37606:21576,37607:22564,37608:23450,37609:24093,37610:24213,37611:24237,37612:24311,37613:24351,37614:24716,37615:25269,37616:25402,37617:25552,37618:26799,37619:27712,37620:30855,37621:31118,37622:31243,37623:32224,37624:33351,37625:35330,37626:35558,37627:36420,37628:36883,37696:37048,37697:37165,37698:37336,37699:40718,37700:27877,37701:25688,37702:25826,37703:25973,37704:28404,37705:30340,37706:31515,37707:36969,37708:37841,37709:28346,37710:21746,37711:24505,37712:25764,37713:36685,37714:36845,37715:37444,37716:20856,37717:22635,37718:22825,37719:23637,37720:24215,37721:28155,37722:32399,37723:29980,37724:36028,37725:36578,37726:39003,37727:28857,37728:20253,37729:27583,37730:28593,37731:3e4,37732:38651,37733:20814,37734:21520,37735:22581,37736:22615,37737:22956,37738:23648,37739:24466,37740:26007,37741:26460,37742:28193,37743:30331,37744:33759,37745:36077,37746:36884,37747:37117,37748:37709,37749:30757,37750:30778,37751:21162,37752:24230,37753:22303,37754:22900,37755:24594,37756:20498,37757:20826,37758:20908,37760:20941,37761:20992,37762:21776,37763:22612,37764:22616,37765:22871,37766:23445,37767:23798,37768:23947,37769:24764,37770:25237,37771:25645,37772:26481,37773:26691,37774:26812,37775:26847,37776:30423,37777:28120,37778:28271,37779:28059,37780:28783,37781:29128,37782:24403,37783:30168,37784:31095,37785:31561,37786:31572,37787:31570,37788:31958,37789:32113,37790:21040,37791:33891,37792:34153,37793:34276,37794:35342,37795:35588,37796:35910,37797:36367,37798:36867,37799:36879,37800:37913,37801:38518,37802:38957,37803:39472,37804:38360,37805:20685,37806:21205,37807:21516,37808:22530,37809:23566,37810:24999,37811:25758,37812:27934,37813:30643,37814:31461,37815:33012,37816:33796,37817:36947,37818:37509,37819:23776,37820:40199,37821:21311,37822:24471,37823:24499,37824:28060,37825:29305,37826:30563,37827:31167,37828:31716,37829:27602,37830:29420,37831:35501,37832:26627,37833:27233,37834:20984,37835:31361,37836:26932,37837:23626,37838:40182,37839:33515,37840:23493,37841:37193,37842:28702,37843:22136,37844:23663,37845:24775,37846:25958,37847:27788,37848:35930,37849:36929,37850:38931,37851:21585,37852:26311,37853:37389,37854:22856,37855:37027,37856:20869,37857:20045,37858:20970,37859:34201,37860:35598,37861:28760,37862:25466,37863:37707,37864:26978,37865:39348,37866:32260,37867:30071,37868:21335,37869:26976,37870:36575,37871:38627,37872:27741,37873:20108,37874:23612,37875:24336,37876:36841,37877:21250,37878:36049,37879:32905,37880:34425,37881:24319,37882:26085,37883:20083,37884:20837,37952:22914,37953:23615,37954:38894,37955:20219,37956:22922,37957:24525,37958:35469,37959:28641,37960:31152,37961:31074,37962:23527,37963:33905,37964:29483,37965:29105,37966:24180,37967:24565,37968:25467,37969:25754,37970:29123,37971:31896,37972:20035,37973:24316,37974:20043,37975:22492,37976:22178,37977:24745,37978:28611,37979:32013,37980:33021,37981:33075,37982:33215,37983:36786,37984:35223,37985:34468,37986:24052,37987:25226,37988:25773,37989:35207,37990:26487,37991:27874,37992:27966,37993:29750,37994:30772,37995:23110,37996:32629,37997:33453,37998:39340,37999:20467,38000:24259,38001:25309,38002:25490,38003:25943,38004:26479,38005:30403,38006:29260,38007:32972,38008:32954,38009:36649,38010:37197,38011:20493,38012:22521,38013:23186,38014:26757,38016:26995,38017:29028,38018:29437,38019:36023,38020:22770,38021:36064,38022:38506,38023:36889,38024:34687,38025:31204,38026:30695,38027:33833,38028:20271,38029:21093,38030:21338,38031:25293,38032:26575,38033:27850,38034:30333,38035:31636,38036:31893,38037:33334,38038:34180,38039:36843,38040:26333,38041:28448,38042:29190,38043:32283,38044:33707,38045:39361,38046:40614,38047:20989,38048:31665,38049:30834,38050:31672,38051:32903,38052:31560,38053:27368,38054:24161,38055:32908,38056:30033,38057:30048,38058:20843,38059:37474,38060:28300,38061:30330,38062:37271,38063:39658,38064:20240,38065:32624,38066:25244,38067:31567,38068:38309,38069:40169,38070:22138,38071:22617,38072:34532,38073:38588,38074:20276,38075:21028,38076:21322,38077:21453,38078:21467,38079:24070,38080:25644,38081:26001,38082:26495,38083:27710,38084:27726,38085:29256,38086:29359,38087:29677,38088:30036,38089:32321,38090:33324,38091:34281,38092:36009,38093:31684,38094:37318,38095:29033,38096:38930,38097:39151,38098:25405,38099:26217,38100:30058,38101:30436,38102:30928,38103:34115,38104:34542,38105:21290,38106:21329,38107:21542,38108:22915,38109:24199,38110:24444,38111:24754,38112:25161,38113:25209,38114:25259,38115:26e3,38116:27604,38117:27852,38118:30130,38119:30382,38120:30865,38121:31192,38122:32203,38123:32631,38124:32933,38125:34987,38126:35513,38127:36027,38128:36991,38129:38750,38130:39131,38131:27147,38132:31800,38133:20633,38134:23614,38135:24494,38136:26503,38137:27608,38138:29749,38139:30473,38140:32654,38208:40763,38209:26570,38210:31255,38211:21305,38212:30091,38213:39661,38214:24422,38215:33181,38216:33777,38217:32920,38218:24380,38219:24517,38220:30050,38221:31558,38222:36924,38223:26727,38224:23019,38225:23195,38226:32016,38227:30334,38228:35628,38229:20469,38230:24426,38231:27161,38232:27703,38233:28418,38234:29922,38235:31080,38236:34920,38237:35413,38238:35961,38239:24287,38240:25551,38241:30149,38242:31186,38243:33495,38244:37672,38245:37618,38246:33948,38247:34541,38248:39981,38249:21697,38250:24428,38251:25996,38252:27996,38253:28693,38254:36007,38255:36051,38256:38971,38257:25935,38258:29942,38259:19981,38260:20184,38261:22496,38262:22827,38263:23142,38264:23500,38265:20904,38266:24067,38267:24220,38268:24598,38269:25206,38270:25975,38272:26023,38273:26222,38274:28014,38275:29238,38276:31526,38277:33104,38278:33178,38279:33433,38280:35676,38281:36e3,38282:36070,38283:36212,38284:38428,38285:38468,38286:20398,38287:25771,38288:27494,38289:33310,38290:33889,38291:34154,38292:37096,38293:23553,38294:26963,38295:39080,38296:33914,38297:34135,38298:20239,38299:21103,38300:24489,38301:24133,38302:26381,38303:31119,38304:33145,38305:35079,38306:35206,38307:28149,38308:24343,38309:25173,38310:27832,38311:20175,38312:29289,38313:39826,38314:20998,38315:21563,38316:22132,38317:22707,38318:24996,38319:25198,38320:28954,38321:22894,38322:31881,38323:31966,38324:32027,38325:38640,38326:25991,38327:32862,38328:19993,38329:20341,38330:20853,38331:22592,38332:24163,38333:24179,38334:24330,38335:26564,38336:20006,38337:34109,38338:38281,38339:38491,38340:31859,38341:38913,38342:20731,38343:22721,38344:30294,38345:30887,38346:21029,38347:30629,38348:34065,38349:31622,38350:20559,38351:22793,38352:29255,38353:31687,38354:32232,38355:36794,38356:36820,38357:36941,38358:20415,38359:21193,38360:23081,38361:24321,38362:38829,38363:20445,38364:33303,38365:37610,38366:22275,38367:25429,38368:27497,38369:29995,38370:35036,38371:36628,38372:31298,38373:21215,38374:22675,38375:24917,38376:25098,38377:26286,38378:27597,38379:31807,38380:33769,38381:20515,38382:20472,38383:21253,38384:21574,38385:22577,38386:22857,38387:23453,38388:23792,38389:23791,38390:23849,38391:24214,38392:25265,38393:25447,38394:25918,38395:26041,38396:26379,38464:27861,38465:27873,38466:28921,38467:30770,38468:32299,38469:32990,38470:33459,38471:33804,38472:34028,38473:34562,38474:35090,38475:35370,38476:35914,38477:37030,38478:37586,38479:39165,38480:40179,38481:40300,38482:20047,38483:20129,38484:20621,38485:21078,38486:22346,38487:22952,38488:24125,38489:24536,38490:24537,38491:25151,38492:26292,38493:26395,38494:26576,38495:26834,38496:20882,38497:32033,38498:32938,38499:33192,38500:35584,38501:35980,38502:36031,38503:37502,38504:38450,38505:21536,38506:38956,38507:21271,38508:20693,38509:21340,38510:22696,38511:25778,38512:26420,38513:29287,38514:30566,38515:31302,38516:37350,38517:21187,38518:27809,38519:27526,38520:22528,38521:24140,38522:22868,38523:26412,38524:32763,38525:20961,38526:30406,38528:25705,38529:30952,38530:39764,38531:40635,38532:22475,38533:22969,38534:26151,38535:26522,38536:27598,38537:21737,38538:27097,38539:24149,38540:33180,38541:26517,38542:39850,38543:26622,38544:40018,38545:26717,38546:20134,38547:20451,38548:21448,38549:25273,38550:26411,38551:27819,38552:36804,38553:20397,38554:32365,38555:40639,38556:19975,38557:24930,38558:28288,38559:28459,38560:34067,38561:21619,38562:26410,38563:39749,38564:24051,38565:31637,38566:23724,38567:23494,38568:34588,38569:28234,38570:34001,38571:31252,38572:33032,38573:22937,38574:31885,38575:27665,38576:30496,38577:21209,38578:22818,38579:28961,38580:29279,38581:30683,38582:38695,38583:40289,38584:26891,38585:23167,38586:23064,38587:20901,38588:21517,38589:21629,38590:26126,38591:30431,38592:36855,38593:37528,38594:40180,38595:23018,38596:29277,38597:28357,38598:20813,38599:26825,38600:32191,38601:32236,38602:38754,38603:40634,38604:25720,38605:27169,38606:33538,38607:22916,38608:23391,38609:27611,38610:29467,38611:30450,38612:32178,38613:32791,38614:33945,38615:20786,38616:26408,38617:40665,38618:30446,38619:26466,38620:21247,38621:39173,38622:23588,38623:25147,38624:31870,38625:36016,38626:21839,38627:24758,38628:32011,38629:38272,38630:21249,38631:20063,38632:20918,38633:22812,38634:29242,38635:32822,38636:37326,38637:24357,38638:30690,38639:21380,38640:24441,38641:32004,38642:34220,38643:35379,38644:36493,38645:38742,38646:26611,38647:34222,38648:37971,38649:24841,38650:24840,38651:27833,38652:30290,38720:35565,38721:36664,38722:21807,38723:20305,38724:20778,38725:21191,38726:21451,38727:23461,38728:24189,38729:24736,38730:24962,38731:25558,38732:26377,38733:26586,38734:28263,38735:28044,38736:29494,38737:29495,38738:30001,38739:31056,38740:35029,38741:35480,38742:36938,38743:37009,38744:37109,38745:38596,38746:34701,38747:22805,38748:20104,38749:20313,38750:19982,38751:35465,38752:36671,38753:38928,38754:20653,38755:24188,38756:22934,38757:23481,38758:24248,38759:25562,38760:25594,38761:25793,38762:26332,38763:26954,38764:27096,38765:27915,38766:28342,38767:29076,38768:29992,38769:31407,38770:32650,38771:32768,38772:33865,38773:33993,38774:35201,38775:35617,38776:36362,38777:36965,38778:38525,38779:39178,38780:24958,38781:25233,38782:27442,38784:27779,38785:28020,38786:32716,38787:32764,38788:28096,38789:32645,38790:34746,38791:35064,38792:26469,38793:33713,38794:38972,38795:38647,38796:27931,38797:32097,38798:33853,38799:37226,38800:20081,38801:21365,38802:23888,38803:27396,38804:28651,38805:34253,38806:34349,38807:35239,38808:21033,38809:21519,38810:23653,38811:26446,38812:26792,38813:29702,38814:29827,38815:30178,38816:35023,38817:35041,38818:37324,38819:38626,38820:38520,38821:24459,38822:29575,38823:31435,38824:33870,38825:25504,38826:30053,38827:21129,38828:27969,38829:28316,38830:29705,38831:30041,38832:30827,38833:31890,38834:38534,38835:31452,38836:40845,38837:20406,38838:24942,38839:26053,38840:34396,38841:20102,38842:20142,38843:20698,38844:20001,38845:20940,38846:23534,38847:26009,38848:26753,38849:28092,38850:29471,38851:30274,38852:30637,38853:31260,38854:31975,38855:33391,38856:35538,38857:36988,38858:37327,38859:38517,38860:38936,38861:21147,38862:32209,38863:20523,38864:21400,38865:26519,38866:28107,38867:29136,38868:29747,38869:33256,38870:36650,38871:38563,38872:40023,38873:40607,38874:29792,38875:22593,38876:28057,38877:32047,38878:39006,38879:20196,38880:20278,38881:20363,38882:20919,38883:21169,38884:23994,38885:24604,38886:29618,38887:31036,38888:33491,38889:37428,38890:38583,38891:38646,38892:38666,38893:40599,38894:40802,38895:26278,38896:27508,38897:21015,38898:21155,38899:28872,38900:35010,38901:24265,38902:24651,38903:24976,38904:28451,38905:29001,38906:31806,38907:32244,38908:32879,38976:34030,38977:36899,38978:37676,38979:21570,38980:39791,38981:27347,38982:28809,38983:36034,38984:36335,38985:38706,38986:21172,38987:23105,38988:24266,38989:24324,38990:26391,38991:27004,38992:27028,38993:28010,38994:28431,38995:29282,38996:29436,38997:31725,38998:32769,38999:32894,39000:34635,39001:37070,39002:20845,39003:40595,39004:31108,39005:32907,39006:37682,39007:35542,39008:20525,39009:21644,39010:35441,39011:27498,39012:36036,39013:33031,39014:24785,39015:26528,39016:40434,39017:20121,39018:20120,39019:39952,39020:35435,39021:34241,39022:34152,39023:26880,39024:28286,39025:30871,39026:33109,39071:24332,39072:19984,39073:19989,39074:20010,39075:20017,39076:20022,39077:20028,39078:20031,39079:20034,39080:20054,39081:20056,39082:20098,39083:20101,39084:35947,39085:20106,39086:33298,39087:24333,39088:20110,39089:20126,39090:20127,39091:20128,39092:20130,39093:20144,39094:20147,39095:20150,39096:20174,39097:20173,39098:20164,39099:20166,39100:20162,39101:20183,39102:20190,39103:20205,39104:20191,39105:20215,39106:20233,39107:20314,39108:20272,39109:20315,39110:20317,39111:20311,39112:20295,39113:20342,39114:20360,39115:20367,39116:20376,39117:20347,39118:20329,39119:20336,39120:20369,39121:20335,39122:20358,39123:20374,39124:20760,39125:20436,39126:20447,39127:20430,39128:20440,39129:20443,39130:20433,39131:20442,39132:20432,39133:20452,39134:20453,39135:20506,39136:20520,39137:20500,39138:20522,39139:20517,39140:20485,39141:20252,39142:20470,39143:20513,39144:20521,39145:20524,39146:20478,39147:20463,39148:20497,39149:20486,39150:20547,39151:20551,39152:26371,39153:20565,39154:20560,39155:20552,39156:20570,39157:20566,39158:20588,39159:20600,39160:20608,39161:20634,39162:20613,39163:20660,39164:20658,39232:20681,39233:20682,39234:20659,39235:20674,39236:20694,39237:20702,39238:20709,39239:20717,39240:20707,39241:20718,39242:20729,39243:20725,39244:20745,39245:20737,39246:20738,39247:20758,39248:20757,39249:20756,39250:20762,39251:20769,39252:20794,39253:20791,39254:20796,39255:20795,39256:20799,39257:20800,39258:20818,39259:20812,39260:20820,39261:20834,39262:31480,39263:20841,39264:20842,39265:20846,39266:20864,39267:20866,39268:22232,39269:20876,39270:20873,39271:20879,39272:20881,39273:20883,39274:20885,39275:20886,39276:20900,39277:20902,39278:20898,39279:20905,39280:20906,39281:20907,39282:20915,39283:20913,39284:20914,39285:20912,39286:20917,39287:20925,39288:20933,39289:20937,39290:20955,39291:20960,39292:34389,39293:20969,39294:20973,39296:20976,39297:20981,39298:20990,39299:20996,39300:21003,39301:21012,39302:21006,39303:21031,39304:21034,39305:21038,39306:21043,39307:21049,39308:21071,39309:21060,39310:21067,39311:21068,39312:21086,39313:21076,39314:21098,39315:21108,39316:21097,39317:21107,39318:21119,39319:21117,39320:21133,39321:21140,39322:21138,39323:21105,39324:21128,39325:21137,39326:36776,39327:36775,39328:21164,39329:21165,39330:21180,39331:21173,39332:21185,39333:21197,39334:21207,39335:21214,39336:21219,39337:21222,39338:39149,39339:21216,39340:21235,39341:21237,39342:21240,39343:21241,39344:21254,39345:21256,39346:30008,39347:21261,39348:21264,39349:21263,39350:21269,39351:21274,39352:21283,39353:21295,39354:21297,39355:21299,39356:21304,39357:21312,39358:21318,39359:21317,39360:19991,39361:21321,39362:21325,39363:20950,39364:21342,39365:21353,39366:21358,39367:22808,39368:21371,39369:21367,39370:21378,39371:21398,39372:21408,39373:21414,39374:21413,39375:21422,39376:21424,39377:21430,39378:21443,39379:31762,39380:38617,39381:21471,39382:26364,39383:29166,39384:21486,39385:21480,39386:21485,39387:21498,39388:21505,39389:21565,39390:21568,39391:21548,39392:21549,39393:21564,39394:21550,39395:21558,39396:21545,39397:21533,39398:21582,39399:21647,39400:21621,39401:21646,39402:21599,39403:21617,39404:21623,39405:21616,39406:21650,39407:21627,39408:21632,39409:21622,39410:21636,39411:21648,39412:21638,39413:21703,39414:21666,39415:21688,39416:21669,39417:21676,39418:21700,39419:21704,39420:21672,39488:21675,39489:21698,39490:21668,39491:21694,39492:21692,39493:21720,39494:21733,39495:21734,39496:21775,39497:21780,39498:21757,39499:21742,39500:21741,39501:21754,39502:21730,39503:21817,39504:21824,39505:21859,39506:21836,39507:21806,39508:21852,39509:21829,39510:21846,39511:21847,39512:21816,39513:21811,39514:21853,39515:21913,39516:21888,39517:21679,39518:21898,39519:21919,39520:21883,39521:21886,39522:21912,39523:21918,39524:21934,39525:21884,39526:21891,39527:21929,39528:21895,39529:21928,39530:21978,39531:21957,39532:21983,39533:21956,39534:21980,39535:21988,39536:21972,39537:22036,39538:22007,39539:22038,39540:22014,39541:22013,39542:22043,39543:22009,39544:22094,39545:22096,39546:29151,39547:22068,39548:22070,39549:22066,39550:22072,39552:22123,39553:22116,39554:22063,39555:22124,39556:22122,39557:22150,39558:22144,39559:22154,39560:22176,39561:22164,39562:22159,39563:22181,39564:22190,39565:22198,39566:22196,39567:22210,39568:22204,39569:22209,39570:22211,39571:22208,39572:22216,39573:22222,39574:22225,39575:22227,39576:22231,39577:22254,39578:22265,39579:22272,39580:22271,39581:22276,39582:22281,39583:22280,39584:22283,39585:22285,39586:22291,39587:22296,39588:22294,39589:21959,39590:22300,39591:22310,39592:22327,39593:22328,39594:22350,39595:22331,39596:22336,39597:22351,39598:22377,39599:22464,39600:22408,39601:22369,39602:22399,39603:22409,39604:22419,39605:22432,39606:22451,39607:22436,39608:22442,39609:22448,39610:22467,39611:22470,39612:22484,39613:22482,39614:22483,39615:22538,39616:22486,39617:22499,39618:22539,39619:22553,39620:22557,39621:22642,39622:22561,39623:22626,39624:22603,39625:22640,39626:27584,39627:22610,39628:22589,39629:22649,39630:22661,39631:22713,39632:22687,39633:22699,39634:22714,39635:22750,39636:22715,39637:22712,39638:22702,39639:22725,39640:22739,39641:22737,39642:22743,39643:22745,39644:22744,39645:22757,39646:22748,39647:22756,39648:22751,39649:22767,39650:22778,39651:22777,39652:22779,39653:22780,39654:22781,39655:22786,39656:22794,39657:22800,39658:22811,39659:26790,39660:22821,39661:22828,39662:22829,39663:22834,39664:22840,39665:22846,39666:31442,39667:22869,39668:22864,39669:22862,39670:22874,39671:22872,39672:22882,39673:22880,39674:22887,39675:22892,39676:22889,39744:22904,39745:22913,39746:22941,39747:20318,39748:20395,39749:22947,39750:22962,39751:22982,39752:23016,39753:23004,39754:22925,39755:23001,39756:23002,39757:23077,39758:23071,39759:23057,39760:23068,39761:23049,39762:23066,39763:23104,39764:23148,39765:23113,39766:23093,39767:23094,39768:23138,39769:23146,39770:23194,39771:23228,39772:23230,39773:23243,39774:23234,39775:23229,39776:23267,39777:23255,39778:23270,39779:23273,39780:23254,39781:23290,39782:23291,39783:23308,39784:23307,39785:23318,39786:23346,39787:23248,39788:23338,39789:23350,39790:23358,39791:23363,39792:23365,39793:23360,39794:23377,39795:23381,39796:23386,39797:23387,39798:23397,39799:23401,39800:23408,39801:23411,39802:23413,39803:23416,39804:25992,39805:23418,39806:23424,39808:23427,39809:23462,39810:23480,39811:23491,39812:23495,39813:23497,39814:23508,39815:23504,39816:23524,39817:23526,39818:23522,39819:23518,39820:23525,39821:23531,39822:23536,39823:23542,39824:23539,39825:23557,39826:23559,39827:23560,39828:23565,39829:23571,39830:23584,39831:23586,39832:23592,39833:23608,39834:23609,39835:23617,39836:23622,39837:23630,39838:23635,39839:23632,39840:23631,39841:23409,39842:23660,39843:23662,39844:20066,39845:23670,39846:23673,39847:23692,39848:23697,39849:23700,39850:22939,39851:23723,39852:23739,39853:23734,39854:23740,39855:23735,39856:23749,39857:23742,39858:23751,39859:23769,39860:23785,39861:23805,39862:23802,39863:23789,39864:23948,39865:23786,39866:23819,39867:23829,39868:23831,39869:23900,39870:23839,39871:23835,39872:23825,39873:23828,39874:23842,39875:23834,39876:23833,39877:23832,39878:23884,39879:23890,39880:23886,39881:23883,39882:23916,39883:23923,39884:23926,39885:23943,39886:23940,39887:23938,39888:23970,39889:23965,39890:23980,39891:23982,39892:23997,39893:23952,39894:23991,39895:23996,39896:24009,39897:24013,39898:24019,39899:24018,39900:24022,39901:24027,39902:24043,39903:24050,39904:24053,39905:24075,39906:24090,39907:24089,39908:24081,39909:24091,39910:24118,39911:24119,39912:24132,39913:24131,39914:24128,39915:24142,39916:24151,39917:24148,39918:24159,39919:24162,39920:24164,39921:24135,39922:24181,39923:24182,39924:24186,39925:40636,39926:24191,39927:24224,39928:24257,39929:24258,39930:24264,39931:24272,39932:24271,40000:24278,40001:24291,40002:24285,40003:24282,40004:24283,40005:24290,40006:24289,40007:24296,40008:24297,40009:24300,40010:24305,40011:24307,40012:24304,40013:24308,40014:24312,40015:24318,40016:24323,40017:24329,40018:24413,40019:24412,40020:24331,40021:24337,40022:24342,40023:24361,40024:24365,40025:24376,40026:24385,40027:24392,40028:24396,40029:24398,40030:24367,40031:24401,40032:24406,40033:24407,40034:24409,40035:24417,40036:24429,40037:24435,40038:24439,40039:24451,40040:24450,40041:24447,40042:24458,40043:24456,40044:24465,40045:24455,40046:24478,40047:24473,40048:24472,40049:24480,40050:24488,40051:24493,40052:24508,40053:24534,40054:24571,40055:24548,40056:24568,40057:24561,40058:24541,40059:24755,40060:24575,40061:24609,40062:24672,40064:24601,40065:24592,40066:24617,40067:24590,40068:24625,40069:24603,40070:24597,40071:24619,40072:24614,40073:24591,40074:24634,40075:24666,40076:24641,40077:24682,40078:24695,40079:24671,40080:24650,40081:24646,40082:24653,40083:24675,40084:24643,40085:24676,40086:24642,40087:24684,40088:24683,40089:24665,40090:24705,40091:24717,40092:24807,40093:24707,40094:24730,40095:24708,40096:24731,40097:24726,40098:24727,40099:24722,40100:24743,40101:24715,40102:24801,40103:24760,40104:24800,40105:24787,40106:24756,40107:24560,40108:24765,40109:24774,40110:24757,40111:24792,40112:24909,40113:24853,40114:24838,40115:24822,40116:24823,40117:24832,40118:24820,40119:24826,40120:24835,40121:24865,40122:24827,40123:24817,40124:24845,40125:24846,40126:24903,40127:24894,40128:24872,40129:24871,40130:24906,40131:24895,40132:24892,40133:24876,40134:24884,40135:24893,40136:24898,40137:24900,40138:24947,40139:24951,40140:24920,40141:24921,40142:24922,40143:24939,40144:24948,40145:24943,40146:24933,40147:24945,40148:24927,40149:24925,40150:24915,40151:24949,40152:24985,40153:24982,40154:24967,40155:25004,40156:24980,40157:24986,40158:24970,40159:24977,40160:25003,40161:25006,40162:25036,40163:25034,40164:25033,40165:25079,40166:25032,40167:25027,40168:25030,40169:25018,40170:25035,40171:32633,40172:25037,40173:25062,40174:25059,40175:25078,40176:25082,40177:25076,40178:25087,40179:25085,40180:25084,40181:25086,40182:25088,40183:25096,40184:25097,40185:25101,40186:25100,40187:25108,40188:25115,40256:25118,40257:25121,40258:25130,40259:25134,40260:25136,40261:25138,40262:25139,40263:25153,40264:25166,40265:25182,40266:25187,40267:25179,40268:25184,40269:25192,40270:25212,40271:25218,40272:25225,40273:25214,40274:25234,40275:25235,40276:25238,40277:25300,40278:25219,40279:25236,40280:25303,40281:25297,40282:25275,40283:25295,40284:25343,40285:25286,40286:25812,40287:25288,40288:25308,40289:25292,40290:25290,40291:25282,40292:25287,40293:25243,40294:25289,40295:25356,40296:25326,40297:25329,40298:25383,40299:25346,40300:25352,40301:25327,40302:25333,40303:25424,40304:25406,40305:25421,40306:25628,40307:25423,40308:25494,40309:25486,40310:25472,40311:25515,40312:25462,40313:25507,40314:25487,40315:25481,40316:25503,40317:25525,40318:25451,40320:25449,40321:25534,40322:25577,40323:25536,40324:25542,40325:25571,40326:25545,40327:25554,40328:25590,40329:25540,40330:25622,40331:25652,40332:25606,40333:25619,40334:25638,40335:25654,40336:25885,40337:25623,40338:25640,40339:25615,40340:25703,40341:25711,40342:25718,40343:25678,40344:25898,40345:25749,40346:25747,40347:25765,40348:25769,40349:25736,40350:25788,40351:25818,40352:25810,40353:25797,40354:25799,40355:25787,40356:25816,40357:25794,40358:25841,40359:25831,40360:33289,40361:25824,40362:25825,40363:25260,40364:25827,40365:25839,40366:25900,40367:25846,40368:25844,40369:25842,40370:25850,40371:25856,40372:25853,40373:25880,40374:25884,40375:25861,40376:25892,40377:25891,40378:25899,40379:25908,40380:25909,40381:25911,40382:25910,40383:25912,40384:30027,40385:25928,40386:25942,40387:25941,40388:25933,40389:25944,40390:25950,40391:25949,40392:25970,40393:25976,40394:25986,40395:25987,40396:35722,40397:26011,40398:26015,40399:26027,40400:26039,40401:26051,40402:26054,40403:26049,40404:26052,40405:26060,40406:26066,40407:26075,40408:26073,40409:26080,40410:26081,40411:26097,40412:26482,40413:26122,40414:26115,40415:26107,40416:26483,40417:26165,40418:26166,40419:26164,40420:26140,40421:26191,40422:26180,40423:26185,40424:26177,40425:26206,40426:26205,40427:26212,40428:26215,40429:26216,40430:26207,40431:26210,40432:26224,40433:26243,40434:26248,40435:26254,40436:26249,40437:26244,40438:26264,40439:26269,40440:26305,40441:26297,40442:26313,40443:26302,40444:26300,40512:26308,40513:26296,40514:26326,40515:26330,40516:26336,40517:26175,40518:26342,40519:26345,40520:26352,40521:26357,40522:26359,40523:26383,40524:26390,40525:26398,40526:26406,40527:26407,40528:38712,40529:26414,40530:26431,40531:26422,40532:26433,40533:26424,40534:26423,40535:26438,40536:26462,40537:26464,40538:26457,40539:26467,40540:26468,40541:26505,40542:26480,40543:26537,40544:26492,40545:26474,40546:26508,40547:26507,40548:26534,40549:26529,40550:26501,40551:26551,40552:26607,40553:26548,40554:26604,40555:26547,40556:26601,40557:26552,40558:26596,40559:26590,40560:26589,40561:26594,40562:26606,40563:26553,40564:26574,40565:26566,40566:26599,40567:27292,40568:26654,40569:26694,40570:26665,40571:26688,40572:26701,40573:26674,40574:26702,40576:26803,40577:26667,40578:26713,40579:26723,40580:26743,40581:26751,40582:26783,40583:26767,40584:26797,40585:26772,40586:26781,40587:26779,40588:26755,40589:27310,40590:26809,40591:26740,40592:26805,40593:26784,40594:26810,40595:26895,40596:26765,40597:26750,40598:26881,40599:26826,40600:26888,40601:26840,40602:26914,40603:26918,40604:26849,40605:26892,40606:26829,40607:26836,40608:26855,40609:26837,40610:26934,40611:26898,40612:26884,40613:26839,40614:26851,40615:26917,40616:26873,40617:26848,40618:26863,40619:26920,40620:26922,40621:26906,40622:26915,40623:26913,40624:26822,40625:27001,40626:26999,40627:26972,40628:27e3,40629:26987,40630:26964,40631:27006,40632:26990,40633:26937,40634:26996,40635:26941,40636:26969,40637:26928,40638:26977,40639:26974,40640:26973,40641:27009,40642:26986,40643:27058,40644:27054,40645:27088,40646:27071,40647:27073,40648:27091,40649:27070,40650:27086,40651:23528,40652:27082,40653:27101,40654:27067,40655:27075,40656:27047,40657:27182,40658:27025,40659:27040,40660:27036,40661:27029,40662:27060,40663:27102,40664:27112,40665:27138,40666:27163,40667:27135,40668:27402,40669:27129,40670:27122,40671:27111,40672:27141,40673:27057,40674:27166,40675:27117,40676:27156,40677:27115,40678:27146,40679:27154,40680:27329,40681:27171,40682:27155,40683:27204,40684:27148,40685:27250,40686:27190,40687:27256,40688:27207,40689:27234,40690:27225,40691:27238,40692:27208,40693:27192,40694:27170,40695:27280,40696:27277,40697:27296,40698:27268,40699:27298,40700:27299,40768:27287,40769:34327,40770:27323,40771:27331,40772:27330,40773:27320,40774:27315,40775:27308,40776:27358,40777:27345,40778:27359,40779:27306,40780:27354,40781:27370,40782:27387,40783:27397,40784:34326,40785:27386,40786:27410,40787:27414,40788:39729,40789:27423,40790:27448,40791:27447,40792:30428,40793:27449,40794:39150,40795:27463,40796:27459,40797:27465,40798:27472,40799:27481,40800:27476,40801:27483,40802:27487,40803:27489,40804:27512,40805:27513,40806:27519,40807:27520,40808:27524,40809:27523,40810:27533,40811:27544,40812:27541,40813:27550,40814:27556,40815:27562,40816:27563,40817:27567,40818:27570,40819:27569,40820:27571,40821:27575,40822:27580,40823:27590,40824:27595,40825:27603,40826:27615,40827:27628,40828:27627,40829:27635,40830:27631,40832:40638,40833:27656,40834:27667,40835:27668,40836:27675,40837:27684,40838:27683,40839:27742,40840:27733,40841:27746,40842:27754,40843:27778,40844:27789,40845:27802,40846:27777,40847:27803,40848:27774,40849:27752,40850:27763,40851:27794,40852:27792,40853:27844,40854:27889,40855:27859,40856:27837,40857:27863,40858:27845,40859:27869,40860:27822,40861:27825,40862:27838,40863:27834,40864:27867,40865:27887,40866:27865,40867:27882,40868:27935,40869:34893,40870:27958,40871:27947,40872:27965,40873:27960,40874:27929,40875:27957,40876:27955,40877:27922,40878:27916,40879:28003,40880:28051,40881:28004,40882:27994,40883:28025,40884:27993,40885:28046,40886:28053,40887:28644,40888:28037,40889:28153,40890:28181,40891:28170,40892:28085,40893:28103,40894:28134,40895:28088,40896:28102,40897:28140,40898:28126,40899:28108,40900:28136,40901:28114,40902:28101,40903:28154,40904:28121,40905:28132,40906:28117,40907:28138,40908:28142,40909:28205,40910:28270,40911:28206,40912:28185,40913:28274,40914:28255,40915:28222,40916:28195,40917:28267,40918:28203,40919:28278,40920:28237,40921:28191,40922:28227,40923:28218,40924:28238,40925:28196,40926:28415,40927:28189,40928:28216,40929:28290,40930:28330,40931:28312,40932:28361,40933:28343,40934:28371,40935:28349,40936:28335,40937:28356,40938:28338,40939:28372,40940:28373,40941:28303,40942:28325,40943:28354,40944:28319,40945:28481,40946:28433,40947:28748,40948:28396,40949:28408,40950:28414,40951:28479,40952:28402,40953:28465,40954:28399,40955:28466,40956:28364,161:65377,162:65378,163:65379,164:65380,165:65381,166:65382,167:65383,168:65384,169:65385,170:65386,171:65387,172:65388,173:65389,174:65390,175:65391,176:65392,177:65393,178:65394,179:65395,180:65396,181:65397,182:65398,183:65399,184:65400,185:65401,186:65402,187:65403,188:65404,189:65405,190:65406,191:65407,192:65408,193:65409,194:65410,195:65411,196:65412,197:65413,198:65414,199:65415,200:65416,201:65417,202:65418,203:65419,204:65420,205:65421,206:65422,207:65423,208:65424,209:65425,210:65426,211:65427,212:65428,213:65429,214:65430,215:65431,216:65432,217:65433,218:65434,219:65435,220:65436,221:65437,222:65438,223:65439,57408:28478,57409:28435,57410:28407,57411:28550,57412:28538,57413:28536,57414:28545,57415:28544,57416:28527,57417:28507,57418:28659,57419:28525,57420:28546,57421:28540,57422:28504,57423:28558,57424:28561,57425:28610,57426:28518,57427:28595,57428:28579,57429:28577,57430:28580,57431:28601,57432:28614,57433:28586,57434:28639,57435:28629,57436:28652,57437:28628,57438:28632,57439:28657,57440:28654,57441:28635,57442:28681,57443:28683,57444:28666,57445:28689,57446:28673,57447:28687,57448:28670,57449:28699,57450:28698,57451:28532,57452:28701,57453:28696,57454:28703,57455:28720,57456:28734,57457:28722,57458:28753,57459:28771,57460:28825,57461:28818,57462:28847,57463:28913,57464:28844,57465:28856,57466:28851,57467:28846,57468:28895,57469:28875,57470:28893,57472:28889,57473:28937,57474:28925,57475:28956,57476:28953,57477:29029,57478:29013,57479:29064,57480:29030,57481:29026,57482:29004,57483:29014,57484:29036,57485:29071,57486:29179,57487:29060,57488:29077,57489:29096,57490:29100,57491:29143,57492:29113,57493:29118,57494:29138,57495:29129,57496:29140,57497:29134,57498:29152,57499:29164,57500:29159,57501:29173,57502:29180,57503:29177,57504:29183,57505:29197,57506:29200,57507:29211,57508:29224,57509:29229,57510:29228,57511:29232,57512:29234,57513:29243,57514:29244,57515:29247,57516:29248,57517:29254,57518:29259,57519:29272,57520:29300,57521:29310,57522:29314,57523:29313,57524:29319,57525:29330,57526:29334,57527:29346,57528:29351,57529:29369,57530:29362,57531:29379,57532:29382,57533:29380,57534:29390,57535:29394,57536:29410,57537:29408,57538:29409,57539:29433,57540:29431,57541:20495,57542:29463,57543:29450,57544:29468,57545:29462,57546:29469,57547:29492,57548:29487,57549:29481,57550:29477,57551:29502,57552:29518,57553:29519,57554:40664,57555:29527,57556:29546,57557:29544,57558:29552,57559:29560,57560:29557,57561:29563,57562:29562,57563:29640,57564:29619,57565:29646,57566:29627,57567:29632,57568:29669,57569:29678,57570:29662,57571:29858,57572:29701,57573:29807,57574:29733,57575:29688,57576:29746,57577:29754,57578:29781,57579:29759,57580:29791,57581:29785,57582:29761,57583:29788,57584:29801,57585:29808,57586:29795,57587:29802,57588:29814,57589:29822,57590:29835,57591:29854,57592:29863,57593:29898,57594:29903,57595:29908,57596:29681,57664:29920,57665:29923,57666:29927,57667:29929,57668:29934,57669:29938,57670:29936,57671:29937,57672:29944,57673:29943,57674:29956,57675:29955,57676:29957,57677:29964,57678:29966,57679:29965,57680:29973,57681:29971,57682:29982,57683:29990,57684:29996,57685:30012,57686:30020,57687:30029,57688:30026,57689:30025,57690:30043,57691:30022,57692:30042,57693:30057,57694:30052,57695:30055,57696:30059,57697:30061,57698:30072,57699:30070,57700:30086,57701:30087,57702:30068,57703:30090,57704:30089,57705:30082,57706:30100,57707:30106,57708:30109,57709:30117,57710:30115,57711:30146,57712:30131,57713:30147,57714:30133,57715:30141,57716:30136,57717:30140,57718:30129,57719:30157,57720:30154,57721:30162,57722:30169,57723:30179,57724:30174,57725:30206,57726:30207,57728:30204,57729:30209,57730:30192,57731:30202,57732:30194,57733:30195,57734:30219,57735:30221,57736:30217,57737:30239,57738:30247,57739:30240,57740:30241,57741:30242,57742:30244,57743:30260,57744:30256,57745:30267,57746:30279,57747:30280,57748:30278,57749:30300,57750:30296,57751:30305,57752:30306,57753:30312,57754:30313,57755:30314,57756:30311,57757:30316,57758:30320,57759:30322,57760:30326,57761:30328,57762:30332,57763:30336,57764:30339,57765:30344,57766:30347,57767:30350,57768:30358,57769:30355,57770:30361,57771:30362,57772:30384,57773:30388,57774:30392,57775:30393,57776:30394,57777:30402,57778:30413,57779:30422,57780:30418,57781:30430,57782:30433,57783:30437,57784:30439,57785:30442,57786:34351,57787:30459,57788:30472,57789:30471,57790:30468,57791:30505,57792:30500,57793:30494,57794:30501,57795:30502,57796:30491,57797:30519,57798:30520,57799:30535,57800:30554,57801:30568,57802:30571,57803:30555,57804:30565,57805:30591,57806:30590,57807:30585,57808:30606,57809:30603,57810:30609,57811:30624,57812:30622,57813:30640,57814:30646,57815:30649,57816:30655,57817:30652,57818:30653,57819:30651,57820:30663,57821:30669,57822:30679,57823:30682,57824:30684,57825:30691,57826:30702,57827:30716,57828:30732,57829:30738,57830:31014,57831:30752,57832:31018,57833:30789,57834:30862,57835:30836,57836:30854,57837:30844,57838:30874,57839:30860,57840:30883,57841:30901,57842:30890,57843:30895,57844:30929,57845:30918,57846:30923,57847:30932,57848:30910,57849:30908,57850:30917,57851:30922,57852:30956,57920:30951,57921:30938,57922:30973,57923:30964,57924:30983,57925:30994,57926:30993,57927:31001,57928:31020,57929:31019,57930:31040,57931:31072,57932:31063,57933:31071,57934:31066,57935:31061,57936:31059,57937:31098,57938:31103,57939:31114,57940:31133,57941:31143,57942:40779,57943:31146,57944:31150,57945:31155,57946:31161,57947:31162,57948:31177,57949:31189,57950:31207,57951:31212,57952:31201,57953:31203,57954:31240,57955:31245,57956:31256,57957:31257,57958:31264,57959:31263,57960:31104,57961:31281,57962:31291,57963:31294,57964:31287,57965:31299,57966:31319,57967:31305,57968:31329,57969:31330,57970:31337,57971:40861,57972:31344,57973:31353,57974:31357,57975:31368,57976:31383,57977:31381,57978:31384,57979:31382,57980:31401,57981:31432,57982:31408,57984:31414,57985:31429,57986:31428,57987:31423,57988:36995,57989:31431,57990:31434,57991:31437,57992:31439,57993:31445,57994:31443,57995:31449,57996:31450,57997:31453,57998:31457,57999:31458,58000:31462,58001:31469,58002:31472,58003:31490,58004:31503,58005:31498,58006:31494,58007:31539,58008:31512,58009:31513,58010:31518,58011:31541,58012:31528,58013:31542,58014:31568,58015:31610,58016:31492,58017:31565,58018:31499,58019:31564,58020:31557,58021:31605,58022:31589,58023:31604,58024:31591,58025:31600,58026:31601,58027:31596,58028:31598,58029:31645,58030:31640,58031:31647,58032:31629,58033:31644,58034:31642,58035:31627,58036:31634,58037:31631,58038:31581,58039:31641,58040:31691,58041:31681,58042:31692,58043:31695,58044:31668,58045:31686,58046:31709,58047:31721,58048:31761,58049:31764,58050:31718,58051:31717,58052:31840,58053:31744,58054:31751,58055:31763,58056:31731,58057:31735,58058:31767,58059:31757,58060:31734,58061:31779,58062:31783,58063:31786,58064:31775,58065:31799,58066:31787,58067:31805,58068:31820,58069:31811,58070:31828,58071:31823,58072:31808,58073:31824,58074:31832,58075:31839,58076:31844,58077:31830,58078:31845,58079:31852,58080:31861,58081:31875,58082:31888,58083:31908,58084:31917,58085:31906,58086:31915,58087:31905,58088:31912,58089:31923,58090:31922,58091:31921,58092:31918,58093:31929,58094:31933,58095:31936,58096:31941,58097:31938,58098:31960,58099:31954,58100:31964,58101:31970,58102:39739,58103:31983,58104:31986,58105:31988,58106:31990,58107:31994,58108:32006,58176:32002,58177:32028,58178:32021,58179:32010,58180:32069,58181:32075,58182:32046,58183:32050,58184:32063,58185:32053,58186:32070,58187:32115,58188:32086,58189:32078,58190:32114,58191:32104,58192:32110,58193:32079,58194:32099,58195:32147,58196:32137,58197:32091,58198:32143,58199:32125,58200:32155,58201:32186,58202:32174,58203:32163,58204:32181,58205:32199,58206:32189,58207:32171,58208:32317,58209:32162,58210:32175,58211:32220,58212:32184,58213:32159,58214:32176,58215:32216,58216:32221,58217:32228,58218:32222,58219:32251,58220:32242,58221:32225,58222:32261,58223:32266,58224:32291,58225:32289,58226:32274,58227:32305,58228:32287,58229:32265,58230:32267,58231:32290,58232:32326,58233:32358,58234:32315,58235:32309,58236:32313,58237:32323,58238:32311,58240:32306,58241:32314,58242:32359,58243:32349,58244:32342,58245:32350,58246:32345,58247:32346,58248:32377,58249:32362,58250:32361,58251:32380,58252:32379,58253:32387,58254:32213,58255:32381,58256:36782,58257:32383,58258:32392,58259:32393,58260:32396,58261:32402,58262:32400,58263:32403,58264:32404,58265:32406,58266:32398,58267:32411,58268:32412,58269:32568,58270:32570,58271:32581,58272:32588,58273:32589,58274:32590,58275:32592,58276:32593,58277:32597,58278:32596,58279:32600,58280:32607,58281:32608,58282:32616,58283:32617,58284:32615,58285:32632,58286:32642,58287:32646,58288:32643,58289:32648,58290:32647,58291:32652,58292:32660,58293:32670,58294:32669,58295:32666,58296:32675,58297:32687,58298:32690,58299:32697,58300:32686,58301:32694,58302:32696,58303:35697,58304:32709,58305:32710,58306:32714,58307:32725,58308:32724,58309:32737,58310:32742,58311:32745,58312:32755,58313:32761,58314:39132,58315:32774,58316:32772,58317:32779,58318:32786,58319:32792,58320:32793,58321:32796,58322:32801,58323:32808,58324:32831,58325:32827,58326:32842,58327:32838,58328:32850,58329:32856,58330:32858,58331:32863,58332:32866,58333:32872,58334:32883,58335:32882,58336:32880,58337:32886,58338:32889,58339:32893,58340:32895,58341:32900,58342:32902,58343:32901,58344:32923,58345:32915,58346:32922,58347:32941,58348:20880,58349:32940,58350:32987,58351:32997,58352:32985,58353:32989,58354:32964,58355:32986,58356:32982,58357:33033,58358:33007,58359:33009,58360:33051,58361:33065,58362:33059,58363:33071,58364:33099,58432:38539,58433:33094,58434:33086,58435:33107,58436:33105,58437:33020,58438:33137,58439:33134,58440:33125,58441:33126,58442:33140,58443:33155,58444:33160,58445:33162,58446:33152,58447:33154,58448:33184,58449:33173,58450:33188,58451:33187,58452:33119,58453:33171,58454:33193,58455:33200,58456:33205,58457:33214,58458:33208,58459:33213,58460:33216,58461:33218,58462:33210,58463:33225,58464:33229,58465:33233,58466:33241,58467:33240,58468:33224,58469:33242,58470:33247,58471:33248,58472:33255,58473:33274,58474:33275,58475:33278,58476:33281,58477:33282,58478:33285,58479:33287,58480:33290,58481:33293,58482:33296,58483:33302,58484:33321,58485:33323,58486:33336,58487:33331,58488:33344,58489:33369,58490:33368,58491:33373,58492:33370,58493:33375,58494:33380,58496:33378,58497:33384,58498:33386,58499:33387,58500:33326,58501:33393,58502:33399,58503:33400,58504:33406,58505:33421,58506:33426,58507:33451,58508:33439,58509:33467,58510:33452,58511:33505,58512:33507,58513:33503,58514:33490,58515:33524,58516:33523,58517:33530,58518:33683,58519:33539,58520:33531,58521:33529,58522:33502,58523:33542,58524:33500,58525:33545,58526:33497,58527:33589,58528:33588,58529:33558,58530:33586,58531:33585,58532:33600,58533:33593,58534:33616,58535:33605,58536:33583,58537:33579,58538:33559,58539:33560,58540:33669,58541:33690,58542:33706,58543:33695,58544:33698,58545:33686,58546:33571,58547:33678,58548:33671,58549:33674,58550:33660,58551:33717,58552:33651,58553:33653,58554:33696,58555:33673,58556:33704,58557:33780,58558:33811,58559:33771,58560:33742,58561:33789,58562:33795,58563:33752,58564:33803,58565:33729,58566:33783,58567:33799,58568:33760,58569:33778,58570:33805,58571:33826,58572:33824,58573:33725,58574:33848,58575:34054,58576:33787,58577:33901,58578:33834,58579:33852,58580:34138,58581:33924,58582:33911,58583:33899,58584:33965,58585:33902,58586:33922,58587:33897,58588:33862,58589:33836,58590:33903,58591:33913,58592:33845,58593:33994,58594:33890,58595:33977,58596:33983,58597:33951,58598:34009,58599:33997,58600:33979,58601:34010,58602:34e3,58603:33985,58604:33990,58605:34006,58606:33953,58607:34081,58608:34047,58609:34036,58610:34071,58611:34072,58612:34092,58613:34079,58614:34069,58615:34068,58616:34044,58617:34112,58618:34147,58619:34136,58620:34120,58688:34113,58689:34306,58690:34123,58691:34133,58692:34176,58693:34212,58694:34184,58695:34193,58696:34186,58697:34216,58698:34157,58699:34196,58700:34203,58701:34282,58702:34183,58703:34204,58704:34167,58705:34174,58706:34192,58707:34249,58708:34234,58709:34255,58710:34233,58711:34256,58712:34261,58713:34269,58714:34277,58715:34268,58716:34297,58717:34314,58718:34323,58719:34315,58720:34302,58721:34298,58722:34310,58723:34338,58724:34330,58725:34352,58726:34367,58727:34381,58728:20053,58729:34388,58730:34399,58731:34407,58732:34417,58733:34451,58734:34467,58735:34473,58736:34474,58737:34443,58738:34444,58739:34486,58740:34479,58741:34500,58742:34502,58743:34480,58744:34505,58745:34851,58746:34475,58747:34516,58748:34526,58749:34537,58750:34540,58752:34527,58753:34523,58754:34543,58755:34578,58756:34566,58757:34568,58758:34560,58759:34563,58760:34555,58761:34577,58762:34569,58763:34573,58764:34553,58765:34570,58766:34612,58767:34623,58768:34615,58769:34619,58770:34597,58771:34601,58772:34586,58773:34656,58774:34655,58775:34680,58776:34636,58777:34638,58778:34676,58779:34647,58780:34664,58781:34670,58782:34649,58783:34643,58784:34659,58785:34666,58786:34821,58787:34722,58788:34719,58789:34690,58790:34735,58791:34763,58792:34749,58793:34752,58794:34768,58795:38614,58796:34731,58797:34756,58798:34739,58799:34759,58800:34758,58801:34747,58802:34799,58803:34802,58804:34784,58805:34831,58806:34829,58807:34814,58808:34806,58809:34807,58810:34830,58811:34770,58812:34833,58813:34838,58814:34837,58815:34850,58816:34849,58817:34865,58818:34870,58819:34873,58820:34855,58821:34875,58822:34884,58823:34882,58824:34898,58825:34905,58826:34910,58827:34914,58828:34923,58829:34945,58830:34942,58831:34974,58832:34933,58833:34941,58834:34997,58835:34930,58836:34946,58837:34967,58838:34962,58839:34990,58840:34969,58841:34978,58842:34957,58843:34980,58844:34992,58845:35007,58846:34993,58847:35011,58848:35012,58849:35028,58850:35032,58851:35033,58852:35037,58853:35065,58854:35074,58855:35068,58856:35060,58857:35048,58858:35058,58859:35076,58860:35084,58861:35082,58862:35091,58863:35139,58864:35102,58865:35109,58866:35114,58867:35115,58868:35137,58869:35140,58870:35131,58871:35126,58872:35128,58873:35148,58874:35101,58875:35168,58876:35166,58944:35174,58945:35172,58946:35181,58947:35178,58948:35183,58949:35188,58950:35191,58951:35198,58952:35203,58953:35208,58954:35210,58955:35219,58956:35224,58957:35233,58958:35241,58959:35238,58960:35244,58961:35247,58962:35250,58963:35258,58964:35261,58965:35263,58966:35264,58967:35290,58968:35292,58969:35293,58970:35303,58971:35316,58972:35320,58973:35331,58974:35350,58975:35344,58976:35340,58977:35355,58978:35357,58979:35365,58980:35382,58981:35393,58982:35419,58983:35410,58984:35398,58985:35400,58986:35452,58987:35437,58988:35436,58989:35426,58990:35461,58991:35458,58992:35460,58993:35496,58994:35489,58995:35473,58996:35493,58997:35494,58998:35482,58999:35491,59000:35524,59001:35533,59002:35522,59003:35546,59004:35563,59005:35571,59006:35559,59008:35556,59009:35569,59010:35604,59011:35552,59012:35554,59013:35575,59014:35550,59015:35547,59016:35596,59017:35591,59018:35610,59019:35553,59020:35606,59021:35600,59022:35607,59023:35616,59024:35635,59025:38827,59026:35622,59027:35627,59028:35646,59029:35624,59030:35649,59031:35660,59032:35663,59033:35662,59034:35657,59035:35670,59036:35675,59037:35674,59038:35691,59039:35679,59040:35692,59041:35695,59042:35700,59043:35709,59044:35712,59045:35724,59046:35726,59047:35730,59048:35731,59049:35734,59050:35737,59051:35738,59052:35898,59053:35905,59054:35903,59055:35912,59056:35916,59057:35918,59058:35920,59059:35925,59060:35938,59061:35948,59062:35960,59063:35962,59064:35970,59065:35977,59066:35973,59067:35978,59068:35981,59069:35982,59070:35988,59071:35964,59072:35992,59073:25117,59074:36013,59075:36010,59076:36029,59077:36018,59078:36019,59079:36014,59080:36022,59081:36040,59082:36033,59083:36068,59084:36067,59085:36058,59086:36093,59087:36090,59088:36091,59089:36100,59090:36101,59091:36106,59092:36103,59093:36111,59094:36109,59095:36112,59096:40782,59097:36115,59098:36045,59099:36116,59100:36118,59101:36199,59102:36205,59103:36209,59104:36211,59105:36225,59106:36249,59107:36290,59108:36286,59109:36282,59110:36303,59111:36314,59112:36310,59113:36300,59114:36315,59115:36299,59116:36330,59117:36331,59118:36319,59119:36323,59120:36348,59121:36360,59122:36361,59123:36351,59124:36381,59125:36382,59126:36368,59127:36383,59128:36418,59129:36405,59130:36400,59131:36404,59132:36426,59200:36423,59201:36425,59202:36428,59203:36432,59204:36424,59205:36441,59206:36452,59207:36448,59208:36394,59209:36451,59210:36437,59211:36470,59212:36466,59213:36476,59214:36481,59215:36487,59216:36485,59217:36484,59218:36491,59219:36490,59220:36499,59221:36497,59222:36500,59223:36505,59224:36522,59225:36513,59226:36524,59227:36528,59228:36550,59229:36529,59230:36542,59231:36549,59232:36552,59233:36555,59234:36571,59235:36579,59236:36604,59237:36603,59238:36587,59239:36606,59240:36618,59241:36613,59242:36629,59243:36626,59244:36633,59245:36627,59246:36636,59247:36639,59248:36635,59249:36620,59250:36646,59251:36659,59252:36667,59253:36665,59254:36677,59255:36674,59256:36670,59257:36684,59258:36681,59259:36678,59260:36686,59261:36695,59262:36700,59264:36706,59265:36707,59266:36708,59267:36764,59268:36767,59269:36771,59270:36781,59271:36783,59272:36791,59273:36826,59274:36837,59275:36834,59276:36842,59277:36847,59278:36999,59279:36852,59280:36869,59281:36857,59282:36858,59283:36881,59284:36885,59285:36897,59286:36877,59287:36894,59288:36886,59289:36875,59290:36903,59291:36918,59292:36917,59293:36921,59294:36856,59295:36943,59296:36944,59297:36945,59298:36946,59299:36878,59300:36937,59301:36926,59302:36950,59303:36952,59304:36958,59305:36968,59306:36975,59307:36982,59308:38568,59309:36978,59310:36994,59311:36989,59312:36993,59313:36992,59314:37002,59315:37001,59316:37007,59317:37032,59318:37039,59319:37041,59320:37045,59321:37090,59322:37092,59323:25160,59324:37083,59325:37122,59326:37138,59327:37145,59328:37170,59329:37168,59330:37194,59331:37206,59332:37208,59333:37219,59334:37221,59335:37225,59336:37235,59337:37234,59338:37259,59339:37257,59340:37250,59341:37282,59342:37291,59343:37295,59344:37290,59345:37301,59346:37300,59347:37306,59348:37312,59349:37313,59350:37321,59351:37323,59352:37328,59353:37334,59354:37343,59355:37345,59356:37339,59357:37372,59358:37365,59359:37366,59360:37406,59361:37375,59362:37396,59363:37420,59364:37397,59365:37393,59366:37470,59367:37463,59368:37445,59369:37449,59370:37476,59371:37448,59372:37525,59373:37439,59374:37451,59375:37456,59376:37532,59377:37526,59378:37523,59379:37531,59380:37466,59381:37583,59382:37561,59383:37559,59384:37609,59385:37647,59386:37626,59387:37700,59388:37678,59456:37657,59457:37666,59458:37658,59459:37667,59460:37690,59461:37685,59462:37691,59463:37724,59464:37728,59465:37756,59466:37742,59467:37718,59468:37808,59469:37804,59470:37805,59471:37780,59472:37817,59473:37846,59474:37847,59475:37864,59476:37861,59477:37848,59478:37827,59479:37853,59480:37840,59481:37832,59482:37860,59483:37914,59484:37908,59485:37907,59486:37891,59487:37895,59488:37904,59489:37942,59490:37931,59491:37941,59492:37921,59493:37946,59494:37953,59495:37970,59496:37956,59497:37979,59498:37984,59499:37986,59500:37982,59501:37994,59502:37417,59503:38e3,59504:38005,59505:38007,59506:38013,59507:37978,59508:38012,59509:38014,59510:38017,59511:38015,59512:38274,59513:38279,59514:38282,59515:38292,59516:38294,59517:38296,59518:38297,59520:38304,59521:38312,59522:38311,59523:38317,59524:38332,59525:38331,59526:38329,59527:38334,59528:38346,59529:28662,59530:38339,59531:38349,59532:38348,59533:38357,59534:38356,59535:38358,59536:38364,59537:38369,59538:38373,59539:38370,59540:38433,59541:38440,59542:38446,59543:38447,59544:38466,59545:38476,59546:38479,59547:38475,59548:38519,59549:38492,59550:38494,59551:38493,59552:38495,59553:38502,59554:38514,59555:38508,59556:38541,59557:38552,59558:38549,59559:38551,59560:38570,59561:38567,59562:38577,59563:38578,59564:38576,59565:38580,59566:38582,59567:38584,59568:38585,59569:38606,59570:38603,59571:38601,59572:38605,59573:35149,59574:38620,59575:38669,59576:38613,59577:38649,59578:38660,59579:38662,59580:38664,59581:38675,59582:38670,59583:38673,59584:38671,59585:38678,59586:38681,59587:38692,59588:38698,59589:38704,59590:38713,59591:38717,59592:38718,59593:38724,59594:38726,59595:38728,59596:38722,59597:38729,59598:38748,59599:38752,59600:38756,59601:38758,59602:38760,59603:21202,59604:38763,59605:38769,59606:38777,59607:38789,59608:38780,59609:38785,59610:38778,59611:38790,59612:38795,59613:38799,59614:38800,59615:38812,59616:38824,59617:38822,59618:38819,59619:38835,59620:38836,59621:38851,59622:38854,59623:38856,59624:38859,59625:38876,59626:38893,59627:40783,59628:38898,59629:31455,59630:38902,59631:38901,59632:38927,59633:38924,59634:38968,59635:38948,59636:38945,59637:38967,59638:38973,59639:38982,59640:38991,59641:38987,59642:39019,59643:39023,59644:39024,59712:39025,59713:39028,59714:39027,59715:39082,59716:39087,59717:39089,59718:39094,59719:39108,59720:39107,59721:39110,59722:39145,59723:39147,59724:39171,59725:39177,59726:39186,59727:39188,59728:39192,59729:39201,59730:39197,59731:39198,59732:39204,59733:39200,59734:39212,59735:39214,59736:39229,59737:39230,59738:39234,59739:39241,59740:39237,59741:39248,59742:39243,59743:39249,59744:39250,59745:39244,59746:39253,59747:39319,59748:39320,59749:39333,59750:39341,59751:39342,59752:39356,59753:39391,59754:39387,59755:39389,59756:39384,59757:39377,59758:39405,59759:39406,59760:39409,59761:39410,59762:39419,59763:39416,59764:39425,59765:39439,59766:39429,59767:39394,59768:39449,59769:39467,59770:39479,59771:39493,59772:39490,59773:39488,59774:39491,59776:39486,59777:39509,59778:39501,59779:39515,59780:39511,59781:39519,59782:39522,59783:39525,59784:39524,59785:39529,59786:39531,59787:39530,59788:39597,59789:39600,59790:39612,59791:39616,59792:39631,59793:39633,59794:39635,59795:39636,59796:39646,59797:39647,59798:39650,59799:39651,59800:39654,59801:39663,59802:39659,59803:39662,59804:39668,59805:39665,59806:39671,59807:39675,59808:39686,59809:39704,59810:39706,59811:39711,59812:39714,59813:39715,59814:39717,59815:39719,59816:39720,59817:39721,59818:39722,59819:39726,59820:39727,59821:39730,59822:39748,59823:39747,59824:39759,59825:39757,59826:39758,59827:39761,59828:39768,59829:39796,59830:39827,59831:39811,59832:39825,59833:39830,59834:39831,59835:39839,59836:39840,59837:39848,59838:39860,59839:39872,59840:39882,59841:39865,59842:39878,59843:39887,59844:39889,59845:39890,59846:39907,59847:39906,59848:39908,59849:39892,59850:39905,59851:39994,59852:39922,59853:39921,59854:39920,59855:39957,59856:39956,59857:39945,59858:39955,59859:39948,59860:39942,59861:39944,59862:39954,59863:39946,59864:39940,59865:39982,59866:39963,59867:39973,59868:39972,59869:39969,59870:39984,59871:40007,59872:39986,59873:40006,59874:39998,59875:40026,59876:40032,59877:40039,59878:40054,59879:40056,59880:40167,59881:40172,59882:40176,59883:40201,59884:40200,59885:40171,59886:40195,59887:40198,59888:40234,59889:40230,59890:40367,59891:40227,59892:40223,59893:40260,59894:40213,59895:40210,59896:40257,59897:40255,59898:40254,59899:40262,59900:40264,59968:40285,59969:40286,59970:40292,59971:40273,59972:40272,59973:40281,59974:40306,59975:40329,59976:40327,59977:40363,59978:40303,59979:40314,59980:40346,59981:40356,59982:40361,59983:40370,59984:40388,59985:40385,59986:40379,59987:40376,59988:40378,59989:40390,59990:40399,59991:40386,59992:40409,59993:40403,59994:40440,59995:40422,59996:40429,59997:40431,59998:40445,59999:40474,60000:40475,60001:40478,60002:40565,60003:40569,60004:40573,60005:40577,60006:40584,60007:40587,60008:40588,60009:40594,60010:40597,60011:40593,60012:40605,60013:40613,60014:40617,60015:40632,60016:40618,60017:40621,60018:38753,60019:40652,60020:40654,60021:40655,60022:40656,60023:40660,60024:40668,60025:40670,60026:40669,60027:40672,60028:40677,60029:40680,60030:40687,60032:40692,60033:40694,60034:40695,60035:40697,60036:40699,60037:40700,60038:40701,60039:40711,60040:40712,60041:30391,60042:40725,60043:40737,60044:40748,60045:40766,60046:40778,60047:40786,60048:40788,60049:40803,60050:40799,60051:40800,60052:40801,60053:40806,60054:40807,60055:40812,60056:40810,60057:40823,60058:40818,60059:40822,60060:40853,60061:40860,60062:40864,60063:22575,60064:27079,60065:36953,60066:29796,60067:20956,60068:29081}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(1),i=r(2);e.decode=function(t,e){var r=new Uint8ClampedArray(t.length);r.set(t);for(var o=new n.default(285,256,0),a=new i.default(o,r),s=new Uint8ClampedArray(e),l=!1,u=0;u=n/2;){var l=i,u=a;if(a=s,(i=o).isZero())return null;o=l;for(var c=t.zero,f=i.getCoefficient(i.degree()),h=t.inverse(f);o.degree()>=i.degree()&&!o.isZero();){var p=o.degree()-i.degree(),d=t.multiply(o.getCoefficient(o.degree()),h);c=c.addOrSubtract(t.buildMonomial(p,d)),o=o.addOrSubtract(i.multiplyByMonomial(p,d))}if(s=c.multiplyPoly(a).addOrSubtract(u),o.degree()>=i.degree())return null}var g=s.getCoefficient(0);if(0===g)return null;var m,v=t.inverse(g);return[s.multiply(v),o.multiply(v)]}(o,o.buildMonomial(e,1),f,e);if(null===h)return null;var p=function(t,e){var r=e.degree();if(1===r)return[e.getCoefficient(1)];for(var n=new Array(r),i=0,o=1;oMath.abs(e.x-t.x);c?(i=Math.floor(t.y),o=Math.floor(t.x),s=Math.floor(e.y),l=Math.floor(e.x)):(i=Math.floor(t.x),o=Math.floor(t.y),s=Math.floor(e.x),l=Math.floor(e.y));for(var f=Math.abs(s-i),h=Math.abs(l-o),p=Math.floor(-f/2),d=i0){if(_===l)break;_+=g,p-=f}}for(var w=[],k=0;k=t.bottom.startX&&v<=t.bottom.endX||m>=t.bottom.startX&&v<=t.bottom.endX||v<=t.bottom.startX&&m>=t.bottom.endX&&f[2]/(t.bottom.endX-t.bottom.startX)i})).length>0?y[0].bottom=_:r.push({top:_,bottom:_})}if(g){var y,b=e-f[4],w=b-f[3];_={startX:w,y:n,endX:b},(y=c.filter(function(t){return w>=t.bottom.startX&&w<=t.bottom.endX||b>=t.bottom.startX&&w<=t.bottom.endX||w<=t.bottom.startX&&b>=t.bottom.endX&&f[2]/(t.bottom.endX-t.bottom.startX)i})).length>0?y[0].bottom=_:c.push({top:_,bottom:_})}}},p=-1;p<=t.width;p++)h(p);e.push.apply(e,r.filter(function(t){return t.bottom.y!==n&&t.bottom.y-t.top.y>=2})),r=r.filter(function(t){return t.bottom.y===n}),l.push.apply(l,c.filter(function(t){return t.bottom.y!==n})),c=c.filter(function(t){return t.bottom.y===n})},p=0;p<=t.height;p++)h(p);e.push.apply(e,r.filter(function(t){return t.bottom.y-t.top.y>=2})),l.push.apply(l,c);var d=e.filter(function(t){return t.bottom.y-t.top.y>=2}).map(function(e){var r=(e.top.startX+e.top.endX+e.bottom.startX+e.bottom.endX)/4,n=(e.top.y+e.bottom.y+1)/2;if(t.get(Math.round(r),Math.round(n))){var i=[e.top.endX-e.top.startX,e.bottom.endX-e.bottom.startX,e.bottom.y-e.top.y+1],o=s(i)/i.length;return{score:f({x:Math.round(r),y:Math.round(n)},[1,1,3,1,1],t),x:r,y:n,size:o}}}).filter(function(t){return!!t}).sort(function(t,e){return t.score-e.score}).map(function(t,e,r){if(e>n)return null;var i=r.filter(function(t,r){return e!==r}).map(function(e){return{x:e.x,y:e.y,score:e.score+Math.pow(e.size-t.size,2)/t.size,size:e.size}}).sort(function(t,e){return t.score-e.score});if(i.length<2)return null;var o=t.score+i[0].score+i[1].score;return{points:[t].concat(i.slice(0,2)),score:o}}).filter(function(t){return!!t}).sort(function(t,e){return t.score-e.score});if(0===d.length)return null;var g,m,v=function(t,e,r){var n,i,o,s,l,u,c,f=a(t,e),h=a(e,r),p=a(t,r);return h>=f&&h>=p?(n=(s=[e,t,r])[0],i=s[1],o=s[2]):p>=h&&p>=f?(n=(l=[t,e,r])[0],i=l[1],o=l[2]):(n=(u=[t,r,e])[0],i=u[1],o=u[2]),(o.x-i.x)*(n.y-i.y)-(o.y-i.y)*(n.x-i.x)<0&&(n=(c=[o,n])[0],o=c[1]),{bottomLeft:n,topLeft:i,topRight:o}}(d[0].points[0],d[0].points[1],d[0].points[2]),_=v.topRight,y=v.topLeft,b=v.bottomLeft;try{w=function(t,e,r,n){var i=(s(u(t,r,n,5))/7+s(u(t,e,n,5))/7+s(u(r,t,n,5))/7+s(u(e,t,n,5))/7)/4;if(i<1)throw new Error("Invalid module size");var o=Math.round(a(t,e)/i),l=Math.round(a(t,r)/i),c=Math.floor((o+l)/2)+7;switch(c%4){case 0:c++;break;case 2:c--}return{dimension:c,moduleSize:i}}(y,_,b,t),g=w.dimension,m=w.moduleSize}catch(t){return null}var w,k=_.x-y.x+b.x,x=_.y-y.y+b.y,B=(a(y,b)+a(y,_))/2/m,C=1-3/B,E={x:y.x+C*(k-y.x),y:y.y+C*(x-y.y)},P=l.map(function(e){var r=(e.top.startX+e.top.endX+e.bottom.startX+e.bottom.endX)/4,n=(e.top.y+e.bottom.y+1)/2;if(t.get(Math.floor(r),Math.floor(n))){var i=[e.top.endX-e.top.startX,e.bottom.endX-e.bottom.startX,e.bottom.y-e.top.y+1];return s(i),{x:r,y:n,score:f({x:Math.floor(r),y:Math.floor(n)},[1,1,1],t)+a({x:r,y:n},E)}}}).filter(function(t){return!!t}).sort(function(t,e){return t.score-e.score}),j=B>=15&&P.length?P[0]:E;return{alignmentPattern:{x:j.x,y:j.y},bottomLeft:{x:b.x,y:b.y},dimension:g,topLeft:{x:y.x,y:y.y},topRight:{x:_.x,y:_.y}}}}]).default},"object"==typeof r&&"object"==typeof e?e.exports=i():"function"==typeof define&&define.amd?define([],i):"object"==typeof r?r.jsQR=i():n.jsQR=i()},{}],76:[function(t,e,r){(function(t){(function(){var n,i=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",s="__lodash_hash_undefined__",l=500,u="__lodash_placeholder__",c=1,f=2,h=4,p=1,d=2,g=1,m=2,v=4,_=8,y=16,b=32,w=64,k=128,x=256,B=512,C=30,E="...",P=800,j=16,S=1,T=2,M=1/0,A=9007199254740991,I=1.7976931348623157e308,R=NaN,L=4294967295,F=L-1,O=L>>>1,D=[["ary",k],["bind",g],["bindKey",m],["curry",_],["curryRight",y],["flip",B],["partial",b],["partialRight",w],["rearg",x]],N="[object Arguments]",U="[object Array]",z="[object AsyncFunction]",q="[object Boolean]",V="[object Date]",H="[object DOMException]",G="[object Error]",W="[object Function]",Z="[object GeneratorFunction]",Y="[object Map]",X="[object Number]",$="[object Null]",J="[object Object]",K="[object Proxy]",Q="[object RegExp]",tt="[object Set]",et="[object String]",rt="[object Symbol]",nt="[object Undefined]",it="[object WeakMap]",ot="[object WeakSet]",at="[object ArrayBuffer]",st="[object DataView]",lt="[object Float32Array]",ut="[object Float64Array]",ct="[object Int8Array]",ft="[object Int16Array]",ht="[object Int32Array]",pt="[object Uint8Array]",dt="[object Uint8ClampedArray]",gt="[object Uint16Array]",mt="[object Uint32Array]",vt=/\b__p \+= '';/g,_t=/\b(__p \+=) '' \+/g,yt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,bt=/&(?:amp|lt|gt|quot|#39);/g,wt=/[&<>"']/g,kt=RegExp(bt.source),xt=RegExp(wt.source),Bt=/<%-([\s\S]+?)%>/g,Ct=/<%([\s\S]+?)%>/g,Et=/<%=([\s\S]+?)%>/g,Pt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,jt=/^\w*$/,St=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Tt=/[\\^$.*+?()[\]{}|]/g,Mt=RegExp(Tt.source),At=/^\s+|\s+$/g,It=/^\s+/,Rt=/\s+$/,Lt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ft=/\{\n\/\* \[wrapped with (.+)\] \*/,Ot=/,? & /,Dt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Nt=/\\(\\)?/g,Ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,zt=/\w*$/,qt=/^[-+]0x[0-9a-f]+$/i,Vt=/^0b[01]+$/i,Ht=/^\[object .+?Constructor\]$/,Gt=/^0o[0-7]+$/i,Wt=/^(?:0|[1-9]\d*)$/,Zt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Yt=/($^)/,Xt=/['\n\r\u2028\u2029\\]/g,$t="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Jt="\\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",Kt="[\\ud800-\\udfff]",Qt="["+Jt+"]",te="["+$t+"]",ee="\\d+",re="[\\u2700-\\u27bf]",ne="[a-z\\xdf-\\xf6\\xf8-\\xff]",ie="[^\\ud800-\\udfff"+Jt+ee+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",oe="\\ud83c[\\udffb-\\udfff]",ae="[^\\ud800-\\udfff]",se="(?:\\ud83c[\\udde6-\\uddff]){2}",le="[\\ud800-\\udbff][\\udc00-\\udfff]",ue="[A-Z\\xc0-\\xd6\\xd8-\\xde]",ce="(?:"+ne+"|"+ie+")",fe="(?:"+ue+"|"+ie+")",he="(?:"+te+"|"+oe+")"+"?",pe="[\\ufe0e\\ufe0f]?"+he+("(?:\\u200d(?:"+[ae,se,le].join("|")+")[\\ufe0e\\ufe0f]?"+he+")*"),de="(?:"+[re,se,le].join("|")+")"+pe,ge="(?:"+[ae+te+"?",te,se,le,Kt].join("|")+")",me=RegExp("['’]","g"),ve=RegExp(te,"g"),_e=RegExp(oe+"(?="+oe+")|"+ge+pe,"g"),ye=RegExp([ue+"?"+ne+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[Qt,ue,"$"].join("|")+")",fe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[Qt,ue+ce,"$"].join("|")+")",ue+"?"+ce+"+(?:['’](?:d|ll|m|re|s|t|ve))?",ue+"+(?:['’](?: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_])",ee,de].join("|"),"g"),be=RegExp("[\\u200d\\ud800-\\udfff"+$t+"\\ufe0e\\ufe0f]"),we=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ke=["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"],xe=-1,Be={};Be[lt]=Be[ut]=Be[ct]=Be[ft]=Be[ht]=Be[pt]=Be[dt]=Be[gt]=Be[mt]=!0,Be[N]=Be[U]=Be[at]=Be[q]=Be[st]=Be[V]=Be[G]=Be[W]=Be[Y]=Be[X]=Be[J]=Be[Q]=Be[tt]=Be[et]=Be[it]=!1;var Ce={};Ce[N]=Ce[U]=Ce[at]=Ce[st]=Ce[q]=Ce[V]=Ce[lt]=Ce[ut]=Ce[ct]=Ce[ft]=Ce[ht]=Ce[Y]=Ce[X]=Ce[J]=Ce[Q]=Ce[tt]=Ce[et]=Ce[rt]=Ce[pt]=Ce[dt]=Ce[gt]=Ce[mt]=!0,Ce[G]=Ce[W]=Ce[it]=!1;var Ee={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Pe=parseFloat,je=parseInt,Se="object"==typeof t&&t&&t.Object===Object&&t,Te="object"==typeof self&&self&&self.Object===Object&&self,Me=Se||Te||Function("return this")(),Ae="object"==typeof r&&r&&!r.nodeType&&r,Ie=Ae&&"object"==typeof e&&e&&!e.nodeType&&e,Re=Ie&&Ie.exports===Ae,Le=Re&&Se.process,Fe=function(){try{var t=Ie&&Ie.require&&Ie.require("util").types;return t||Le&&Le.binding&&Le.binding("util")}catch(t){}}(),Oe=Fe&&Fe.isArrayBuffer,De=Fe&&Fe.isDate,Ne=Fe&&Fe.isMap,Ue=Fe&&Fe.isRegExp,ze=Fe&&Fe.isSet,qe=Fe&&Fe.isTypedArray;function Ve(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}function He(t,e,r,n){for(var i=-1,o=null==t?0:t.length;++i-1}function $e(t,e,r){for(var n=-1,i=null==t?0:t.length;++n-1;);return r}function _r(t,e){for(var r=t.length;r--&&or(e,t[r],0)>-1;);return r}var yr=cr({"À":"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"}),br=cr({"&":"&","<":"<",">":">",'"':""","'":"'"});function wr(t){return"\\"+Ee[t]}function kr(t){return be.test(t)}function xr(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function Br(t,e){return function(r){return t(e(r))}}function Cr(t,e){for(var r=-1,n=t.length,i=0,o=[];++r",""":'"',"'":"'"});var Mr=function t(e){var r,$t=(e=null==e?Me:Mr.defaults(Me.Object(),e,Mr.pick(Me,ke))).Array,Jt=e.Date,Kt=e.Error,Qt=e.Function,te=e.Math,ee=e.Object,re=e.RegExp,ne=e.String,ie=e.TypeError,oe=$t.prototype,ae=Qt.prototype,se=ee.prototype,le=e["__core-js_shared__"],ue=ae.toString,ce=se.hasOwnProperty,fe=0,he=(r=/[^.]+$/.exec(le&&le.keys&&le.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",pe=se.toString,de=ue.call(ee),ge=Me._,_e=re("^"+ue.call(ce).replace(Tt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),be=Re?e.Buffer:n,Ee=e.Symbol,Se=e.Uint8Array,Te=be?be.allocUnsafe:n,Ae=Br(ee.getPrototypeOf,ee),Ie=ee.create,Le=se.propertyIsEnumerable,Fe=oe.splice,rr=Ee?Ee.isConcatSpreadable:n,cr=Ee?Ee.iterator:n,Ar=Ee?Ee.toStringTag:n,Ir=function(){try{var t=No(ee,"defineProperty");return t({},"",{}),t}catch(t){}}(),Rr=e.clearTimeout!==Me.clearTimeout&&e.clearTimeout,Lr=Jt&&Jt.now!==Me.Date.now&&Jt.now,Fr=e.setTimeout!==Me.setTimeout&&e.setTimeout,Or=te.ceil,Dr=te.floor,Nr=ee.getOwnPropertySymbols,Ur=be?be.isBuffer:n,zr=e.isFinite,qr=oe.join,Vr=Br(ee.keys,ee),Hr=te.max,Gr=te.min,Wr=Jt.now,Zr=e.parseInt,Yr=te.random,Xr=oe.reverse,$r=No(e,"DataView"),Jr=No(e,"Map"),Kr=No(e,"Promise"),Qr=No(e,"Set"),tn=No(e,"WeakMap"),en=No(ee,"create"),rn=tn&&new tn,nn={},on=fa($r),an=fa(Jr),sn=fa(Kr),ln=fa(Qr),un=fa(tn),cn=Ee?Ee.prototype:n,fn=cn?cn.valueOf:n,hn=cn?cn.toString:n;function pn(t){if(js(t)&&!vs(t)&&!(t instanceof vn)){if(t instanceof mn)return t;if(ce.call(t,"__wrapped__"))return ha(t)}return new mn(t)}var dn=function(){function t(){}return function(e){if(!Ps(e))return{};if(Ie)return Ie(e);t.prototype=e;var r=new t;return t.prototype=n,r}}();function gn(){}function mn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=n}function vn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=L,this.__views__=[]}function _n(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function Ln(t,e,r,i,o,a){var s,l=e&c,u=e&f,p=e&h;if(r&&(s=o?r(t,i,o,a):r(t)),s!==n)return s;if(!Ps(t))return t;var d=vs(t);if(d){if(s=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&ce.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!l)return ro(t,s)}else{var g=qo(t),m=g==W||g==Z;if(ws(t))return $i(t,l);if(g==J||g==N||m&&!o){if(s=u||m?{}:Ho(t),!l)return u?function(t,e){return no(t,zo(t),e)}(t,function(t,e){return t&&no(e,ol(e),t)}(s,t)):function(t,e){return no(t,Uo(t),e)}(t,Mn(s,t))}else{if(!Ce[g])return o?t:{};s=function(t,e,r){var n,i,o,a=t.constructor;switch(e){case at:return Ji(t);case q:case V:return new a(+t);case st:return function(t,e){var r=e?Ji(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case lt:case ut:case ct:case ft:case ht:case pt:case dt:case gt:case mt:return Ki(t,r);case Y:return new a;case X:case et:return new a(t);case Q:return(o=new(i=t).constructor(i.source,zt.exec(i))).lastIndex=i.lastIndex,o;case tt:return new a;case rt:return n=t,fn?ee(fn.call(n)):{}}}(t,g,l)}}a||(a=new kn);var v=a.get(t);if(v)return v;if(a.set(t,s),Is(t))return t.forEach(function(n){s.add(Ln(n,e,r,n,t,a))}),s;if(Ss(t))return t.forEach(function(n,i){s.set(i,Ln(n,e,r,i,t,a))}),s;var _=d?n:(p?u?Ao:Mo:u?ol:il)(t);return Ge(_||t,function(n,i){_&&(n=t[i=n]),jn(s,i,Ln(n,e,r,i,t,a))}),s}function Fn(t,e,r){var i=r.length;if(null==t)return!i;for(t=ee(t);i--;){var o=r[i],a=e[o],s=t[o];if(s===n&&!(o in t)||!a(s))return!1}return!0}function On(t,e,r){if("function"!=typeof t)throw new ie(a);return ia(function(){t.apply(n,r)},e)}function Dn(t,e,r,n){var o=-1,a=Xe,s=!0,l=t.length,u=[],c=e.length;if(!l)return u;r&&(e=Je(e,dr(r))),n?(a=$e,s=!1):e.length>=i&&(a=mr,s=!1,e=new wn(e));t:for(;++o-1},yn.prototype.set=function(t,e){var r=this.__data__,n=Sn(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this},bn.prototype.clear=function(){this.size=0,this.__data__={hash:new _n,map:new(Jr||yn),string:new _n}},bn.prototype.delete=function(t){var e=Oo(this,t).delete(t);return this.size-=e?1:0,e},bn.prototype.get=function(t){return Oo(this,t).get(t)},bn.prototype.has=function(t){return Oo(this,t).has(t)},bn.prototype.set=function(t,e){var r=Oo(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this},wn.prototype.add=wn.prototype.push=function(t){return this.__data__.set(t,s),this},wn.prototype.has=function(t){return this.__data__.has(t)},kn.prototype.clear=function(){this.__data__=new yn,this.size=0},kn.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},kn.prototype.get=function(t){return this.__data__.get(t)},kn.prototype.has=function(t){return this.__data__.has(t)},kn.prototype.set=function(t,e){var r=this.__data__;if(r instanceof yn){var n=r.__data__;if(!Jr||n.length0&&r(s)?e>1?Hn(s,e-1,r,n,i):Ke(i,s):n||(i[i.length]=s)}return i}var Gn=so(),Wn=so(!0);function Zn(t,e){return t&&Gn(t,e,il)}function Yn(t,e){return t&&Wn(t,e,il)}function Xn(t,e){return Ye(e,function(e){return Bs(t[e])})}function $n(t,e){for(var r=0,i=(e=Wi(e,t)).length;null!=t&&re}function ti(t,e){return null!=t&&ce.call(t,e)}function ei(t,e){return null!=t&&e in ee(t)}function ri(t,e,r){for(var i=r?$e:Xe,o=t[0].length,a=t.length,s=a,l=$t(a),u=1/0,c=[];s--;){var f=t[s];s&&e&&(f=Je(f,dr(e))),u=Gr(f.length,u),l[s]=!r&&(e||o>=120&&f.length>=120)?new wn(s&&f):n}f=t[0];var h=-1,p=l[0];t:for(;++h=s)return l;var u=r[n];return l*("desc"==u?-1:1)}}return t.index-e.index}(t,e,r)})}function _i(t,e,r){for(var n=-1,i=e.length,o={};++n-1;)s!==t&&Fe.call(s,l,1),Fe.call(t,l,1);return t}function bi(t,e){for(var r=t?e.length:0,n=r-1;r--;){var i=e[r];if(r==n||i!==o){var o=i;Wo(i)?Fe.call(t,i,1):Di(t,i)}}return t}function wi(t,e){return t+Dr(Yr()*(e-t+1))}function ki(t,e){var r="";if(!t||e<1||e>A)return r;do{e%2&&(r+=t),(e=Dr(e/2))&&(t+=t)}while(e);return r}function xi(t,e){return oa(ta(t,e,Tl),t+"")}function Bi(t){return Bn(pl(t))}function Ci(t,e){var r=pl(t);return la(r,Rn(e,0,r.length))}function Ei(t,e,r,i){if(!Ps(t))return t;for(var o=-1,a=(e=Wi(e,t)).length,s=a-1,l=t;null!=l&&++oi?0:i+e),(r=r>i?i:r)<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var o=$t(i);++n>>1,a=t[o];null!==a&&!Ls(a)&&(r?a<=e:a=i){var c=e?null:xo(t);if(c)return Er(c);s=!1,o=mr,u=new wn}else u=e?[]:l;t:for(;++n=i?t:Ti(t,e,r)}var Xi=Rr||function(t){return Me.clearTimeout(t)};function $i(t,e){if(e)return t.slice();var r=t.length,n=Te?Te(r):new t.constructor(r);return t.copy(n),n}function Ji(t){var e=new t.constructor(t.byteLength);return new Se(e).set(new Se(t)),e}function Ki(t,e){var r=e?Ji(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}function Qi(t,e){if(t!==e){var r=t!==n,i=null===t,o=t==t,a=Ls(t),s=e!==n,l=null===e,u=e==e,c=Ls(e);if(!l&&!c&&!a&&t>e||a&&s&&u&&!l&&!c||i&&s&&u||!r&&u||!o)return 1;if(!i&&!a&&!c&&t1?r[o-1]:n,s=o>2?r[2]:n;for(a=t.length>3&&"function"==typeof a?(o--,a):n,s&&Zo(r[0],r[1],s)&&(a=o<3?n:a,o=1),e=ee(e);++i-1?o[a?e[s]:s]:n}}function ho(t){return To(function(e){var r=e.length,i=r,o=mn.prototype.thru;for(t&&e.reverse();i--;){var s=e[i];if("function"!=typeof s)throw new ie(a);if(o&&!l&&"wrapper"==Ro(s))var l=new mn([],!0)}for(i=l?i:r;++i1&&_.reverse(),f&&ul))return!1;var c=a.get(t);if(c&&a.get(e))return c==e;var f=-1,h=!0,g=r&d?new wn:n;for(a.set(t,e),a.set(e,t);++f-1&&t%1==0&&t1?"& ":"")+e[n],e=e.join(r>2?", ":" "),t.replace(Lt,"{\n/* [wrapped with "+e+"] */\n")}(n,function(t,e){return Ge(D,function(r){var n="_."+r[0];e&r[1]&&!Xe(t,n)&&t.push(n)}),t.sort()}(function(t){var e=t.match(Ft);return e?e[1].split(Ot):[]}(n),r)))}function sa(t){var e=0,r=0;return function(){var i=Wr(),o=j-(i-r);if(r=i,o>0){if(++e>=P)return arguments[0]}else e=0;return t.apply(n,arguments)}}function la(t,e){var r=-1,i=t.length,o=i-1;for(e=e===n?i:e;++r1?t[e-1]:n;return Aa(t,r="function"==typeof r?(t.pop(),r):n)});function Na(t){var e=pn(t);return e.__chain__=!0,e}function Ua(t,e){return e(t)}var za=To(function(t){var e=t.length,r=e?t[0]:0,i=this.__wrapped__,o=function(e){return In(e,t)};return!(e>1||this.__actions__.length)&&i instanceof vn&&Wo(r)?((i=i.slice(r,+r+(e?1:0))).__actions__.push({func:Ua,args:[o],thisArg:n}),new mn(i,this.__chain__).thru(function(t){return e&&!t.length&&t.push(n),t})):this.thru(o)});var qa=io(function(t,e,r){ce.call(t,r)?++t[r]:An(t,r,1)});var Va=fo(ma),Ha=fo(va);function Ga(t,e){return(vs(t)?Ge:Nn)(t,Fo(e,3))}function Wa(t,e){return(vs(t)?We:Un)(t,Fo(e,3))}var Za=io(function(t,e,r){ce.call(t,r)?t[r].push(e):An(t,r,[e])});var Ya=xi(function(t,e,r){var n=-1,i="function"==typeof e,o=ys(t)?$t(t.length):[];return Nn(t,function(t){o[++n]=i?Ve(e,t,r):ni(t,e,r)}),o}),Xa=io(function(t,e,r){An(t,r,e)});function $a(t,e){return(vs(t)?Je:hi)(t,Fo(e,3))}var Ja=io(function(t,e,r){t[r?0:1].push(e)},function(){return[[],[]]});var Ka=xi(function(t,e){if(null==t)return[];var r=e.length;return r>1&&Zo(t,e[0],e[1])?e=[]:r>2&&Zo(e[0],e[1],e[2])&&(e=[e[0]]),vi(t,Hn(e,1),[])}),Qa=Lr||function(){return Me.Date.now()};function ts(t,e,r){return e=r?n:e,e=t&&null==e?t.length:e,Co(t,k,n,n,n,n,e)}function es(t,e){var r;if("function"!=typeof e)throw new ie(a);return t=zs(t),function(){return--t>0&&(r=e.apply(this,arguments)),t<=1&&(e=n),r}}var rs=xi(function(t,e,r){var n=g;if(r.length){var i=Cr(r,Lo(rs));n|=b}return Co(t,n,e,r,i)}),ns=xi(function(t,e,r){var n=g|m;if(r.length){var i=Cr(r,Lo(ns));n|=b}return Co(e,n,t,r,i)});function is(t,e,r){var i,o,s,l,u,c,f=0,h=!1,p=!1,d=!0;if("function"!=typeof t)throw new ie(a);function g(e){var r=i,a=o;return i=o=n,f=e,l=t.apply(a,r)}function m(t){var r=t-c;return c===n||r>=e||r<0||p&&t-f>=s}function v(){var t=Qa();if(m(t))return _(t);u=ia(v,function(t){var r=e-(t-c);return p?Gr(r,s-(t-f)):r}(t))}function _(t){return u=n,d&&i?g(t):(i=o=n,l)}function y(){var t=Qa(),r=m(t);if(i=arguments,o=this,c=t,r){if(u===n)return function(t){return f=t,u=ia(v,e),h?g(t):l}(c);if(p)return u=ia(v,e),g(c)}return u===n&&(u=ia(v,e)),l}return e=Vs(e)||0,Ps(r)&&(h=!!r.leading,s=(p="maxWait"in r)?Hr(Vs(r.maxWait)||0,e):s,d="trailing"in r?!!r.trailing:d),y.cancel=function(){u!==n&&Xi(u),f=0,i=c=o=u=n},y.flush=function(){return u===n?l:_(Qa())},y}var os=xi(function(t,e){return On(t,1,e)}),as=xi(function(t,e,r){return On(t,Vs(e)||0,r)});function ss(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new ie(a);var r=function(){var n=arguments,i=e?e.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var a=t.apply(this,n);return r.cache=o.set(i,a)||o,a};return r.cache=new(ss.Cache||bn),r}function ls(t){if("function"!=typeof t)throw new ie(a);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ss.Cache=bn;var us=Zi(function(t,e){var r=(e=1==e.length&&vs(e[0])?Je(e[0],dr(Fo())):Je(Hn(e,1),dr(Fo()))).length;return xi(function(n){for(var i=-1,o=Gr(n.length,r);++i=e}),ms=ii(function(){return arguments}())?ii:function(t){return js(t)&&ce.call(t,"callee")&&!Le.call(t,"callee")},vs=$t.isArray,_s=Oe?dr(Oe):function(t){return js(t)&&Kn(t)==at};function ys(t){return null!=t&&Es(t.length)&&!Bs(t)}function bs(t){return js(t)&&ys(t)}var ws=Ur||Vl,ks=De?dr(De):function(t){return js(t)&&Kn(t)==V};function xs(t){if(!js(t))return!1;var e=Kn(t);return e==G||e==H||"string"==typeof t.message&&"string"==typeof t.name&&!Ms(t)}function Bs(t){if(!Ps(t))return!1;var e=Kn(t);return e==W||e==Z||e==z||e==K}function Cs(t){return"number"==typeof t&&t==zs(t)}function Es(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=A}function Ps(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function js(t){return null!=t&&"object"==typeof t}var Ss=Ne?dr(Ne):function(t){return js(t)&&qo(t)==Y};function Ts(t){return"number"==typeof t||js(t)&&Kn(t)==X}function Ms(t){if(!js(t)||Kn(t)!=J)return!1;var e=Ae(t);if(null===e)return!0;var r=ce.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&ue.call(r)==de}var As=Ue?dr(Ue):function(t){return js(t)&&Kn(t)==Q};var Is=ze?dr(ze):function(t){return js(t)&&qo(t)==tt};function Rs(t){return"string"==typeof t||!vs(t)&&js(t)&&Kn(t)==et}function Ls(t){return"symbol"==typeof t||js(t)&&Kn(t)==rt}var Fs=qe?dr(qe):function(t){return js(t)&&Es(t.length)&&!!Be[Kn(t)]};var Os=bo(fi),Ds=bo(function(t,e){return t<=e});function Ns(t){if(!t)return[];if(ys(t))return Rs(t)?Sr(t):ro(t);if(cr&&t[cr])return function(t){for(var e,r=[];!(e=t.next()).done;)r.push(e.value);return r}(t[cr]());var e=qo(t);return(e==Y?xr:e==tt?Er:pl)(t)}function Us(t){return t?(t=Vs(t))===M||t===-M?(t<0?-1:1)*I:t==t?t:0:0===t?t:0}function zs(t){var e=Us(t),r=e%1;return e==e?r?e-r:e:0}function qs(t){return t?Rn(zs(t),0,L):0}function Vs(t){if("number"==typeof t)return t;if(Ls(t))return R;if(Ps(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ps(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(At,"");var r=Vt.test(t);return r||Gt.test(t)?je(t.slice(2),r?2:8):qt.test(t)?R:+t}function Hs(t){return no(t,ol(t))}function Gs(t){return null==t?"":Fi(t)}var Ws=oo(function(t,e){if(Jo(e)||ys(e))no(e,il(e),t);else for(var r in e)ce.call(e,r)&&jn(t,r,e[r])}),Zs=oo(function(t,e){no(e,ol(e),t)}),Ys=oo(function(t,e,r,n){no(e,ol(e),t,n)}),Xs=oo(function(t,e,r,n){no(e,il(e),t,n)}),$s=To(In);var Js=xi(function(t,e){t=ee(t);var r=-1,i=e.length,o=i>2?e[2]:n;for(o&&Zo(e[0],e[1],o)&&(i=1);++r1),e}),no(t,Ao(t),r),n&&(r=Ln(r,c|f|h,jo));for(var i=e.length;i--;)Di(r,e[i]);return r});var ul=To(function(t,e){return null==t?{}:function(t,e){return _i(t,e,function(e,r){return tl(t,r)})}(t,e)});function cl(t,e){if(null==t)return{};var r=Je(Ao(t),function(t){return[t]});return e=Fo(e),_i(t,r,function(t,r){return e(t,r[0])})}var fl=Bo(il),hl=Bo(ol);function pl(t){return null==t?[]:gr(t,il(t))}var dl=uo(function(t,e,r){return e=e.toLowerCase(),t+(r?gl(e):e)});function gl(t){return xl(Gs(t).toLowerCase())}function ml(t){return(t=Gs(t))&&t.replace(Zt,yr).replace(ve,"")}var vl=uo(function(t,e,r){return t+(r?"-":"")+e.toLowerCase()}),_l=uo(function(t,e,r){return t+(r?" ":"")+e.toLowerCase()}),yl=lo("toLowerCase");var bl=uo(function(t,e,r){return t+(r?"_":"")+e.toLowerCase()});var wl=uo(function(t,e,r){return t+(r?" ":"")+xl(e)});var kl=uo(function(t,e,r){return t+(r?" ":"")+e.toUpperCase()}),xl=lo("toUpperCase");function Bl(t,e,r){return t=Gs(t),(e=r?n:e)===n?function(t){return we.test(t)}(t)?function(t){return t.match(ye)||[]}(t):function(t){return t.match(Dt)||[]}(t):t.match(e)||[]}var Cl=xi(function(t,e){try{return Ve(t,n,e)}catch(t){return xs(t)?t:new Kt(t)}}),El=To(function(t,e){return Ge(e,function(e){e=ca(e),An(t,e,rs(t[e],t))}),t});function Pl(t){return function(){return t}}var jl=ho(),Sl=ho(!0);function Tl(t){return t}function Ml(t){return li("function"==typeof t?t:Ln(t,c))}var Al=xi(function(t,e){return function(r){return ni(r,t,e)}}),Il=xi(function(t,e){return function(r){return ni(t,r,e)}});function Rl(t,e,r){var n=il(e),i=Xn(e,n);null!=r||Ps(e)&&(i.length||!n.length)||(r=e,e=t,t=this,i=Xn(e,il(e)));var o=!(Ps(r)&&"chain"in r&&!r.chain),a=Bs(t);return Ge(i,function(r){var n=e[r];t[r]=n,a&&(t.prototype[r]=function(){var e=this.__chain__;if(o||e){var r=t(this.__wrapped__);return(r.__actions__=ro(this.__actions__)).push({func:n,args:arguments,thisArg:t}),r.__chain__=e,r}return n.apply(t,Ke([this.value()],arguments))})}),t}function Ll(){}var Fl=vo(Je),Ol=vo(Ze),Dl=vo(er);function Nl(t){return Yo(t)?ur(ca(t)):function(t){return function(e){return $n(e,t)}}(t)}var Ul=yo(),zl=yo(!0);function ql(){return[]}function Vl(){return!1}var Hl=mo(function(t,e){return t+e},0),Gl=ko("ceil"),Wl=mo(function(t,e){return t/e},1),Zl=ko("floor");var Yl,Xl=mo(function(t,e){return t*e},1),$l=ko("round"),Jl=mo(function(t,e){return t-e},0);return pn.after=function(t,e){if("function"!=typeof e)throw new ie(a);return t=zs(t),function(){if(--t<1)return e.apply(this,arguments)}},pn.ary=ts,pn.assign=Ws,pn.assignIn=Zs,pn.assignInWith=Ys,pn.assignWith=Xs,pn.at=$s,pn.before=es,pn.bind=rs,pn.bindAll=El,pn.bindKey=ns,pn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return vs(t)?t:[t]},pn.chain=Na,pn.chunk=function(t,e,r){e=(r?Zo(t,e,r):e===n)?1:Hr(zs(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var o=0,a=0,s=$t(Or(i/e));oo?0:o+r),(i=i===n||i>o?o:zs(i))<0&&(i+=o),i=r>i?0:qs(i);r>>0)?(t=Gs(t))&&("string"==typeof e||null!=e&&!As(e))&&!(e=Fi(e))&&kr(t)?Yi(Sr(t),0,r):t.split(e,r):[]},pn.spread=function(t,e){if("function"!=typeof t)throw new ie(a);return e=null==e?0:Hr(zs(e),0),xi(function(r){var n=r[e],i=Yi(r,0,e);return n&&Ke(i,n),Ve(t,this,i)})},pn.tail=function(t){var e=null==t?0:t.length;return e?Ti(t,1,e):[]},pn.take=function(t,e,r){return t&&t.length?Ti(t,0,(e=r||e===n?1:zs(e))<0?0:e):[]},pn.takeRight=function(t,e,r){var i=null==t?0:t.length;return i?Ti(t,(e=i-(e=r||e===n?1:zs(e)))<0?0:e,i):[]},pn.takeRightWhile=function(t,e){return t&&t.length?Ui(t,Fo(e,3),!1,!0):[]},pn.takeWhile=function(t,e){return t&&t.length?Ui(t,Fo(e,3)):[]},pn.tap=function(t,e){return e(t),t},pn.throttle=function(t,e,r){var n=!0,i=!0;if("function"!=typeof t)throw new ie(a);return Ps(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),is(t,e,{leading:n,maxWait:e,trailing:i})},pn.thru=Ua,pn.toArray=Ns,pn.toPairs=fl,pn.toPairsIn=hl,pn.toPath=function(t){return vs(t)?Je(t,ca):Ls(t)?[t]:ro(ua(Gs(t)))},pn.toPlainObject=Hs,pn.transform=function(t,e,r){var n=vs(t),i=n||ws(t)||Fs(t);if(e=Fo(e,4),null==r){var o=t&&t.constructor;r=i?n?new o:[]:Ps(t)&&Bs(o)?dn(Ae(t)):{}}return(i?Ge:Zn)(t,function(t,n,i){return e(r,t,n,i)}),r},pn.unary=function(t){return ts(t,1)},pn.union=ja,pn.unionBy=Sa,pn.unionWith=Ta,pn.uniq=function(t){return t&&t.length?Oi(t):[]},pn.uniqBy=function(t,e){return t&&t.length?Oi(t,Fo(e,2)):[]},pn.uniqWith=function(t,e){return e="function"==typeof e?e:n,t&&t.length?Oi(t,n,e):[]},pn.unset=function(t,e){return null==t||Di(t,e)},pn.unzip=Ma,pn.unzipWith=Aa,pn.update=function(t,e,r){return null==t?t:Ni(t,e,Gi(r))},pn.updateWith=function(t,e,r,i){return i="function"==typeof i?i:n,null==t?t:Ni(t,e,Gi(r),i)},pn.values=pl,pn.valuesIn=function(t){return null==t?[]:gr(t,ol(t))},pn.without=Ia,pn.words=Bl,pn.wrap=function(t,e){return cs(Gi(e),t)},pn.xor=Ra,pn.xorBy=La,pn.xorWith=Fa,pn.zip=Oa,pn.zipObject=function(t,e){return Vi(t||[],e||[],jn)},pn.zipObjectDeep=function(t,e){return Vi(t||[],e||[],Ei)},pn.zipWith=Da,pn.entries=fl,pn.entriesIn=hl,pn.extend=Zs,pn.extendWith=Ys,Rl(pn,pn),pn.add=Hl,pn.attempt=Cl,pn.camelCase=dl,pn.capitalize=gl,pn.ceil=Gl,pn.clamp=function(t,e,r){return r===n&&(r=e,e=n),r!==n&&(r=(r=Vs(r))==r?r:0),e!==n&&(e=(e=Vs(e))==e?e:0),Rn(Vs(t),e,r)},pn.clone=function(t){return Ln(t,h)},pn.cloneDeep=function(t){return Ln(t,c|h)},pn.cloneDeepWith=function(t,e){return Ln(t,c|h,e="function"==typeof e?e:n)},pn.cloneWith=function(t,e){return Ln(t,h,e="function"==typeof e?e:n)},pn.conformsTo=function(t,e){return null==e||Fn(t,e,il(e))},pn.deburr=ml,pn.defaultTo=function(t,e){return null==t||t!=t?e:t},pn.divide=Wl,pn.endsWith=function(t,e,r){t=Gs(t),e=Fi(e);var i=t.length,o=r=r===n?i:Rn(zs(r),0,i);return(r-=e.length)>=0&&t.slice(r,o)==e},pn.eq=ps,pn.escape=function(t){return(t=Gs(t))&&xt.test(t)?t.replace(wt,br):t},pn.escapeRegExp=function(t){return(t=Gs(t))&&Mt.test(t)?t.replace(Tt,"\\$&"):t},pn.every=function(t,e,r){var i=vs(t)?Ze:zn;return r&&Zo(t,e,r)&&(e=n),i(t,Fo(e,3))},pn.find=Va,pn.findIndex=ma,pn.findKey=function(t,e){return nr(t,Fo(e,3),Zn)},pn.findLast=Ha,pn.findLastIndex=va,pn.findLastKey=function(t,e){return nr(t,Fo(e,3),Yn)},pn.floor=Zl,pn.forEach=Ga,pn.forEachRight=Wa,pn.forIn=function(t,e){return null==t?t:Gn(t,Fo(e,3),ol)},pn.forInRight=function(t,e){return null==t?t:Wn(t,Fo(e,3),ol)},pn.forOwn=function(t,e){return t&&Zn(t,Fo(e,3))},pn.forOwnRight=function(t,e){return t&&Yn(t,Fo(e,3))},pn.get=Qs,pn.gt=ds,pn.gte=gs,pn.has=function(t,e){return null!=t&&Vo(t,e,ti)},pn.hasIn=tl,pn.head=ya,pn.identity=Tl,pn.includes=function(t,e,r,n){t=ys(t)?t:pl(t),r=r&&!n?zs(r):0;var i=t.length;return r<0&&(r=Hr(i+r,0)),Rs(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&or(t,e,r)>-1},pn.indexOf=function(t,e,r){var n=null==t?0:t.length;if(!n)return-1;var i=null==r?0:zs(r);return i<0&&(i=Hr(n+i,0)),or(t,e,i)},pn.inRange=function(t,e,r){return e=Us(e),r===n?(r=e,e=0):r=Us(r),function(t,e,r){return t>=Gr(e,r)&&t=-A&&t<=A},pn.isSet=Is,pn.isString=Rs,pn.isSymbol=Ls,pn.isTypedArray=Fs,pn.isUndefined=function(t){return t===n},pn.isWeakMap=function(t){return js(t)&&qo(t)==it},pn.isWeakSet=function(t){return js(t)&&Kn(t)==ot},pn.join=function(t,e){return null==t?"":qr.call(t,e)},pn.kebabCase=vl,pn.last=xa,pn.lastIndexOf=function(t,e,r){var i=null==t?0:t.length;if(!i)return-1;var o=i;return r!==n&&(o=(o=zs(r))<0?Hr(i+o,0):Gr(o,i-1)),e==e?function(t,e,r){for(var n=r+1;n--;)if(t[n]===e)return n;return n}(t,e,o):ir(t,sr,o,!0)},pn.lowerCase=_l,pn.lowerFirst=yl,pn.lt=Os,pn.lte=Ds,pn.max=function(t){return t&&t.length?qn(t,Tl,Qn):n},pn.maxBy=function(t,e){return t&&t.length?qn(t,Fo(e,2),Qn):n},pn.mean=function(t){return lr(t,Tl)},pn.meanBy=function(t,e){return lr(t,Fo(e,2))},pn.min=function(t){return t&&t.length?qn(t,Tl,fi):n},pn.minBy=function(t,e){return t&&t.length?qn(t,Fo(e,2),fi):n},pn.stubArray=ql,pn.stubFalse=Vl,pn.stubObject=function(){return{}},pn.stubString=function(){return""},pn.stubTrue=function(){return!0},pn.multiply=Xl,pn.nth=function(t,e){return t&&t.length?mi(t,zs(e)):n},pn.noConflict=function(){return Me._===this&&(Me._=ge),this},pn.noop=Ll,pn.now=Qa,pn.pad=function(t,e,r){t=Gs(t);var n=(e=zs(e))?jr(t):0;if(!e||n>=e)return t;var i=(e-n)/2;return _o(Dr(i),r)+t+_o(Or(i),r)},pn.padEnd=function(t,e,r){t=Gs(t);var n=(e=zs(e))?jr(t):0;return e&&ne){var i=t;t=e,e=i}if(r||t%1||e%1){var o=Yr();return Gr(t+o*(e-t+Pe("1e-"+((o+"").length-1))),e)}return wi(t,e)},pn.reduce=function(t,e,r){var n=vs(t)?Qe:fr,i=arguments.length<3;return n(t,Fo(e,4),r,i,Nn)},pn.reduceRight=function(t,e,r){var n=vs(t)?tr:fr,i=arguments.length<3;return n(t,Fo(e,4),r,i,Un)},pn.repeat=function(t,e,r){return e=(r?Zo(t,e,r):e===n)?1:zs(e),ki(Gs(t),e)},pn.replace=function(){var t=arguments,e=Gs(t[0]);return t.length<3?e:e.replace(t[1],t[2])},pn.result=function(t,e,r){var i=-1,o=(e=Wi(e,t)).length;for(o||(o=1,t=n);++iA)return[];var r=L,n=Gr(t,L);e=Fo(e),t-=L;for(var i=pr(n,e);++r=a)return t;var l=r-jr(i);if(l<1)return i;var u=s?Yi(s,0,l).join(""):t.slice(0,l);if(o===n)return u+i;if(s&&(l+=u.length-l),As(o)){if(t.slice(l).search(o)){var c,f=u;for(o.global||(o=re(o.source,Gs(zt.exec(o))+"g")),o.lastIndex=0;c=o.exec(f);)var h=c.index;u=u.slice(0,h===n?l:h)}}else if(t.indexOf(Fi(o),l)!=l){var p=u.lastIndexOf(o);p>-1&&(u=u.slice(0,p))}return u+i},pn.unescape=function(t){return(t=Gs(t))&&kt.test(t)?t.replace(bt,Tr):t},pn.uniqueId=function(t){var e=++fe;return Gs(t)+e},pn.upperCase=kl,pn.upperFirst=xl,pn.each=Ga,pn.eachRight=Wa,pn.first=ya,Rl(pn,(Yl={},Zn(pn,function(t,e){ce.call(pn.prototype,e)||(Yl[e]=t)}),Yl),{chain:!1}),pn.VERSION="4.17.11",Ge(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){pn[t].placeholder=pn}),Ge(["drop","take"],function(t,e){vn.prototype[t]=function(r){r=r===n?1:Hr(zs(r),0);var i=this.__filtered__&&!e?new vn(this):this.clone();return i.__filtered__?i.__takeCount__=Gr(r,i.__takeCount__):i.__views__.push({size:Gr(r,L),type:t+(i.__dir__<0?"Right":"")}),i},vn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Ge(["filter","map","takeWhile"],function(t,e){var r=e+1,n=r==S||3==r;vn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Fo(t,3),type:r}),e.__filtered__=e.__filtered__||n,e}}),Ge(["head","last"],function(t,e){var r="take"+(e?"Right":"");vn.prototype[t]=function(){return this[r](1).value()[0]}}),Ge(["initial","tail"],function(t,e){var r="drop"+(e?"":"Right");vn.prototype[t]=function(){return this.__filtered__?new vn(this):this[r](1)}}),vn.prototype.compact=function(){return this.filter(Tl)},vn.prototype.find=function(t){return this.filter(t).head()},vn.prototype.findLast=function(t){return this.reverse().find(t)},vn.prototype.invokeMap=xi(function(t,e){return"function"==typeof t?new vn(this):this.map(function(r){return ni(r,t,e)})}),vn.prototype.reject=function(t){return this.filter(ls(Fo(t)))},vn.prototype.slice=function(t,e){t=zs(t);var r=this;return r.__filtered__&&(t>0||e<0)?new vn(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),e!==n&&(r=(e=zs(e))<0?r.dropRight(-e):r.take(e-t)),r)},vn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},vn.prototype.toArray=function(){return this.take(L)},Zn(vn.prototype,function(t,e){var r=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),o=pn[i?"take"+("last"==e?"Right":""):e],a=i||/^find/.test(e);o&&(pn.prototype[e]=function(){var e=this.__wrapped__,s=i?[1]:arguments,l=e instanceof vn,u=s[0],c=l||vs(e),f=function(t){var e=o.apply(pn,Ke([t],s));return i&&h?e[0]:e};c&&r&&"function"==typeof u&&1!=u.length&&(l=c=!1);var h=this.__chain__,p=!!this.__actions__.length,d=a&&!h,g=l&&!p;if(!a&&c){e=g?e:new vn(this);var m=t.apply(e,s);return m.__actions__.push({func:Ua,args:[f],thisArg:n}),new mn(m,h)}return d&&g?t.apply(this,s):(m=this.thru(f),d?i?m.value()[0]:m.value():m)})}),Ge(["pop","push","shift","sort","splice","unshift"],function(t){var e=oe[t],r=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",n=/^(?:pop|shift)$/.test(t);pn.prototype[t]=function(){var t=arguments;if(n&&!this.__chain__){var i=this.value();return e.apply(vs(i)?i:[],t)}return this[r](function(r){return e.apply(vs(r)?r:[],t)})}}),Zn(vn.prototype,function(t,e){var r=pn[e];if(r){var n=r.name+"";(nn[n]||(nn[n]=[])).push({name:e,func:r})}}),nn[po(n,m).name]=[{name:"wrapper",func:n}],vn.prototype.clone=function(){var t=new vn(this.__wrapped__);return t.__actions__=ro(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=ro(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=ro(this.__views__),t},vn.prototype.reverse=function(){if(this.__filtered__){var t=new vn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},vn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,r=vs(t),n=e<0,i=r?t.length:0,o=function(t,e,r){for(var n=-1,i=r.length;++n=this.__values__.length;return{done:t,value:t?n:this.__values__[this.__index__++]}},pn.prototype.plant=function(t){for(var e,r=this;r instanceof gn;){var i=ha(r);i.__index__=0,i.__values__=n,e?o.__wrapped__=i:e=i;var o=i;r=r.__wrapped__}return o.__wrapped__=t,e},pn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof vn){var e=t;return this.__actions__.length&&(e=new vn(this)),(e=e.reverse()).__actions__.push({func:Ua,args:[Pa],thisArg:n}),new mn(e,this.__chain__)}return this.thru(Pa)},pn.prototype.toJSON=pn.prototype.valueOf=pn.prototype.value=function(){return zi(this.__wrapped__,this.__actions__)},pn.prototype.first=pn.prototype.head,cr&&(pn.prototype[cr]=function(){return this}),pn}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Me._=Mr,define(function(){return Mr})):Ie?((Ie.exports=Mr)._=Mr,Ae._=Mr):Me._=Mr}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],77:[function(t,e,r){(function(r){t("path");var n=t("fs");function i(){this.types=Object.create(null),this.extensions=Object.create(null)}i.prototype.define=function(t){for(var e in t){for(var n=t[e],i=0;i=0;--s)if(h[s]=f,f*=u[s],p=Math.max(p,a.scratchMemory(u[s])),e.shape[s]!==r.shape[s])throw new Error("Shape mismatch, real and imaginary arrays must have same size");var d,g=4*f+p;d="array"===e.dtype||"float64"===e.dtype||"custom"===e.dtype?o.mallocDouble(g):o.mallocFloat(g);var m,v,_,y,b=i(d,u.slice(0),h,0),w=i(d,u.slice(0),h.slice(0),f),k=i(d,u.slice(0),h.slice(0),2*f),x=i(d,u.slice(0),h.slice(0),3*f),B=4*f;for(n.assign(b,e),n.assign(w,r),s=c-1;s>=0&&(a(t,f/u[s],u[s],d,b.offset,w.offset,B),0!==s);--s){for(v=1,_=k.stride,y=x.stride,l=s-1;l=0;--l)y[l]=_[l]=v,v*=u[l];n.assign(k,b),n.assign(x,w),m=b,b=k,k=m,m=w,w=x,x=m}n.assign(e,b),n.assign(r,w),o.free(d)}},{"./lib/fft-matrix.js":80,ndarray:85,"ndarray-ops":82,"typedarray-pool":174}],80:[function(t,e,r){var n=t("bit-twiddle");function i(t,e,r,i,o,a){var s,l,u,c,f,h,p,d,g,m,v,_,y,b,w,k,x,B,C,E,P,j,S,T;for(t|=0,e|=0,o|=0,a|=0,s=r|=0,l=n.log2(s),B=0;B>1,f=0,u=0;u>=1;f+=h}for(v=-1,_=0,m=1,d=0;d>",rrshift:">>>"};!function(){for(var t in s){var e=s[t];r[t]=a({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+e+"c"},funcName:t}),r[t+"eq"]=a({args:["array","array"],body:{args:["a","b"],body:"a"+e+"=b"},rvalue:!0,funcName:t+"eq"}),r[t+"s"]=a({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+e+"s"},funcName:t+"s"}),r[t+"seq"]=a({args:["array","scalar"],body:{args:["a","s"],body:"a"+e+"=s"},rvalue:!0,funcName:t+"seq"})}}();var l={not:"!",bnot:"~",neg:"-",recip:"1.0/"};!function(){for(var t in l){var e=l[t];r[t]=a({args:["array","array"],body:{args:["a","b"],body:"a="+e+"b"},funcName:t}),r[t+"eq"]=a({args:["array"],body:{args:["a"],body:"a="+e+"a"},rvalue:!0,count:2,funcName:t+"eq"})}}();var u={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};!function(){for(var t in u){var e=u[t];r[t]=a({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+e+"c"},funcName:t}),r[t+"s"]=a({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+e+"s"},funcName:t+"s"}),r[t+"eq"]=a({args:["array","array"],body:{args:["a","b"],body:"a=a"+e+"b"},rvalue:!0,count:2,funcName:t+"eq"}),r[t+"seq"]=a({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+e+"s"},rvalue:!0,count:2,funcName:t+"seq"})}}();var c=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];!function(){for(var t=0;tthis_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"}),r.norm1=n({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"}),r.sup=n({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:[]}}),r.inf=n({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:[]}}),r.random=a({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"}),r.assign=a({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"}),r.assigns=a({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"}),r.equals=n({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":15}],83:[function(t,e,r){"use strict";var n=t("ndarray"),i=t("./doConvert.js");e.exports=function(t,e){for(var r=[],o=t,a=1;Array.isArray(o);)r.push(o.length),a*=o.length,o=o[0];return 0===r.length?n():(e||(e=n(new Float64Array(a),r)),i(e,t),e)}},{"./doConvert.js":84,ndarray:85}],84:[function(t,e,r){e.exports=t("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":15}],85:[function(t,e,r){var n=t("iota-array"),i=t("is-buffer"),o="undefined"!=typeof Float64Array;function a(t,e){return t[0]-e[0]}function s(){var t,e=this.stride,r=new Array(e.length);for(t=0;tMath.abs(this.stride[1]))?[1,0]:[0,1]}})"):3===e&&o.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];}}})")):o.push("ORDER})")),o.push("proto.set=function "+r+"_set("+l.join(",")+",v){"),i?o.push("return this.data.set("+c+",v)}"):o.push("return this.data["+c+"]=v}"),o.push("proto.get=function "+r+"_get("+l.join(",")+"){"),i?o.push("return this.data.get("+c+")}"):o.push("return this.data["+c+"]}"),o.push("proto.index=function "+r+"_index(",l.join(),"){return "+c+"}"),o.push("proto.hi=function "+r+"_hi("+l.join(",")+"){return new "+r+"(this.data,"+a.map(function(t){return["(typeof i",t,"!=='number'||i",t,"<0)?this.shape[",t,"]:i",t,"|0"].join("")}).join(",")+","+a.map(function(t){return"this.stride["+t+"]"}).join(",")+",this.offset)}");var p=a.map(function(t){return"a"+t+"=this.shape["+t+"]"}),d=a.map(function(t){return"c"+t+"=this.stride["+t+"]"});o.push("proto.lo=function "+r+"_lo("+l.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}");o.push("return new "+r+"(this.data,"+a.map(function(t){return"a"+t}).join(",")+","+a.map(function(t){return"c"+t}).join(",")+",b)}"),o.push("proto.step=function "+r+"_step("+l.join(",")+"){var "+a.map(function(t){return"a"+t+"=this.shape["+t+"]"}).join(",")+","+a.map(function(t){return"b"+t+"=this.stride["+t+"]"}).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 o.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),o.push("return function construct_"+r+"(data,shape,stride,offset){return new "+r+"(data,"+a.map(function(t){return"shape["+t+"]"}).join(",")+","+a.map(function(t){return"stride["+t+"]"}).join(",")+",offset)}"),new Function("CTOR_LIST","ORDER",o.join("\n"))(u[t],s)}var u={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],buffer:[],generic:[]};e.exports=function(t,e,r,n){if(void 0===t)return(0,u.array[0])([]);"number"==typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var a=e.length;if(void 0===r){r=new Array(a);for(var s=a-1,c=1;s>=0;--s)r[s]=c,c*=e[s]}if(void 0===n)for(n=0,s=0;s>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1}},{}],87:[function(t,e,r){(function(r,n){"use strict";var i=t("util"),o=t("stream"),a=e.exports=function(){o.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};i.inherits(a,o),a.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),r.nextTick(function(){this._process(),this._paused&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))},a.prototype.write=function(t,e){return this.writable?(n.isBuffer(t)||(t=new n(t,e||this._encoding)),this._buffers.push(t),this._buffered+=t.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)},a.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(0==this._buffers.length?this._end():(this._buffers.push(null),this._process()))},a.prototype.destroySoon=a.prototype.end,a.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("There are some read requests waitng on finished stream")),this.destroy()},a.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},a.prototype._process=function(){for(;this._buffered>0&&this._reads&&this._reads.length>0;){var t=this._reads[0];if(t.allowLess){this._reads.shift(),(o=this._buffers[0]).length>t.length?(this._buffered-=t.length,this._buffers[0]=o.slice(t.length),t.func.call(this,o.slice(0,t.length))):(this._buffered-=o.length,this._buffers.shift(),t.func.call(this,o))}else{if(!(this._buffered>=t.length))break;this._reads.shift();for(var e=0,r=0,i=new n(t.length);e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,i)}}this._buffers&&this._buffers.length>0&&null==this._buffers[0]&&this._end()}}).call(this,t("_process"),t("buffer").Buffer)},{_process:118,buffer:48,stream:169,util:180}],88:[function(t,e,r){"use strict";e.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,COLOR_PALETTE:1,COLOR_COLOR:2,COLOR_ALPHA:4}},{}],89:[function(t,e,r){"use strict";var n=t("util"),i=t("stream"),o=e.exports=function(){i.call(this),this._crc=-1,this.writable=!0};n.inherits(o,i),o.prototype.write=function(t){for(var e=0;e>>8;return!0},o.prototype.end=function(t){t&&this.write(t),this.emit("crc",this.crc32())},o.prototype.crc32=function(){return-1^this._crc},o.crc32=function(t){for(var e=-1,r=0;r>>8;return-1^e};for(var a=[],s=0;s<256;s++){for(var l=s,u=0;u<8;u++)1&l?l=3988292384^l>>>1:l>>>=1;a[s]=l}},{stream:169,util:180}],90:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=(t("zlib"),t("./chunkstream")),o=e.exports=function(t,e,r,n,o){i.call(this),this._width=t,this._height=e,this._Bpp=r,this._data=n,this._options=o,this._line=0,"filterType"in o&&-1!=o.filterType?"number"==typeof o.filterType&&(o.filterType=[o.filterType]):o.filterType=[0,1,2,3,4],this._filters={0:this._filterNone.bind(this),1:this._filterSub.bind(this),2:this._filterUp.bind(this),3:this._filterAvg.bind(this),4:this._filterPaeth.bind(this)},this.read(this._width*r+1,this._reverseFilterLine.bind(this))};n.inherits(o,i);var a={1:{0:0,1:0,2:0,3:255},2:{0:0,1:0,2:0,3:1},3:{0:0,1:1,2:2,3:255},4:{0:0,1:1,2:2,3:3}};o.prototype._reverseFilterLine=function(t){var e=this._data,r=this._width<<2,n=this._line*r,i=t[0];if(0==i)for(var o=0;o0?e[l+c-4]:0;e[l+c]=255!=f?t[u+f]+h:255}else if(2==i)for(o=0;o0?e[l-r+c]:0;e[l+c]=255!=f?t[u+f]+p:255}else if(3==i)for(o=0;o0?e[l+c-4]:0,p=this._line>0?e[l-r+c]:0;var d=Math.floor((h+p)/2);e[l+c]=255!=f?t[u+f]+d:255}else if(4==i)for(o=0;o0?e[l+c-4]:0,p=this._line>0?e[l-r+c]:0;var g=o>0&&this._line>0?e[l-r+c-4]:0;d=s(h,p,g);e[l+c]=255!=f?t[u+f]+d:255}this._line++,this._line=4?t[e*n+a-4]:0,l=t[e*n+a]-s;r?r[e*i+1+a]=l:o+=Math.abs(l)}return o},o.prototype._filterUp=function(t,e,r){var n=this._width<<2,i=n+1,o=0;r&&(r[e*i]=2);for(var a=0;a0?t[(e-1)*n+a]:0,l=t[e*n+a]-s;r?r[e*i+1+a]=l:o+=Math.abs(l)}return o},o.prototype._filterAvg=function(t,e,r){var n=this._width<<2,i=n+1,o=0;r&&(r[e*i]=3);for(var a=0;a=4?t[e*n+a-4]:0,l=e>0?t[(e-1)*n+a]:0,u=t[e*n+a]-(s+l>>1);r?r[e*i+1+a]=u:o+=Math.abs(u)}return o},o.prototype._filterPaeth=function(t,e,r){var n=this._width<<2,i=n+1,o=0;r&&(r[e*i]=4);for(var a=0;a=4?t[e*n+a-4]:0,u=e>0?t[(e-1)*n+a]:0,c=a>=4&&e>0?t[(e-1)*n+a-4]:0,f=t[e*n+a]-s(l,u,c);r?r[e*i+1+a]=f:o+=Math.abs(f)}return o};var s=function(t,e,r){var n=t+e-r,i=Math.abs(n-t),o=Math.abs(n-e),a=Math.abs(n-r);return i<=o&&i<=a?t:o<=a?e:r}}).call(this,t("buffer").Buffer)},{"./chunkstream":87,buffer:48,util:180,zlib:46}],91:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=t("stream"),o=t("zlib"),a=t("./filter"),s=t("./crc"),l=t("./constants"),u=e.exports=function(t){i.call(this),this._options=t,t.deflateChunkSize=t.deflateChunkSize||32768,t.deflateLevel=t.deflateLevel||9,t.deflateStrategy=t.deflateStrategy||3,this.readable=!0};n.inherits(u,i),u.prototype.pack=function(t,e,n){this.emit("data",new r(l.PNG_SIGNATURE)),this.emit("data",this._packIHDR(e,n));t=new a(e,n,4,t,this._options).filter();var i=o.createDeflate({chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy});i.on("error",this.emit.bind(this,"error")),i.on("data",function(t){this.emit("data",this._packIDAT(t))}.bind(this)),i.on("end",function(){this.emit("data",this._packIEND()),this.emit("end")}.bind(this)),i.end(t)},u.prototype._packChunk=function(t,e){var n=e?e.length:0,i=new r(n+12);return i.writeUInt32BE(n,0),i.writeUInt32BE(t,4),e&&e.copy(i,8),i.writeInt32BE(s.crc32(i.slice(4,i.length-4)),i.length-4),i},u.prototype._packIHDR=function(t,e){var n=new r(13);return n.writeUInt32BE(t,0),n.writeUInt32BE(e,4),n[8]=8,n[9]=6,n[10]=0,n[11]=0,n[12]=0,this._packChunk(l.TYPE_IHDR,n)},u.prototype._packIDAT=function(t){return this._packChunk(l.TYPE_IDAT,t)},u.prototype._packIEND=function(){return this._packChunk(l.TYPE_IEND,null)}}).call(this,t("buffer").Buffer)},{"./constants":88,"./crc":89,"./filter":90,buffer:48,stream:169,util:180,zlib:46}],92:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=t("zlib"),o=t("./crc"),a=t("./chunkstream"),s=t("./constants"),l=t("./filter"),u=e.exports=function(t){a.call(this),this._options=t,t.checkCRC=!1!==t.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._inflate=null,this._filter=null,this._crc=null,this._palette=[],this._colorType=0,this._chunks={},this._chunks[s.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[s.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[s.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[s.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[s.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[s.TYPE_gAMA]=this._handleGAMA.bind(this),this.writable=!0,this.on("error",this._handleError.bind(this)),this._handleSignature()};n.inherits(u,a),u.prototype._handleError=function(){this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy()},u.prototype._handleSignature=function(){this.read(s.PNG_SIGNATURE.length,this._parseSignature.bind(this))},u.prototype._parseSignature=function(t){for(var e=s.PNG_SIGNATURE,r=0;rthis._palette.length)return void this.emit("error",new Error("More transparent colors than palette size"));for(var e=0;e0?this._handleIDAT(t):this._handleChunkEnd()},u.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))},u.prototype._parseIEND=function(t){this._crc.write(t),this._inflate.end(),this._hasIEND=!0,this._handleChunkEnd()};var c={0:1,2:3,3:1,4:2,6:4};u.prototype._reverseFiltered=function(t,e,r){if(3==this._colorType)for(var n=e<<2,i=0;i0&&this.height>0?new n(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new a(t||{}),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(t){this.data=t,this.emit("parsed",t)}.bind(this)),this._packer=new s(t),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,o),l.prototype.pack=function(){return e.nextTick(function(){this._packer.pack(this.data,this.width,this.height)}.bind(this)),this},l.prototype.parse=function(t,e){if(e){var r,n=null;this.once("parsed",r=function(t){this.removeListener("error",n),this.data=t,e(null,this)}.bind(this)),this.once("error",n=function(t){this.removeListener("parsed",r),e(t,null)}.bind(this))}return this.end(t),this},l.prototype.write=function(t){return this._parser.write(t),!0},l.prototype.end=function(t){this._parser.end(t)},l.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.data=t.data,delete t.data,this.emit("metadata",t)},l.prototype._gamma=function(t){this.gamma=t},l.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},l.prototype.bitblt=function(t,e,r,n,i,o,a){if(e>this.width||r>this.height||e+n>this.width||r+i>this.height)throw new Error("bitblt reading outside image");if(o>t.width||a>t.height||o+n>t.width||a+i>t.height)throw new Error("bitblt writing outside image");for(var s=0;s>=l,c-=l,m!==o){if(m===a)break;for(var v=mo;)y=d[y]>>8,++_;var b=y;if(h+_+(v!==m?1:0)>n)return void console.log("Warning, gif stream longer than expected.");r[h++]=b;var w=h+=_;for(v!==m&&(r[h++]=b),y=v;_--;)y=d[y],r[--w]=255&y,y>>=8;null!==g&&s<4096&&(d[s++]=g<<8|b,s>=u+1&&l<12&&(++l,u=u<<1|1)),g=m}else s=a+1,u=(1<<(l=i+1))-1,g=null}return h!==n&&console.log("Warning, gif stream shorter than expected."),r}try{r.GifWriter=function(t,e,r,n){var i=0,o=void 0===(n=void 0===n?{}:n).loop?null:n.loop,a=void 0===n.palette?null:n.palette;if(e<=0||r<=0||e>65535||r>65535)throw new Error("Width/Height invalid.");function s(t){var e=t.length;if(e<2||e>256||e&e-1)throw new Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return e}t[i++]=71,t[i++]=73,t[i++]=70,t[i++]=56,t[i++]=57,t[i++]=97;var l=0,u=0;if(null!==a){for(var c=s(a);c>>=1;)++l;if(c=1<=c)throw new Error("Background index out of range.");if(0===u)throw new Error("Background index explicitly passed as 0.")}}if(t[i++]=255&e,t[i++]=e>>8&255,t[i++]=255&r,t[i++]=r>>8&255,t[i++]=(null!==a?128:0)|l,t[i++]=u,t[i++]=0,null!==a)for(var f=0,h=a.length;f>16&255,t[i++]=p>>8&255,t[i++]=255&p}if(null!==o){if(o<0||o>65535)throw new Error("Loop count invalid.");t[i++]=33,t[i++]=255,t[i++]=11,t[i++]=78,t[i++]=69,t[i++]=84,t[i++]=83,t[i++]=67,t[i++]=65,t[i++]=80,t[i++]=69,t[i++]=50,t[i++]=46,t[i++]=48,t[i++]=3,t[i++]=1,t[i++]=255&o,t[i++]=o>>8&255,t[i++]=0}var d=!1;this.addFrame=function(e,r,n,o,l,u){if(!0===d&&(--i,d=!1),u=void 0===u?{}:u,e<0||r<0||e>65535||r>65535)throw new Error("x/y invalid.");if(n<=0||o<=0||n>65535||o>65535)throw new Error("Width/Height invalid.");if(l.length>=1;)++p;h=1<3)throw new Error("Disposal out of range.");var v=!1,_=0;if(void 0!==u.transparent&&null!==u.transparent&&(v=!0,(_=u.transparent)<0||_>=h))throw new Error("Transparent color index.");if((0!==m||v||0!==g)&&(t[i++]=33,t[i++]=249,t[i++]=4,t[i++]=m<<2|(!0===v?1:0),t[i++]=255&g,t[i++]=g>>8&255,t[i++]=_,t[i++]=0),t[i++]=44,t[i++]=255&e,t[i++]=e>>8&255,t[i++]=255&r,t[i++]=r>>8&255,t[i++]=255&n,t[i++]=n>>8&255,t[i++]=255&o,t[i++]=o>>8&255,t[i++]=!0===c?128|p-1:0,!0===c)for(var y=0,b=f.length;y>16&255,t[i++]=w>>8&255,t[i++]=255&w}return i=function(t,e,r,n){t[e++]=r;var i=e++,o=1<=r;)t[e++]=255&f,f>>=8,c-=8,e===i+256&&(t[i]=255,i=e++)}function p(t){f|=t<=8;)t[e++]=255&f,f>>=8,c-=8,e===i+256&&(t[i]=255,i=e++);4096===l?(p(o),l=s+1,u=r+1,g={}):(l>=1<>7,s=1<<1+(7&o);t[e++],t[e++];var l=null,u=null;a&&(l=e,u=s,e+=3*s);var c=!0,f=[],h=0,p=null,d=0,g=null;for(this.width=r,this.height=i;c&&e=0))throw Error("Invalid block size");if(0===j)break;e+=j}break;case 249:if(4!==t[e++]||0!==t[e+4])throw new Error("Invalid graphics extension block.");var m=t[e++];h=t[e++]|t[e++]<<8,p=t[e++],0==(1&m)&&(p=null),d=m>>2&7,e++;break;case 254:for(;;){if(!((j=t[e++])>=0))throw Error("Invalid block size");if(0===j)break;e+=j}break;default:throw new Error("Unknown graphic control label: 0x"+t[e-1].toString(16))}break;case 44:var v=t[e++]|t[e++]<<8,_=t[e++]|t[e++]<<8,y=t[e++]|t[e++]<<8,b=t[e++]|t[e++]<<8,w=t[e++],k=w>>6&1,x=1<<1+(7&w),B=l,C=u,E=!1;w>>7&&(E=!0,B=e,C=x,e+=3*x);var P=e;for(e++;;){var j;if(!((j=t[e++])>=0))throw Error("Invalid block size");if(0===j)break;e+=j}f.push({x:v,y:_,width:y,height:b,has_local_palette:E,palette_offset:B,palette_size:C,data_offset:P,data_length:e-P,transparent_index:p,interlaced:!!k,delay:h,disposal:d});break;case 59:c=!1;break;default:throw new Error("Unknown gif block: 0x"+t[e-1].toString(16))}this.numFrames=function(){return f.length},this.loopCount=function(){return g},this.frameInfo=function(t){if(t<0||t>=f.length)throw new Error("Frame index out of range.");return f[t]},this.decodeAndBlitFrameBGRA=function(e,i){var o=this.frameInfo(e),a=o.width*o.height,s=new Uint8Array(a);n(t,o.data_offset,s,a);var l=o.palette_offset,u=o.transparent_index;null===u&&(u=256);var c=o.width,f=r-c,h=c,p=4*(o.y*r+o.x),d=4*((o.y+o.height)*r+o.x),g=p,m=4*f;!0===o.interlaced&&(m+=4*r*7);for(var v=8,_=0,y=s.length;_=d&&(m=4*f+4*r*(v-1),g=p+(c+f)*(v<<1),v>>=1)),b===u)g+=4;else{var w=t[l+3*b],k=t[l+3*b+1],x=t[l+3*b+2];i[g++]=x,i[g++]=k,i[g++]=w,i[g++]=255}--h}},this.decodeAndBlitFrameRGBA=function(e,i){var o=this.frameInfo(e),a=o.width*o.height,s=new Uint8Array(a);n(t,o.data_offset,s,a);var l=o.palette_offset,u=o.transparent_index;null===u&&(u=256);var c=o.width,f=r-c,h=c,p=4*(o.y*r+o.x),d=4*((o.y+o.height)*r+o.x),g=p,m=4*f;!0===o.interlaced&&(m+=4*r*7);for(var v=8,_=0,y=s.length;_=d&&(m=4*f+4*r*(v-1),g=p+(c+f)*(v<<1),v>>=1)),b===u)g+=4;else{var w=t[l+3*b],k=t[l+3*b+1],x=t[l+3*b+2];i[g++]=w,i[g++]=k,i[g++]=x,i[g++]=255}--h}}}}catch(t){}},{}],95:[function(t,e,r){(function(r){var n=t("charm");function i(t){if(!(t=t||{}).total)throw new Error("You MUST specify the total number of operations that will be processed.");this.total=t.total,this.current=0,this.max_burden=t.maxBurden||.5,this.show_burden=t.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=n(),this.charm.pipe(r.stdout),this.charm.write("\n\n\n")}function o(t,e,r){for(r=r||" ";t.length3&&(l[0]=l[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,a)),(l[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=0;n--){var i=t[n];"."===i?t.splice(n,1):".."===i?(t.splice(n,1),r++):r&&(t.splice(n,1),r--)}if(e)for(;r--;r)t.unshift("..");return t}function n(t,e){if(t.filter)return t.filter(e);for(var r=[],n=0;n=-1&&!i;o--){var a=o>=0?arguments[o]:t.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(r=a+"/"+r,i="/"===a.charAt(0))}return r=e(n(r.split("/"),function(t){return!!t}),!i).join("/"),(i?"/":"")+r||"."},r.normalize=function(t){var o=r.isAbsolute(t),a="/"===i(t,-1);return(t=e(n(t.split("/"),function(t){return!!t}),!o).join("/"))||o||(t="."),t&&a&&(t+="/"),(o?"/":"")+t},r.isAbsolute=function(t){return"/"===t.charAt(0)},r.join=function(){var t=Array.prototype.slice.call(arguments,0);return r.normalize(n(t,function(t,e){if("string"!=typeof t)throw new TypeError("Arguments to path.join must be strings");return t}).join("/"))},r.relative=function(t,e){function n(t){for(var e=0;e=0&&""===t[r];r--);return e>r?[]:t.slice(e,r-e+1)}t=r.resolve(t).substr(1),e=r.resolve(e).substr(1);for(var i=n(t.split("/")),o=n(e.split("/")),a=Math.min(i.length,o.length),s=a,l=0;l=1;--o)if(47===(e=t.charCodeAt(o))){if(!i){n=o;break}}else i=!1;return-1===n?r?"/":".":r&&1===n?"/":t.slice(0,n)},r.basename=function(t,e){var r=function(t){"string"!=typeof t&&(t+="");var e,r=0,n=-1,i=!0;for(e=t.length-1;e>=0;--e)if(47===t.charCodeAt(e)){if(!i){r=e+1;break}}else-1===n&&(i=!1,n=e+1);return-1===n?"":t.slice(r,n)}(t);return e&&r.substr(-1*e.length)===e&&(r=r.substr(0,r.length-e.length)),r},r.extname=function(t){"string"!=typeof t&&(t+="");for(var e=-1,r=0,n=-1,i=!0,o=0,a=t.length-1;a>=0;--a){var s=t.charCodeAt(a);if(47!==s)-1===n&&(i=!1,n=a+1),46===s?-1===e?e=a:1!==o&&(o=1):-1!==e&&(o=-1);else if(!i){r=a+1;break}}return-1===e||-1===n||0===o||1===o&&e===n-1&&e===r+1?"":t.slice(e,n)};var i="b"==="ab".substr(-1)?function(t,e,r){return t.substr(e,r)}:function(t,e,r){return e<0&&(e=t.length+e),t.substr(e,r)}}).call(this,t("_process"))},{_process:118}],97:[function(t,e,r){(function(e){"use strict";var n=t("./interlace"),i={1:{0:0,1:0,2:0,3:255},2:{0:0,1:0,2:0,3:1},3:{0:0,1:1,2:2,3:255},4:{0:0,1:1,2:2,3:3}};function o(t,e,r,n,o,a){for(var s=t.width,l=t.height,u=t.index,c=0;c>4,r.push(f,c);break;case 2:l=3&h,u=h>>2&3,c=h>>4&3,f=h>>6&3,r.push(f,c,u,l);break;case 1:i=1&h,o=h>>1&1,a=h>>2&1,s=h>>3&1,l=h>>4&1,u=h>>5&1,c=h>>6&1,f=h>>7&1,r.push(f,c,u,l,s,a,o,i)}}return{get:function(t){for(;r.length0&&(this._paused=!1,this.emit("drain"))}.bind(this))},a.prototype.write=function(t,e){return this.writable?(r=n.isBuffer(t)?t:new n(t,e||this._encoding),this._buffers.push(r),this._buffered+=r.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 r},a.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(0===this._buffers.length?this._end():(this._buffers.push(null),this._process()))},a.prototype.destroySoon=a.prototype.end,a.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("There are some read requests waitng on finished stream")),this.destroy()},a.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},a.prototype._processReadAllowingLess=function(t){this._reads.shift();var e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))},a.prototype._processRead=function(t){this._reads.shift();for(var e=0,r=0,i=new n(t.length);e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,i)},a.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){var t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else{if(!(this._buffered>=t.length))break;this._processRead(t)}}this._buffers&&this._buffers.length>0&&null===this._buffers[0]&&this._end()}catch(t){this.emit("error",t)}}}).call(this,t("_process"),t("buffer").Buffer)},{_process:118,buffer:48,stream:169,util:180}],100:[function(t,e,r){"use strict";e.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}},{}],101:[function(t,e,r){"use strict";var n=[];!function(){for(var t=0;t<256;t++){for(var e=t,r=0;r<8;r++)1&e?e=3988292384^e>>>1:e>>>=1;n[t]=e}}();var i=e.exports=function(){this._crc=-1};i.prototype.write=function(t){for(var e=0;e>>8;return!0},i.prototype.crc32=function(){return-1^this._crc},i.crc32=function(t){for(var e=-1,r=0;r>>8;return-1^e}},{}],102:[function(t,e,r){(function(r){"use strict";var n=t("./paeth-predictor");var i={0:function(t,e,r,n,i){t.copy(n,i,e,e+r)},1:function(t,e,r,n,i,o){for(var a=0;a=o?t[e+a-o]:0,l=t[e+a]-s;n[i+a]=l}},2:function(t,e,r,n,i){for(var o=0;o0?t[e+o-r]:0,s=t[e+o]-a;n[i+o]=s}},3:function(t,e,r,n,i,o){for(var a=0;a=o?t[e+a-o]:0,l=e>0?t[e+a-r]:0,u=t[e+a]-(s+l>>1);n[i+a]=u}},4:function(t,e,r,i,o,a){for(var s=0;s=a?t[e+s-a]:0,u=e>0?t[e+s-r]:0,c=e>0&&s>=a?t[e+s-(r+a)]:0,f=t[e+s]-n(l,u,c);i[o+s]=f}}},o={0:function(t,e,r){for(var n=0,i=e+r,o=e;o=n?t[e+o-n]:0,s=t[e+o]-a;i+=Math.abs(s)}return i},2:function(t,e,r){for(var n=0,i=e+r,o=e;o0?t[o-r]:0,s=t[o]-a;n+=Math.abs(s)}return n},3:function(t,e,r,n){for(var i=0,o=0;o=n?t[e+o-n]:0,s=e>0?t[e+o-r]:0,l=t[e+o]-(a+s>>1);i+=Math.abs(l)}return i},4:function(t,e,r,i){for(var o=0,a=0;a=i?t[e+a-i]:0,l=e>0?t[e+a-r]:0,u=e>0&&a>=i?t[e+a-(r+i)]:0,c=t[e+a]-n(s,l,u);o+=Math.abs(c)}return o}};e.exports=function(t,e,n,a,s){var l;if("filterType"in a&&-1!==a.filterType){if("number"!=typeof a.filterType)throw new Error("unrecognised filter types");l=[a.filterType]}else l=[0,1,2,3,4];for(var u=e*s,c=0,f=0,h=new r((u+1)*n),p=l[0],d=0;d1)for(var g=1/0,m=0;mi?e[o-n]:0;e[o]=a+s}},a.prototype._unFilterType2=function(t,e,r){for(var n=this._lastLine,i=0;ii?e[a-n]:0,c=Math.floor((u+l)/2);e[a]=s+c}},a.prototype._unFilterType4=function(t,e,r){for(var n=this._xComparison,o=n-1,a=this._lastLine,s=0;so?e[s-n]:0,f=s>o&&a?a[s-n]:0,h=i(c,u,f);e[s]=l+h}},a.prototype._reverseFilterLine=function(t){var e,n=t[0],i=this._images[this._imageIndex],o=i.byteWidth;if(0===n)e=t.slice(1,o+1);else switch(e=new r(o),n){case 1:this._unFilterType1(t,e,o);break;case 2:this._unFilterType2(t,e,o);break;case 3:this._unFilterType3(t,e,o);break;case 4:this._unFilterType4(t,e,o);break;default:throw new Error("Unrecognised filter type - "+n)}this.write(e),i.lineIndex++,i.lineIndex>=i.height?(this._lastLine=null,this._imageIndex++,i=this._images[this._imageIndex]):this._lastLine=e,i?this.read(i.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}}).call(this,t("buffer").Buffer)},{"./interlace":107,"./paeth-predictor":111,buffer:48}],106:[function(t,e,r){(function(t){"use strict";e.exports=function(e,r){var n=r.depth,i=r.width,o=r.height,a=r.colorType,s=r.transColor,l=r.palette,u=e;return 3===a?function(t,e,r,n,i){for(var o=0,a=0;a0&&f>0&&r.push({width:c,height:f,index:l})}return r},r.getInterlaceIterator=function(t){return function(e,r,i){var o=e%n[i].x.length,a=(e-o)/n[i].x.length*8+n[i].x[o],s=r%n[i].y.length;return 4*a+((r-s)/n[i].y.length*8+n[i].y[s])*t*4}}},{}],108:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=t("stream"),o=t("./constants"),a=t("./packer"),s=e.exports=function(t){i.call(this);var e=t||{};this._packer=new a(e),this._deflate=this._packer.createDeflate(),this.readable=!0};n.inherits(s,i),s.prototype.pack=function(t,e,n,i){this.emit("data",new r(o.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,n)),i&&this.emit("data",this._packer.packGAMA(i));var a=this._packer.filterData(t,e,n);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(t){this.emit("data",this._packer.packIDAT(t))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(a)}}).call(this,t("buffer").Buffer)},{"./constants":100,"./packer":110,buffer:48,stream:169,util:180}],109:[function(t,e,r){(function(r){"use strict";var n=!0,i=t("zlib");i.deflateSync||(n=!1);var o=t("./constants"),a=t("./packer");e.exports=function(t,e){if(!n)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 a(e||{}),l=[];l.push(new r(o.PNG_SIGNATURE)),l.push(s.packIHDR(t.width,t.height)),t.gamma&&l.push(s.packGAMA(t.gamma));var u=s.filterData(t.data,t.width,t.height),c=i.deflateSync(u,s.getDeflateOptions());if(u=null,!c||!c.length)throw new Error("bad png - invalid compressed data response");return l.push(s.packIDAT(c)),l.push(s.packIEND()),r.concat(l)}}).call(this,t("buffer").Buffer)},{"./constants":100,"./packer":110,buffer:48,zlib:46}],110:[function(t,e,r){(function(r){"use strict";var n=t("./constants"),i=t("./crc"),o=t("./bitpacker"),a=t("./filter-pack"),s=t("zlib"),l=e.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32768,t.deflateLevel=null!=t.deflateLevel?t.deflateLevel:9,t.deflateStrategy=null!=t.deflateStrategy?t.deflateStrategy:3,t.inputHasAlpha=null==t.inputHasAlpha||t.inputHasAlpha,t.deflateFactory=t.deflateFactory||s.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType="number"==typeof t.colorType?t.colorType:n.COLORTYPE_COLOR_ALPHA,t.colorType!==n.COLORTYPE_COLOR&&t.colorType!==n.COLORTYPE_COLOR_ALPHA)throw new Error("option color type:"+t.colorType+" is not supported at present");if(8!==t.bitDepth)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};l.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},l.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},l.prototype.filterData=function(t,e,r){var i=o(t,e,r,this._options),s=n.COLORTYPE_TO_BPP_MAP[this._options.colorType];return a(i,e,r,this._options,s)},l.prototype._packChunk=function(t,e){var n=e?e.length:0,o=new r(n+12);return o.writeUInt32BE(n,0),o.writeUInt32BE(t,4),e&&e.copy(o,8),o.writeInt32BE(i.crc32(o.slice(4,o.length-4)),o.length-4),o},l.prototype.packGAMA=function(t){var e=new r(4);return e.writeUInt32BE(Math.floor(t*n.GAMMA_DIVISION),0),this._packChunk(n.TYPE_gAMA,e)},l.prototype.packIHDR=function(t,e){var i=new r(13);return i.writeUInt32BE(t,0),i.writeUInt32BE(e,4),i[8]=this._options.bitDepth,i[9]=this._options.colorType,i[10]=0,i[11]=0,i[12]=0,this._packChunk(n.TYPE_IHDR,i)},l.prototype.packIDAT=function(t){return this._packChunk(n.TYPE_IDAT,t)},l.prototype.packIEND=function(){return this._packChunk(n.TYPE_IEND,null)}}).call(this,t("buffer").Buffer)},{"./bitpacker":98,"./constants":100,"./crc":101,"./filter-pack":102,buffer:48,zlib:46}],111:[function(t,e,r){"use strict";e.exports=function(t,e,r){var n=t+e-r,i=Math.abs(n-t),o=Math.abs(n-e),a=Math.abs(n-r);return i<=o&&i<=a?t:o<=a?e:r}},{}],112:[function(t,e,r){"use strict";var n=t("util"),i=t("zlib"),o=t("./chunkstream"),a=t("./filter-parse-async"),s=t("./parser"),l=t("./bitmapper"),u=t("./format-normaliser"),c=e.exports=function(t){o.call(this),this._parser=new s(t,{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=t,this.writable=!0,this._parser.start()};n.inherits(c,o),c.prototype._handleError=function(t){this.emit("error",t),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this.errord=!0},c.prototype._inflateData=function(t){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(t)},c.prototype._handleMetaData=function(t){this.emit("metadata",t),this._bitmapInfo=Object.create(t),this._filter=new a(this._bitmapInfo)},c.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t},c.prototype._handlePalette=function(t){this._bitmapInfo.palette=t},c.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"),this.destroySoon())},c.prototype._complete=function(t){if(!this.errord){try{var e=l.dataToBitMap(t,this._bitmapInfo),r=u(e,this._bitmapInfo);e=null}catch(t){return void this._handleError(t)}this.emit("parsed",r)}}},{"./bitmapper":97,"./chunkstream":99,"./filter-parse-async":103,"./format-normaliser":106,"./parser":114,util:180,zlib:46}],113:[function(t,e,r){(function(r){"use strict";var n=!0,i=t("zlib");i.deflateSync||(n=!1);var o=t("./sync-reader"),a=t("./filter-parse-sync"),s=t("./parser"),l=t("./bitmapper"),u=t("./format-normaliser");e.exports=function(t,e){if(!n)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 c,f,h;var p=[];var d=new o(t);if(new s(e,{read:d.read.bind(d),error:function(t){c=t},metadata:function(t){f=t},gamma:function(t){h=t},palette:function(t){f.palette=t},transColor:function(t){f.transColor=t},inflateData:function(t){p.push(t)}}).start(),d.process(),c)throw c;var g=r.concat(p);p.length=0;var m=i.inflateSync(g);if(g=null,!m||!m.length)throw new Error("bad png - invalid inflate data response");var v=a.process(m,f);g=null;var _=l.dataToBitMap(v,f);v=null;var y=u(_,f);return f.data=y,f.gamma=h||0,f}}).call(this,t("buffer").Buffer)},{"./bitmapper":97,"./filter-parse-sync":104,"./format-normaliser":106,"./parser":114,"./sync-reader":117,buffer:48,zlib:46}],114:[function(t,e,r){(function(r){"use strict";var n=t("./constants"),i=t("./crc"),o=e.exports=function(t,e){this._options=t,t.checkCRC=!1!==t.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[n.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[n.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[n.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[n.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[n.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[n.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.inflateData=e.inflateData,this.finished=e.finished};o.prototype.start=function(){this.read(n.PNG_SIGNATURE.length,this._parseSignature.bind(this))},o.prototype._parseSignature=function(t){for(var e=n.PNG_SIGNATURE,r=0;rthis._palette.length)return void this.error(new Error("More transparent colors than palette size"));for(var e=0;e0?this._handleIDAT(r):this._handleChunkEnd()},o.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))},o.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}}).call(this,t("buffer").Buffer)},{"./constants":100,"./crc":101,buffer:48}],115:[function(t,e,r){"use strict";var n=t("./parser-sync"),i=t("./packer-sync");r.read=function(t,e){return n(t,e||{})},r.write=function(t){return i(t)}},{"./packer-sync":109,"./parser-sync":113}],116:[function(t,e,r){(function(e,n){"use strict";var i=t("util"),o=t("stream"),a=t("./parser-async"),s=t("./packer-async"),l=t("./png-sync"),u=r.PNG=function(t){o.call(this),t=t||{},this.width=t.width||0,this.height=t.height||0,this.data=this.width>0&&this.height>0?new n(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new a(t),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(t){this.data=t,this.emit("parsed",t)}.bind(this)),this._packer=new s(t),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(u,o),u.sync=l,u.prototype.pack=function(){return this.data&&this.data.length?(e.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this):(this.emit("error","No data provided"),this)},u.prototype.parse=function(t,e){var r,n;e&&(r=function(t){this.removeListener("error",n),this.data=t,e(null,this)}.bind(this),n=function(t){this.removeListener("parsed",r),e(t,null)}.bind(this),this.once("parsed",r),this.once("error",n));return this.end(t),this},u.prototype.write=function(t){return this._parser.write(t),!0},u.prototype.end=function(t){this._parser.end(t)},u.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)},u.prototype._gamma=function(t){this.gamma=t},u.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},u.bitblt=function(t,e,r,n,i,o,a,s){if(r>t.width||n>t.height||r+i>t.width||n+o>t.height)throw new Error("bitblt reading outside image");if(a>e.width||s>e.height||a+i>e.width||s+o>e.height)throw new Error("bitblt writing outside image");for(var l=0;l0&&this._buffer.length;){var t=this._reads[0];if(!this._buffer.length||!(this._buffer.length>=t.length||t.allowLess))break;this._reads.shift();var e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.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}},{}],118:[function(t,e,r){var n,i,o=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function l(t){if(n===setTimeout)return setTimeout(t,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(t){n=a}try{i="function"==typeof clearTimeout?clearTimeout:s}catch(t){i=s}}();var u,c=[],f=!1,h=-1;function p(){f&&u&&(f=!1,u.length?c=u.concat(c):h=-1,c.length&&d())}function d(){if(!f){var t=l(p);f=!0;for(var e=c.length;e;){for(u=c,c=[];++h1)for(var r=1;r>>7-t%8&1)},put:function(t,e){for(var r=0;r>>e-r-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},e.exports=n},{}],124:[function(t,e,r){var n=t("../utils/buffer");function i(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new n(t*t),this.data.fill(0),this.reservedBit=new n(t*t),this.reservedBit.fill(0)}i.prototype.set=function(t,e,r,n){var i=t*this.size+e;this.data[i]=r,n&&(this.reservedBit[i]=!0)},i.prototype.get=function(t,e){return this.data[t*this.size+e]},i.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r},i.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]},e.exports=i},{"../utils/buffer":146}],125:[function(t,e,r){var n=t("../utils/buffer"),i=t("./mode");function o(t){this.mode=i.BYTE,this.data=new n(t)}o.getBitsLength=function(t){return 8*t},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(t){for(var e=0,r=this.data.length;e=0&&t.bit<4},r.from=function(t,e){if(r.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return r.L;case"m":case"medium":return r.M;case"q":case"quartile":return r.Q;case"h":case"high":return r.H;default:throw new Error("Unknown EC Level: "+t)}}(t)}catch(t){return e}}},{}],128:[function(t,e,r){var n=t("./utils").getSymbolSize;r.getPositions=function(t){var e=n(t);return[[0,0],[e-7,0],[0,e-7]]}},{"./utils":140}],129:[function(t,e,r){var n=t("./utils"),i=n.getBCHDigit(1335);r.getEncodedBits=function(t,e){for(var r=t.bit<<3|e,o=r<<10;n.getBCHDigit(o)-i>=0;)o^=1335<=33088&&r<=40956)r-=33088;else{if(!(r>=57408&&r<=60351))throw new Error("Invalid SJIS character: "+this.data[e]+"\nMake sure your charset is UTF-8");r-=49472}r=192*(r>>>8&255)+(255&r),t.put(r,13)}},e.exports=o},{"./mode":133,"./utils":140}],132:[function(t,e,r){r.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var n=3,i=3,o=40,a=10;function s(t,e,n){switch(t){case r.Patterns.PATTERN000:return(e+n)%2==0;case r.Patterns.PATTERN001:return e%2==0;case r.Patterns.PATTERN010:return n%3==0;case r.Patterns.PATTERN011:return(e+n)%3==0;case r.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(n/3))%2==0;case r.Patterns.PATTERN101:return e*n%2+e*n%3==0;case r.Patterns.PATTERN110:return(e*n%2+e*n%3)%2==0;case r.Patterns.PATTERN111:return(e*n%3+(e+n)%2)%2==0;default:throw new Error("bad maskPattern:"+t)}}r.isValid=function(t){return null!=t&&""!==t&&!isNaN(t)&&t>=0&&t<=7},r.from=function(t){return r.isValid(t)?parseInt(t,10):void 0},r.getPenaltyN1=function(t){for(var e=t.size,r=0,i=0,o=0,a=null,s=null,l=0;l=5&&(r+=n+(i-5)),a=c,i=1),(c=t.get(u,l))===s?o++:(o>=5&&(r+=n+(o-5)),s=c,o=1)}i>=5&&(r+=n+(i-5)),o>=5&&(r+=n+(o-5))}return r},r.getPenaltyN2=function(t){for(var e=t.size,r=0,n=0;n=10&&(1488===n||93===n)&&r++,i=i<<1&2047|t.get(s,a),s>=10&&(1488===i||93===i)&&r++}return r*o},r.getPenaltyN4=function(t){for(var e=0,r=t.data.length,n=0;n=1&&e<10?t.ccBits[0]:e<27?t.ccBits[1]:t.ccBits[2]},r.getBestModeForData=function(t){return i.testNumeric(t)?r.NUMERIC:i.testAlphanumeric(t)?r.ALPHANUMERIC:i.testKanji(t)?r.KANJI:r.BYTE},r.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")},r.isValid=function(t){return t&&t.bit&&t.ccBits},r.from=function(t,e){if(r.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return r.NUMERIC;case"alphanumeric":return r.ALPHANUMERIC;case"kanji":return r.KANJI;case"byte":return r.BYTE;default:throw new Error("Unknown mode: "+t)}}(t)}catch(t){return e}}},{"./regex":138,"./version-check":141}],134:[function(t,e,r){var n=t("./mode");function i(t){this.mode=n.NUMERIC,this.data=t.toString()}i.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){var e,r,n;for(e=0;e+3<=this.data.length;e+=3)r=this.data.substr(e,3),n=parseInt(r,10),t.put(n,10);var i=this.data.length-e;i>0&&(r=this.data.substr(e),n=parseInt(r,10),t.put(n,3*i+1))},e.exports=i},{"./mode":133}],135:[function(t,e,r){var n=t("../utils/buffer"),i=t("./galois-field");r.mul=function(t,e){var r=new n(t.length+e.length-1);r.fill(0);for(var o=0;o=0;){for(var o=r[0],a=0;a>n&1),n<6?t.set(n,8,i,!0):n<8?t.set(n+1,8,i,!0):t.set(o-15+n,8,i,!0),n<8?t.set(8,o-n-1,i,!0):n<9?t.set(8,15-n-1+1,i,!0):t.set(8,15-n-1,i,!0);t.set(o-8,8,1,!0)}function y(t,e,r){var o=new a;r.forEach(function(e){o.put(e.mode.bit,4),o.put(e.getLength(),g.getCharCountIndicator(e.mode,t)),e.write(o)});var s=8*(i.getSymbolTotalCodewords(t)-f.getTotalCodewordsCount(t,e));for(o.getLengthInBits()+4<=s&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(0);for(var l=(s-o.getLengthInBits())/8,u=0;u=0&&s<=6&&(0===l||6===l)||l>=0&&l<=6&&(0===s||6===s)||s>=2&&s<=4&&l>=2&&l<=4?t.set(o+s,a+l,!0,!0):t.set(o+s,a+l,!1,!0))}(b,e),function(t){for(var e=t.size,r=8;r=7&&function(t,e){for(var r,n,i,o=t.size,a=p.getEncodedBits(e),s=0;s<18;s++)r=Math.floor(s/3),n=s%3+o-8-3,i=1==(a>>s&1),t.set(r,n,i,!0),t.set(n,r,i,!0)}(b,e),function(t,e){for(var r=t.size,n=-1,i=r-1,o=7,a=0,s=r-1;s>0;s-=2)for(6===s&&s--;;){for(var l=0;l<2;l++)if(!t.isReserved(i,s-l)){var u=!1;a>>o&1)),t.set(i,s-l,u),-1==--o&&(a++,o=7)}if((i+=n)<0||r<=i){i-=n,n=-n;break}}}(b,d),isNaN(n)&&(n=c.getBestMask(b,_.bind(null,b,r))),c.applyMask(n,b),_(b,r,n),{modules:b,version:e,errorCorrectionLevel:r,maskPattern:n,segments:o}}r.create=function(t,e){if(void 0===t||""===t)throw new Error("No input text");var r,n,a=o.M;return void 0!==e&&(a=o.from(e.errorCorrectionLevel,o.M),r=p.from(e.version),n=c.from(e.maskPattern),e.toSJISFunc&&i.setToSJISFunction(e.toSJISFunc)),b(t,r,a,n)}},{"../utils/buffer":146,"./alignment-pattern":121,"./bit-buffer":123,"./bit-matrix":124,"./error-correction-code":126,"./error-correction-level":127,"./finder-pattern":128,"./format-info":129,"./mask-pattern":132,"./mode":133,"./reed-solomon-encoder":137,"./segments":139,"./utils":140,"./version":142,isarray:147}],137:[function(t,e,r){var n=t("../utils/buffer"),i=t("./polynomial");function o(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}o.prototype.initialize=function(t){this.degree=t,this.genPoly=i.generateECPolynomial(this.degree)},o.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");var e=new n(this.degree);e.fill(0);var r=n.concat([t,e],t.length+this.degree),o=i.mod(r,this.genPoly),a=this.degree-o.length;if(a>0){var s=new n(this.degree);return s.fill(0),o.copy(s,a),s}return o},e.exports=o},{"../utils/buffer":146,"./polynomial":135}],138:[function(t,e,r){var n="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",i="(?:(?![A-Z0-9 $%*+\\-./:]|"+(n=n.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";r.KANJI=new RegExp(n,"g"),r.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),r.BYTE=new RegExp(i,"g"),r.NUMERIC=new RegExp("[0-9]+","g"),r.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");var o=new RegExp("^"+n+"$"),a=new RegExp("^[0-9]+$"),s=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");r.testKanji=function(t){return o.test(t)},r.testNumeric=function(t){return a.test(t)},r.testAlphanumeric=function(t){return s.test(t)}},{}],139:[function(t,e,r){var n=t("./mode"),i=t("./numeric-data"),o=t("./alphanumeric-data"),a=t("./byte-data"),s=t("./kanji-data"),l=t("./regex"),u=t("./utils"),c=t("dijkstrajs");function f(t){return unescape(encodeURIComponent(t)).length}function h(t,e,r){for(var n,i=[];null!==(n=t.exec(r));)i.push({data:n[0],index:n.index,mode:e,length:n[0].length});return i}function p(t){var e,r,i=h(l.NUMERIC,n.NUMERIC,t),o=h(l.ALPHANUMERIC,n.ALPHANUMERIC,t);return u.isKanjiModeEnabled()?(e=h(l.BYTE,n.BYTE,t),r=h(l.KANJI,n.KANJI,t)):(e=h(l.BYTE_KANJI,n.BYTE,t),r=[]),i.concat(o,e,r).sort(function(t,e){return t.index-e.index}).map(function(t){return{data:t.data,mode:t.mode,length:t.length}})}function d(t,e){switch(e){case n.NUMERIC:return i.getBitsLength(t);case n.ALPHANUMERIC:return o.getBitsLength(t);case n.KANJI:return s.getBitsLength(t);case n.BYTE:return a.getBitsLength(t)}}function g(t,e){var r,l=n.getBestModeForData(t);if((r=n.from(e,l))!==n.BYTE&&r.bit=0?t[t.length-1]:null;return r&&r.mode===e.mode?(t[t.length-1].data+=e.data,t):(t.push(e),t)},[])}(a))},r.rawSplit=function(t){return r.fromArray(p(t,u.isKanjiModeEnabled()))}},{"./alphanumeric-data":122,"./byte-data":125,"./kanji-data":131,"./mode":133,"./numeric-data":134,"./regex":138,"./utils":140,dijkstrajs:20}],140:[function(t,e,r){var n,i=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];r.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return 4*t+17},r.getSymbolTotalCodewords=function(t){return i[t]},r.getBCHDigit=function(t){for(var e=0;0!==t;)e++,t>>>=1;return e},r.setToSJISFunction=function(t){if("function"!=typeof t)throw new Error('"toSJISFunc" is not a valid function.');n=t},r.isKanjiModeEnabled=function(){return void 0!==n},r.toSJIS=function(t){return n(t)}},{}],141:[function(t,e,r){r.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}},{}],142:[function(t,e,r){var n=t("./utils"),i=t("./error-correction-code"),o=t("./error-correction-level"),a=t("./mode"),s=t("./version-check"),l=t("isarray"),u=n.getBCHDigit(7973);function c(t,e){return a.getCharCountIndicator(t,e)+4}function f(t,e){var r=0;return t.forEach(function(t){var n=c(t.mode,e);r+=n+t.getBitsLength()}),r}r.from=function(t,e){return s.isValid(t)?parseInt(t,10):e},r.getCapacity=function(t,e,r){if(!s.isValid(t))throw new Error("Invalid QR Code version");void 0===r&&(r=a.BYTE);var o=8*(n.getSymbolTotalCodewords(t)-i.getTotalCodewordsCount(t,e));if(r===a.MIXED)return o;var l=o-c(r,t);switch(r){case a.NUMERIC:return Math.floor(l/10*3);case a.ALPHANUMERIC:return Math.floor(l/11*2);case a.KANJI:return Math.floor(l/13);case a.BYTE:default:return Math.floor(l/8)}},r.getBestVersionForData=function(t,e){var n,i=o.from(e,o.M);if(l(t)){if(t.length>1)return function(t,e){for(var n=1;n<=40;n++)if(f(t,n)<=r.getCapacity(n,e,a.MIXED))return n}(t,i);if(0===t.length)return 1;n=t[0]}else n=t;return function(t,e,n){for(var i=1;i<=40;i++)if(e<=r.getCapacity(i,n,t))return i}(n.mode,n.getLength(),i)},r.getEncodedBits=function(t){if(!s.isValid(t)||t<7)throw new Error("Invalid QR Code version");for(var e=t<<12;n.getBCHDigit(e)-u>=0;)e^=7973<':"",f="0&&u>0&&t[l-1]||(n+=a?o("M",u+r,.5+c+r):o("m",i,0),i=0,a=!1),u+1',h='viewBox="0 0 '+u+" "+u+'"',p=''+c+f+"\n";return"function"==typeof r&&r(null,p),p}},{"./utils":145}],145:[function(t,e,r){function n(t){if("string"!=typeof t)throw new Error("Color should be defined as hex string");var e=t.slice().replace("#","").split("");if(e.length<3||5===e.length||e.length>8)throw new Error("Invalid hex color: "+t);3!==e.length&&4!==e.length||(e=Array.prototype.concat.apply([],e.map(function(t){return[t,t]}))),6===e.length&&e.push("F","F");var r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:255&r,hex:"#"+e.slice(0,6).join("")}}r.getOptions=function(t){t||(t={}),t.color||(t.color={});var e=void 0===t.margin||null===t.margin||t.margin<0?4:t.margin,r=t.width&&t.width>=21?t.width:void 0,i=t.scale||4;return{width:r,scale:r?4:i,margin:e,color:{dark:n(t.color.dark||"#000000ff"),light:n(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},r.getScale=function(t,e){return e.width&&e.width>=t+2*e.margin?e.width/(t+2*e.margin):e.scale},r.getImageWidth=function(t,e){var n=r.getScale(t,e);return Math.floor((t+2*e.margin)*n)},r.qrToImageData=function(t,e,n){for(var i=e.modules.size,o=e.modules.data,a=r.getScale(i,n),s=Math.floor((i+2*n.margin)*a),l=n.margin*a,u=[n.color.light,n.color.dark],c=0;c=l&&f>=l&&c=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return 0|t}function s(t,e){var r;return o.TYPED_ARRAY_SUPPORT?(r=new Uint8Array(e)).__proto__=o.prototype:(null===(r=t)&&(r=new o(e)),r.length=e),r}function l(t,e){var r=s(t,e<0?0:0|a(e));if(!o.TYPED_ARRAY_SUPPORT)for(var n=0;n55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function f(t){return o.isBuffer(t)?t.length:"undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer)?t.byteLength:("string"!=typeof t&&(t=""+t),0===t.length?0:c(t).length)}o.TYPED_ARRAY_SUPPORT&&(o.prototype.__proto__=Uint8Array.prototype,o.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&o[Symbol.species]===o&&Object.defineProperty(o,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1})),o.prototype.write=function(t,e,r){void 0===e?(r=this.length,e=0):void 0===r&&"string"==typeof e?(r=this.length,e=0):isFinite(e)&&(e|=0,isFinite(r)?r|=0:r=void 0);var n=this.length-e;if((void 0===r||r>n)&&(r=n),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");return function(t,e,r,n){return function(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}(c(e,t.length-r),t,r,n)}(this,t,e,r)},o.prototype.slice=function(t,e){var r,n=this.length;if(t=~~t,e=void 0===e?n:~~e,t<0?(t+=n)<0&&(t=0):t>n&&(t=n),e<0?(e+=n)<0&&(e=0):e>n&&(e=n),e=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(a<1e3||!o.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(i=e;i0?("string"==typeof e||a.objectMode||Object.getPrototypeOf(e)===u.prototype||(e=function(t){return u.from(t)}(e)),n?a.endEmitted?t.emit("error",new Error("stream.unshift() after end event")):w(t,a,e,!0):a.ended?t.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!r?(e=a.decoder.write(e),a.objectMode||0!==e.length?w(t,a,e,!1):E(t,a)):w(t,a,e,!1))):n||(a.reading=!1));return function(t){return!t.ended&&(t.needReadable||t.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=k?t=k:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function B(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(p("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?i.nextTick(C,t):C(t))}function C(t){p("emit readable"),t.emit("readable"),T(t)}function E(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(P,t,e))}function P(t,e){for(var r=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):r=function(t,e,r){var n;to.length?o.length:t;if(a===o.length?i+=o:i+=o.slice(0,t),0===(t-=a)){a===o.length?(++n,r.next?e.head=r.next:e.head=e.tail=null):(e.head=r,r.data=o.slice(a));break}++n}return e.length-=n,i}(t,e):function(t,e){var r=u.allocUnsafe(t),n=e.head,i=1;n.data.copy(r),t-=n.data.length;for(;n=n.next;){var o=n.data,a=t>o.length?o.length:t;if(o.copy(r,r.length-t,0,a),0===(t-=a)){a===o.length?(++i,n.next?e.head=n.next:e.head=e.tail=null):(e.head=n,n.data=o.slice(a));break}++i}return e.length-=i,r}(t,e);return n}(t,e.buffer,e.decoder),r);var r}function A(t){var e=t._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,i.nextTick(I,e,t))}function I(t,e){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}function R(t,e){for(var r=0,n=t.length;r=e.highWaterMark||e.ended))return p("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?A(this):B(this),null;if(0===(t=x(t,e))&&e.ended)return 0===e.length&&A(this),null;var n,i=e.needReadable;return p("need readable",i),(0===e.length||e.length-t0?M(t,e):null)?(e.needReadable=!0,t=0):e.length-=t,0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&A(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(t){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(t,e){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=t;break;case 1:o.pipes=[o.pipes,t];break;default:o.pipes.push(t)}o.pipesCount+=1,p("pipe count=%d opts=%j",o.pipesCount,e);var l=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?c:y;function u(e,r){p("onunpipe"),e===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),t.removeListener("close",v),t.removeListener("finish",_),t.removeListener("drain",f),t.removeListener("error",m),t.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",y),n.removeListener("data",g),h=!0,!o.awaitDrain||t._writableState&&!t._writableState.needDrain||f())}function c(){p("onend"),t.end()}o.endEmitted?i.nextTick(l):n.once("end",l),t.on("unpipe",u);var f=function(t){return function(){var e=t._readableState;p("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,T(t))}}(n);t.on("drain",f);var h=!1;var d=!1;function g(e){p("ondata"),d=!1,!1!==t.write(e)||d||((1===o.pipesCount&&o.pipes===t||o.pipesCount>1&&-1!==R(o.pipes,t))&&!h&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,d=!0),n.pause())}function m(e){p("onerror",e),y(),t.removeListener("error",m),0===s(t,"error")&&t.emit("error",e)}function v(){t.removeListener("finish",_),y()}function _(){p("onfinish"),t.removeListener("close",v),y()}function y(){p("unpipe"),n.unpipe(t)}return n.on("data",g),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?a(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",m),t.once("close",v),t.once("finish",_),t.emit("pipe",n),o.flowing||(p("pipe resume"),n.resume()),t},y.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r),this);if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o-1?i:o.nextTick;_.WritableState=v;var u=t("core-util-is");u.inherits=t("inherits");var c={deprecate:t("util-deprecate")},f=t("./internal/streams/stream"),h=t("safe-buffer").Buffer,p=n.Uint8Array||function(){};var d,g=t("./internal/streams/destroy");function m(){}function v(e,r){s=s||t("./_stream_duplex"),e=e||{};var n=r instanceof s;this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,u=e.writableHighWaterMark,c=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(u||0===u)?u:c,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var r=t._writableState,n=r.sync,i=r.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(r),e)!function(t,e,r,n,i){--e.pendingcb,r?(o.nextTick(i,n),o.nextTick(B,t,e),t._writableState.errorEmitted=!0,t.emit("error",n)):(i(n),t._writableState.errorEmitted=!0,t.emit("error",n),B(t,e))}(t,r,n,e,i);else{var a=k(r);a||r.corked||r.bufferProcessing||!r.bufferedRequest||w(t,r),n?l(b,t,r,a,i):b(t,r,a,i)}}(r,t)},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 a(this)}function _(e){if(s=s||t("./_stream_duplex"),!(d.call(_,this)||this instanceof s))return new _(e);this._writableState=new v(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function y(t,e,r,n,i,o,a){e.writelen=n,e.writecb=a,e.writing=!0,e.sync=!0,r?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function b(t,e,r,n){r||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,n(),B(t,e)}function w(t,e){e.bufferProcessing=!0;var r=e.bufferedRequest;if(t._writev&&r&&r.next){var n=e.bufferedRequestCount,i=new Array(n),o=e.corkedRequestsFree;o.entry=r;for(var s=0,l=!0;r;)i[s]=r,r.isBuf||(l=!1),r=r.next,s+=1;i.allBuffers=l,y(t,e,!0,e.length,i,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new a(e),e.bufferedRequestCount=0}else{for(;r;){var u=r.chunk,c=r.encoding,f=r.callback;if(y(t,e,!1,e.objectMode?1:u.length,u,c,f),r=r.next,e.bufferedRequestCount--,e.writing)break}null===r&&(e.lastBufferedRequest=null)}e.bufferedRequest=r,e.bufferProcessing=!1}function k(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function x(t,e){t._final(function(r){e.pendingcb--,r&&t.emit("error",r),e.prefinished=!0,t.emit("prefinish"),B(t,e)})}function B(t,e){var r=k(e);return r&&(!function(t,e){e.prefinished||e.finalCalled||("function"==typeof t._final?(e.pendingcb++,e.finalCalled=!0,o.nextTick(x,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),r}u.inherits(_,f),v.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(v.prototype,"buffer",{get:c.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(t){return!!d.call(this,t)||this===_&&(t&&t._writableState instanceof v)}})):d=function(t){return t instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(t,e,r){var n,i=this._writableState,a=!1,s=!i.objectMode&&(n=t,h.isBuffer(n)||n instanceof p);return s&&!h.isBuffer(t)&&(t=function(t){return h.from(t)}(t)),"function"==typeof e&&(r=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),"function"!=typeof r&&(r=m),i.ended?function(t,e){var r=new Error("write after end");t.emit("error",r),o.nextTick(e,r)}(this,r):(s||function(t,e,r,n){var i=!0,a=!1;return null===r?a=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||e.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(t.emit("error",a),o.nextTick(n,a),i=!1),i}(this,i,t,r))&&(i.pendingcb++,a=function(t,e,r,n,i,o){if(!r){var a=function(t,e,r){t.objectMode||!1===t.decodeStrings||"string"!=typeof e||(e=h.from(e,r));return e}(e,n,i);n!==a&&(r=!0,i="buffer",n=a)}var s=e.objectMode?1:n.length;e.length+=s;var l=e.length-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(t,e,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(t,e,r){var n=this._writableState;"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!==t&&void 0!==t&&this.write(t,e),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(t,e,r){e.ending=!0,B(t,e),r&&(e.finished?o.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,n,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),_.prototype.destroy=g.destroy,_.prototype._undestroy=g.undestroy,_.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},t("timers").setImmediate)},{"./_stream_duplex":149,"./internal/streams/destroy":155,"./internal/streams/stream":156,_process:118,"core-util-is":14,inherits:71,"process-nextick-args":158,"safe-buffer":164,timers:172,"util-deprecate":178}],154:[function(t,e,r){"use strict";var n=t("safe-buffer").Buffer,i=t("util");e.exports=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.head=null,this.tail=null,this.length=0}return t.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r},t.prototype.concat=function(t){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var e,r,i,o=n.allocUnsafe(t>>>0),a=this.head,s=0;a;)e=a.data,r=o,i=s,e.copy(r,i),s+=a.data.length,a=a.next;return o},t}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var t=i.inspect({length:this.length});return this.constructor.name+" "+t})},{"safe-buffer":164,util:4}],155:[function(t,e,r){"use strict";var n=t("process-nextick-args");function i(t,e){t.emit("error",e)}e.exports={destroy:function(t,e){var r=this,o=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return o||a?(e?e(t):!t||this._writableState&&this._writableState.errorEmitted||n.nextTick(i,this,t),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(t){!e&&t?(n.nextTick(i,r,t),r._writableState&&(r._writableState.errorEmitted=!0)):e&&e(t)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},{"process-nextick-args":158}],156:[function(t,e,r){e.exports=t("events").EventEmitter},{events:49}],157:[function(t,e,r){arguments[4][147][0].apply(r,arguments)},{dup:147}],158:[function(t,e,r){(function(t){"use strict";!t.version||0===t.version.indexOf("v0.")||0===t.version.indexOf("v1.")&&0!==t.version.indexOf("v1.8.")?e.exports={nextTick:function(e,r,n,i){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var o,a,s=arguments.length;switch(s){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick(function(){e.call(null,r)});case 3:return t.nextTick(function(){e.call(null,r,n)});case 4:return t.nextTick(function(){e.call(null,r,n,i)});default:for(o=new Array(s-1),a=0;a>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function u(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function c(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function f(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function h(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}r.StringDecoder=o,o.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(t.lastNeed=i-1),i;if(--n=0)return i>0&&(t.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:t.lastNeed=i-3),i;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)},o.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},{"safe-buffer":164}],160:[function(t,e,r){e.exports=t("./readable").PassThrough},{"./readable":161}],161:[function(t,e,r){(r=e.exports=t("./lib/_stream_readable.js")).Stream=r,r.Readable=r,r.Writable=t("./lib/_stream_writable.js"),r.Duplex=t("./lib/_stream_duplex.js"),r.Transform=t("./lib/_stream_transform.js"),r.PassThrough=t("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":149,"./lib/_stream_passthrough.js":150,"./lib/_stream_readable.js":151,"./lib/_stream_transform.js":152,"./lib/_stream_writable.js":153}],162:[function(t,e,r){e.exports=t("./readable").Transform},{"./readable":161}],163:[function(t,e,r){e.exports=t("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":153}],164:[function(t,e,r){var n=t("buffer"),i=n.Buffer;function o(t,e){for(var r in t)e[r]=t[r]}function a(t,e,r){return i(t,e,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(o(n,r),r.Buffer=a),o(i,a),a.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return i(t,e,r)},a.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var n=i(t);return void 0!==e?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n},a.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n.SlowBuffer(t)}},{buffer:48}],165:[function(t,e,r){arguments[4][68][0].apply(r,arguments)},{"./lib/decoder":166,"./lib/encoder":167,dup:68}],166:[function(t,e,r){(function(t){var r=function(){"use strict";var t=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]),e=4017,r=799,n=3406,i=2276,o=1567,a=3784,s=5793,l=2896;function u(){}function c(t,e){for(var r,n,i=0,o=[],a=16;a>0&&!t[a-1];)a--;o.push({children:[],index:0});var s,l=o[0];for(r=0;r0;)l=o.pop();for(l.index++,o.push(l);o.length<=r;)o.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s;i++}r+10)return p>>--d&1;if(255==(p=e[r++])){var t=e[r++];if(t)throw"unexpected marker: "+(p<<8|t).toString(16)}return d=7,p>>>7}function m(t){for(var e,r=t;null!==(e=g());){if("number"==typeof(r=r[e]))return r;if("object"!=typeof r)throw"invalid huffman sequence"}return null}function v(t){for(var e=0;t>0;){var r=g();if(null===r)return;e=e<<1|r,t--}return e}function _(t){var e=v(t);return e>=1<0)y--;else for(var n=a,i=s;n<=i;){var o=m(e.huffmanTableAC),l=15&o,c=o>>4;if(0!==l)r[t[n+=c]]=_(l)*(1<>4,0===f)o<15?(y=v(o)+(1<>4;if(0!==s)r[t[o+=l]]=_(s),o++;else{if(l<15)break;o+=16}}};var M,A,I,R,L=0;for(A=1==T?i[0].blocksPerLine*i[0].blocksPerColumn:c*n.mcusPerColumn,o||(o=A);L=65488&&M<=65495))break;r+=2}return r-h}function h(t,u){var c,f,h=[],p=u.blocksPerLine,d=u.blocksPerColumn,g=p<<3,m=new Int32Array(64),v=new Uint8Array(64);function _(t,c,f){var h,p,d,g,m,v,_,y,b,w,k=u.quantizationTable,x=f;for(w=0;w<64;w++)x[w]=t[w]*k[w];for(w=0;w<8;++w){var B=8*w;0!=x[1+B]||0!=x[2+B]||0!=x[3+B]||0!=x[4+B]||0!=x[5+B]||0!=x[6+B]||0!=x[7+B]?(h=s*x[0+B]+128>>8,p=s*x[4+B]+128>>8,d=x[2+B],g=x[6+B],m=l*(x[1+B]-x[7+B])+128>>8,y=l*(x[1+B]+x[7+B])+128>>8,v=x[3+B]<<4,_=x[5+B]<<4,b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+g*o+128>>8,d=d*o-g*a+128>>8,g=b,b=m-_+1>>1,m=m+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=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=m*i+y*n+2048>>12,m=m*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+B]=h+y,x[7+B]=h-y,x[1+B]=p+_,x[6+B]=p-_,x[2+B]=d+v,x[5+B]=d-v,x[3+B]=g+m,x[4+B]=g-m):(b=s*x[0+B]+512>>10,x[0+B]=b,x[1+B]=b,x[2+B]=b,x[3+B]=b,x[4+B]=b,x[5+B]=b,x[6+B]=b,x[7+B]=b)}for(w=0;w<8;++w){var C=w;0!=x[8+C]||0!=x[16+C]||0!=x[24+C]||0!=x[32+C]||0!=x[40+C]||0!=x[48+C]||0!=x[56+C]?(h=s*x[0+C]+2048>>12,p=s*x[32+C]+2048>>12,d=x[16+C],g=x[48+C],m=l*(x[8+C]-x[56+C])+2048>>12,y=l*(x[8+C]+x[56+C])+2048>>12,v=x[24+C],_=x[40+C],b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+g*o+2048>>12,d=d*o-g*a+2048>>12,g=b,b=m-_+1>>1,m=m+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=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=m*i+y*n+2048>>12,m=m*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+C]=h+y,x[56+C]=h-y,x[8+C]=p+_,x[48+C]=p-_,x[16+C]=d+v,x[40+C]=d-v,x[24+C]=g+m,x[32+C]=g-m):(b=s*f[w+0]+8192>>14,x[0+C]=b,x[8+C]=b,x[16+C]=b,x[24+C]=b,x[32+C]=b,x[40+C]=b,x[48+C]=b,x[56+C]=b)}for(w=0;w<64;++w){var E=128+(x[w]+8>>4);c[w]=E<0?0:E>255?255:E}}for(var y=0;y255?255:t}return u.prototype={load:function(t){var e=new XMLHttpRequest;e.open("GET",t,!0),e.responseType="arraybuffer",e.onload=function(){var t=new Uint8Array(e.response||e.mozResponseArrayBuffer);this.parse(t),this.onload&&this.onload()}.bind(this),e.send(null)},parse:function(e){var r=0;e.length;function n(){var t=e[r]<<8|e[r+1];return r+=2,t}function i(){var t=n(),i=e.subarray(r,r+t-2);return r+=i.length,i}function o(t){var e,r,n=0,i=0;for(r in t.components)t.components.hasOwnProperty(r)&&(n<(e=t.components[r]).h&&(n=e.h),i>4==0)for(_=0;_<64;_++){k[t[_]]=e[r++]}else{if(w>>4!=1)throw"DQT: invalid table spec";for(_=0;_<64;_++){k[t[_]]=n()}}p[15&w]=k}break;case 65472:case 65473:case 65474:n(),(a={}).extended=65473===v,a.progressive=65474===v,a.precision=e[r++],a.scanLines=n(),a.samplesPerLine=n(),a.components={},a.componentsOrder=[];var x,B=e[r++];for(U=0;U>4,E=15&e[r+1],P=e[r+2];a.componentsOrder.push(x),a.components[x]={h:C,v:E,quantizationTable:p[P]},r+=3}o(a),d.push(a);break;case 65476:var j=n();for(U=2;U>4==0?m:g)[15&S]=c(T,A)}break;case 65501:n(),s=n();break;case 65498:n();var I=e[r++],R=[];for(U=0;U>4],z.huffmanTableAC=g[15&L],R.push(z)}var F=e[r++],O=e[r++],D=e[r++],N=f(e,r,a,R,s,F,O,D>>4,15&D);r+=N;break;default:if(255==e[r-3]&&e[r-2]>=192&&e[r-2]<=254){r-=3;break}throw"unknown JPEG marker "+v.toString(16)}v=n()}if(1!=d.length)throw"only single frame JPEGs supported";this.width=a.samplesPerLine,this.height=a.scanLines,this.jfif=l,this.adobe=u,this.components=[];for(var U=0;U=this.charLength-this.charReceived?this.charLength-this.charReceived:t.length;if(t.copy(this.charBuffer,this.charReceived,0,r),this.charReceived+=r,this.charReceived=55296&&i<=56319)){if(this.charReceived=this.charLength=0,0===t.length)return e;break}this.charLength+=this.surrogateSize,e=""}this.detectIncompleteChar(t);var n=t.length;this.charLength&&(t.copy(this.charBuffer,0,t.length-this.charReceived,n),n-=this.charReceived);var i;n=(e+=t.toString(this.encoding,0,n)).length-1;if((i=e.charCodeAt(n))>=55296&&i<=56319){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),t.copy(this.charBuffer,0,0,o),e.substring(0,n)}return e},o.prototype.detectIncompleteChar=function(t){for(var e=t.length>=3?3:t.length;e>0;e--){var r=t[t.length-e];if(1==e&&r>>5==6){this.charLength=2;break}if(e<=2&&r>>4==14){this.charLength=3;break}if(e<=3&&r>>3==30){this.charLength=4;break}}this.charReceived=e},o.prototype.end=function(t){var e="";if(t&&t.length&&(e=this.write(t)),this.charReceived){var r=this.charReceived,n=this.charBuffer,i=this.encoding;e+=n.slice(0,r).toString(i)}return e}},{buffer:48}],171:[function(t,e,r){(function(r){var n=t("stream");function i(t,e,i){t=t||function(t){this.queue(t)},e=e||function(){this.queue(null)};var o=!1,a=!1,s=[],l=!1,u=new n;function c(){for(;s.length&&!u.paused;){var t=s.shift();if(null===t)return u.emit("end");u.emit("data",t)}}return u.readable=u.writable=!0,u.paused=!1,u.autoDestroy=!(i&&!1===i.autoDestroy),u.write=function(e){return t.call(this,e),!u.paused},u.queue=u.push=function(t){return l?u:(null===t&&(l=!0),s.push(t),c(),u)},u.on("end",function(){u.readable=!1,!u.writable&&u.autoDestroy&&r.nextTick(function(){u.destroy()})}),u.end=function(t){if(!o)return o=!0,arguments.length&&u.write(t),u.writable=!1,e.call(u),!u.readable&&u.autoDestroy&&u.destroy(),u},u.destroy=function(){if(!a)return a=!0,o=!0,s.length=0,u.writable=u.readable=!1,u.emit("close"),u},u.pause=function(){if(!u.paused)return u.paused=!0,u},u.resume=function(){return u.paused&&(u.paused=!1,u.emit("resume")),c(),u.paused||u.emit("drain"),u},u}e.exports=i,i.through=i}).call(this,t("_process"))},{_process:118,stream:169}],172:[function(t,e,r){(function(e,n){var i=t("process/browser.js").nextTick,o=Function.prototype.apply,a=Array.prototype.slice,s={},l=0;function u(t,e){this._id=t,this._clearFn=e}r.setTimeout=function(){return new u(o.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new u(o.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(t){t.close()},u.prototype.unref=u.prototype.ref=function(){},u.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},r.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},r._unrefActive=r.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},r.setImmediate="function"==typeof e?e:function(t){var e=l++,n=!(arguments.length<2)&&a.call(arguments,1);return s[e]=!0,i(function(){s[e]&&(n?t.apply(null,n):t.call(null),r.clearImmediate(e))}),e},r.clearImmediate="function"==typeof n?n:function(t){delete s[t]}}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":118,timers:172}],173:[function(t,e,r){r.isatty=function(){return!1},r.ReadStream=function(){throw new Error("tty.ReadStream is not implemented")},r.WriteStream=function(){throw new Error("tty.WriteStream is not implemented")}},{}],174:[function(t,e,r){(function(e,n){"use strict";var i=t("bit-twiddle"),o=t("dup");e.__TYPEDARRAY_POOL||(e.__TYPEDARRAY_POOL={UINT8:o([32,0]),UINT16:o([32,0]),UINT32:o([32,0]),INT8:o([32,0]),INT16:o([32,0]),INT32:o([32,0]),FLOAT:o([32,0]),DOUBLE:o([32,0]),DATA:o([32,0]),UINT8C:o([32,0]),BUFFER:o([32,0])});var a="undefined"!=typeof Uint8ClampedArray,s=e.__TYPEDARRAY_POOL;s.UINT8C||(s.UINT8C=o([32,0])),s.BUFFER||(s.BUFFER=o([32,0]));var l=s.DATA,u=s.BUFFER;function c(t){if(t){var e=t.length||t.byteLength,r=i.log2(e);l[r].push(t)}}function f(t){t=i.nextPow2(t);var e=i.log2(t),r=l[e];return r.length>0?r.pop():new ArrayBuffer(t)}function h(t){return new Uint8Array(f(t),0,t)}function p(t){return new Uint16Array(f(2*t),0,t)}function d(t){return new Uint32Array(f(4*t),0,t)}function g(t){return new Int8Array(f(t),0,t)}function m(t){return new Int16Array(f(2*t),0,t)}function v(t){return new Int32Array(f(4*t),0,t)}function _(t){return new Float32Array(f(4*t),0,t)}function y(t){return new Float64Array(f(8*t),0,t)}function b(t){return a?new Uint8ClampedArray(f(t),0,t):h(t)}function w(t){return new DataView(f(t),0,t)}function k(t){t=i.nextPow2(t);var e=i.log2(t),r=u[e];return r.length>0?r.pop():new n(t)}r.free=function(t){if(n.isBuffer(t))u[i.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|i.log2(e);l[r].push(t)}},r.freeUint8=r.freeUint16=r.freeUint32=r.freeInt8=r.freeInt16=r.freeInt32=r.freeFloat32=r.freeFloat=r.freeFloat64=r.freeDouble=r.freeUint8Clamped=r.freeDataView=function(t){c(t.buffer)},r.freeArrayBuffer=c,r.freeBuffer=function(t){u[i.log2(t.length)].push(t)},r.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return f(t);switch(e){case"uint8":return h(t);case"uint16":return p(t);case"uint32":return d(t);case"int8":return g(t);case"int16":return m(t);case"int32":return v(t);case"float":case"float32":return _(t);case"double":case"float64":return y(t);case"uint8_clamped":return b(t);case"buffer":return k(t);case"data":case"dataview":return w(t);default:return null}return null},r.mallocArrayBuffer=f,r.mallocUint8=h,r.mallocUint16=p,r.mallocUint32=d,r.mallocInt8=g,r.mallocInt16=m,r.mallocInt32=v,r.mallocFloat32=r.mallocFloat=_,r.mallocFloat64=r.mallocDouble=y,r.mallocUint8Clamped=b,r.mallocDataView=w,r.mallocBuffer=k,r.clearCache=function(){for(var t=0;t<32;++t)s.UINT8[t].length=0,s.UINT16[t].length=0,s.UINT32[t].length=0,s.INT8[t].length=0,s.INT16[t].length=0,s.INT32[t].length=0,s.FLOAT[t].length=0,s.DOUBLE[t].length=0,s.UINT8C[t].length=0,l[t].length=0,u[t].length=0}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},t("buffer").Buffer)},{"bit-twiddle":2,buffer:48,dup:21}],175:[function(t,e,r){(function(){var t=this,n=t._,i={},o=Array.prototype,a=Object.prototype,s=Function.prototype,l=o.push,u=o.slice,c=o.concat,f=a.toString,h=a.hasOwnProperty,p=o.forEach,d=o.map,g=o.reduce,m=o.reduceRight,v=o.filter,_=o.every,y=o.some,b=o.indexOf,w=o.lastIndexOf,k=Array.isArray,x=Object.keys,B=s.bind,C=function(t){return t instanceof C?t:this instanceof C?void(this._wrapped=t):new C(t)};void 0!==r?(void 0!==e&&e.exports&&(r=e.exports=C),r._=C):t._=C,C.VERSION="1.4.4";var E=C.each=C.forEach=function(t,e,r){if(null!=t)if(p&&t.forEach===p)t.forEach(e,r);else if(t.length===+t.length){for(var n=0,o=t.length;n2;if(null==t&&(t=[]),g&&t.reduce===g)return n&&(e=C.bind(e,n)),i?t.reduce(e,r):t.reduce(e);if(E(t,function(t,o,a){i?r=e.call(n,r,t,o,a):(r=t,i=!0)}),!i)throw new TypeError(P);return r},C.reduceRight=C.foldr=function(t,e,r,n){var i=arguments.length>2;if(null==t&&(t=[]),m&&t.reduceRight===m)return n&&(e=C.bind(e,n)),i?t.reduceRight(e,r):t.reduceRight(e);var o=t.length;if(o!==+o){var a=C.keys(t);o=a.length}if(E(t,function(s,l,u){l=a?a[--o]:--o,i?r=e.call(n,r,t[l],l,u):(r=t[l],i=!0)}),!i)throw new TypeError(P);return r},C.find=C.detect=function(t,e,r){var n;return j(t,function(t,i,o){if(e.call(r,t,i,o))return n=t,!0}),n},C.filter=C.select=function(t,e,r){var n=[];return null==t?n:v&&t.filter===v?t.filter(e,r):(E(t,function(t,i,o){e.call(r,t,i,o)&&(n[n.length]=t)}),n)},C.reject=function(t,e,r){return C.filter(t,function(t,n,i){return!e.call(r,t,n,i)},r)},C.every=C.all=function(t,e,r){e||(e=C.identity);var n=!0;return null==t?n:_&&t.every===_?t.every(e,r):(E(t,function(t,o,a){if(!(n=n&&e.call(r,t,o,a)))return i}),!!n)};var j=C.some=C.any=function(t,e,r){e||(e=C.identity);var n=!1;return null==t?n:y&&t.some===y?t.some(e,r):(E(t,function(t,o,a){if(n||(n=e.call(r,t,o,a)))return i}),!!n)};C.contains=C.include=function(t,e){return null!=t&&(b&&t.indexOf===b?-1!=t.indexOf(e):j(t,function(t){return t===e}))},C.invoke=function(t,e){var r=u.call(arguments,2),n=C.isFunction(e);return C.map(t,function(t){return(n?e:t[e]).apply(t,r)})},C.pluck=function(t,e){return C.map(t,function(t){return t[e]})},C.where=function(t,e,r){return C.isEmpty(e)?r?null:[]:C[r?"find":"filter"](t,function(t){for(var r in e)if(e[r]!==t[r])return!1;return!0})},C.findWhere=function(t,e){return C.where(t,e,!0)},C.max=function(t,e,r){if(!e&&C.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.max.apply(Math,t);if(!e&&C.isEmpty(t))return-1/0;var n={computed:-1/0,value:-1/0};return E(t,function(t,i,o){var a=e?e.call(r,t,i,o):t;a>=n.computed&&(n={value:t,computed:a})}),n.value},C.min=function(t,e,r){if(!e&&C.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.min.apply(Math,t);if(!e&&C.isEmpty(t))return 1/0;var n={computed:1/0,value:1/0};return E(t,function(t,i,o){var a=e?e.call(r,t,i,o):t;an||void 0===r)return 1;if(r>>1;r.call(n,t[s])=0})})},C.difference=function(t){var e=c.apply(o,u.call(arguments,1));return C.filter(t,function(t){return!C.contains(e,t)})},C.zip=function(){for(var t=u.call(arguments),e=C.max(C.pluck(t,"length")),r=new Array(e),n=0;n=0;r--)e=[t[r].apply(this,e)];return e[0]}},C.after=function(t,e){return t<=0?e():function(){if(--t<1)return e.apply(this,arguments)}},C.keys=x||function(t){if(t!==Object(t))throw new TypeError("Invalid object");var e=[];for(var r in t)C.has(t,r)&&(e[e.length]=r);return e},C.values=function(t){var e=[];for(var r in t)C.has(t,r)&&e.push(t[r]);return e},C.pairs=function(t){var e=[];for(var r in t)C.has(t,r)&&e.push([r,t[r]]);return e},C.invert=function(t){var e={};for(var r in t)C.has(t,r)&&(e[t[r]]=r);return e},C.functions=C.methods=function(t){var e=[];for(var r in t)C.isFunction(t[r])&&e.push(r);return e.sort()},C.extend=function(t){return E(u.call(arguments,1),function(e){if(e)for(var r in e)t[r]=e[r]}),t},C.pick=function(t){var e={},r=c.apply(o,u.call(arguments,1));return E(r,function(r){r in t&&(e[r]=t[r])}),e},C.omit=function(t){var e={},r=c.apply(o,u.call(arguments,1));for(var n in t)C.contains(r,n)||(e[n]=t[n]);return e},C.defaults=function(t){return E(u.call(arguments,1),function(e){if(e)for(var r in e)null==t[r]&&(t[r]=e[r])}),t},C.clone=function(t){return C.isObject(t)?C.isArray(t)?t.slice():C.extend({},t):t},C.tap=function(t,e){return e(t),t};var A=function(t,e,r,n){if(t===e)return 0!==t||1/t==1/e;if(null==t||null==e)return t===e;t instanceof C&&(t=t._wrapped),e instanceof C&&(e=e._wrapped);var i=f.call(t);if(i!=f.call(e))return!1;switch(i){case"[object String]":return t==String(e);case"[object Number]":return t!=+t?e!=+e:0==t?1/t==1/e:t==+e;case"[object Date]":case"[object Boolean]":return+t==+e;case"[object RegExp]":return t.source==e.source&&t.global==e.global&&t.multiline==e.multiline&&t.ignoreCase==e.ignoreCase}if("object"!=typeof t||"object"!=typeof e)return!1;for(var o=r.length;o--;)if(r[o]==t)return n[o]==e;r.push(t),n.push(e);var a=0,s=!0;if("[object Array]"==i){if(s=(a=t.length)==e.length)for(;a--&&(s=A(t[a],e[a],r,n)););}else{var l=t.constructor,u=e.constructor;if(l!==u&&!(C.isFunction(l)&&l instanceof l&&C.isFunction(u)&&u instanceof u))return!1;for(var c in t)if(C.has(t,c)&&(a++,!(s=C.has(e,c)&&A(t[c],e[c],r,n))))break;if(s){for(c in e)if(C.has(e,c)&&!a--)break;s=!a}}return r.pop(),n.pop(),s};C.isEqual=function(t,e){return A(t,e,[],[])},C.isEmpty=function(t){if(null==t)return!0;if(C.isArray(t)||C.isString(t))return 0===t.length;for(var e in t)if(C.has(t,e))return!1;return!0},C.isElement=function(t){return!(!t||1!==t.nodeType)},C.isArray=k||function(t){return"[object Array]"==f.call(t)},C.isObject=function(t){return t===Object(t)},E(["Arguments","Function","String","Number","Date","RegExp"],function(t){C["is"+t]=function(e){return f.call(e)=="[object "+t+"]"}}),C.isArguments(arguments)||(C.isArguments=function(t){return!(!t||!C.has(t,"callee"))}),"function"!=typeof/./&&(C.isFunction=function(t){return"function"==typeof t}),C.isFinite=function(t){return isFinite(t)&&!isNaN(parseFloat(t))},C.isNaN=function(t){return C.isNumber(t)&&t!=+t},C.isBoolean=function(t){return!0===t||!1===t||"[object Boolean]"==f.call(t)},C.isNull=function(t){return null===t},C.isUndefined=function(t){return void 0===t},C.has=function(t,e){return h.call(t,e)},C.noConflict=function(){return t._=n,this},C.identity=function(t){return t},C.times=function(t,e,r){for(var n=Array(t),i=0;i":">",'"':""","'":"'","/":"/"}};I.unescape=C.invert(I.escape);var R={escape:new RegExp("["+C.keys(I.escape).join("")+"]","g"),unescape:new RegExp("("+C.keys(I.unescape).join("|")+")","g")};C.each(["escape","unescape"],function(t){C[t]=function(e){return null==e?"":(""+e).replace(R[t],function(e){return I[t][e]})}}),C.result=function(t,e){if(null==t)return null;var r=t[e];return C.isFunction(r)?r.call(t):r},C.mixin=function(t){E(C.functions(t),function(e){var r=C[e]=t[e];C.prototype[e]=function(){var t=[this._wrapped];return l.apply(t,arguments),N.call(this,r.apply(C,t))}})};var L=0;C.uniqueId=function(t){var e=++L+"";return t?t+e:e},C.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var F=/(.)^/,O={"'":"'","\\":"\\","\r":"r","\n":"n","\t":"t","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\t|\u2028|\u2029/g;C.template=function(t,e,r){var n;r=C.defaults({},r,C.templateSettings);var i=new RegExp([(r.escape||F).source,(r.interpolate||F).source,(r.evaluate||F).source].join("|")+"|$","g"),o=0,a="__p+='";t.replace(i,function(e,r,n,i,s){return a+=t.slice(o,s).replace(D,function(t){return"\\"+O[t]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),n&&(a+="'+\n((__t=("+n+"))==null?'':__t)+\n'"),i&&(a+="';\n"+i+"\n__p+='"),o=s+e.length,e}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{n=new Function(r.variable||"obj","_",a)}catch(t){throw t.source=a,t}if(e)return n(e,C);var s=function(t){return n.call(this,t,C)};return s.source="function("+(r.variable||"obj")+"){\n"+a+"}",s},C.chain=function(t){return C(t).chain()};var N=function(t){return this._chain?C(t).chain():t};C.mixin(C),E(["pop","push","reverse","shift","sort","splice","unshift"],function(t){var e=o[t];C.prototype[t]=function(){var r=this._wrapped;return e.apply(r,arguments),"shift"!=t&&"splice"!=t||0!==r.length||delete r[0],N.call(this,r)}}),E(["concat","join","slice"],function(t){var e=o[t];C.prototype[t]=function(){return N.call(this,e.apply(this._wrapped,arguments))}}),C.extend(C.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}).call(this)},{}],176:[function(t,e,r){"use strict";e.exports=function(t,e,r){return 0===t.length?t:e?(r||t.sort(e),function(t,e){for(var r=1,n=t.length,i=t[0],o=t[0],a=1;a=a?l+1:a}n.mkdir(e+"sequencer"+a,function(){var o=e+"sequencer"+a+"/",s=r.steps;if(i){var l=s.slice(-1)[0].output.src,u=s.slice(-1)[0].output.format,c=t("data-uri-to-buffer")(l);n.writeFile(o+image+"_"+(s.length-1)+"."+u,c,function(){})}else for(var f in s){l=s[f].output.src,u=s[f].output.format,c=t("data-uri-to-buffer")(l);n.writeFile(o+image+"_"+f+"."+u,c,function(){})}})},n.readdir(u,function(t,e){var r=[];if(void 0===e||0==e.length)return c(r),[];for(var i=0;i0&&(thisStep=t.steps[e],thisStep.UI.onRemove(thisStep.options.step),t.steps.splice(e,1))}function d(){var e=[],r=this.getSteps().slice(1).map(t=>t.options.name),n=this;for(var i in n.image=arguments[0],arguments)e.push(a(arguments[i]));var o=u.call(this,e,"l");0!=this.getSteps().length&&(this.options.sequencerCounter=0,c=[],this.steps=[]),c.push({method:"loadImages",json_q:a(o)});var s={name:"ImageSequencer Wrapper",sequencer:this,addSteps:this.addSteps,removeSteps:this.removeSteps,insertSteps:this.insertSteps,run:this.run,UI:this.UI,setUI:this.setUI};t("./ui/LoadImage")(n,"image",o.image,function(){var t;t=n,0!=r.length&&(t.addSteps(r),r=[]),o.callback.call(s)})}function g(t){var e={};if("load-image"==t)return{};if(0==arguments.length){for(var r in this.modules)e[r]=s[r][1];for(var n in this.sequences)e[n]={name:n,steps:this.sequences[n]}}else e=s[t]?s[t][1]:{inputs:l[t].options};return e}function m(t){var e=t.name?t.name:t.options.name;let r=g(e).inputs||{},n={};for(let e in r)t.options[e]&&t.options[e]!=r[e].default&&(n[e]=t.options[e],n[e]=encodeURIComponent(n[e]));return`${e}{${Object.keys(n).map(t=>t+":"+n[t]).join("|")}}`}function v(t){let e;return(e=t.includes(",")?t.split(","):[t]).map(_)}function _(t){var e;if(e=t.includes("{")?t.includes("(")&&t.indexOf("(")=e.steps.length?{options:{name:void 0}}:e.steps.slice(c+t)[0]},h.getIndex=function(){return c},n)n.hasOwnProperty(p)&&(h[p]=n[p]);h.UI.onDraw(h.options.step);var d=t("./RunToolkit")(e.copy(f));h.draw(d,function(){e.steps[c].options.step.output=e.steps[c].output.src,e.steps[c].UI.onComplete(e.steps[c].options.step),r(o,++s)},a)}}(s,o)}(r=function(t){0==t[0]&&1==e.steps.length?delete t[0]:0==t[0]&&t[0]++;for(var r=e.steps[t[0]-1];void 0===r||void 0===r.output;)r=e.steps[--t[0]-1];return t}(r))}},{"./RunToolkit":189,"./util/getStep.js":314}],189:[function(t,e,r){const n=t("get-pixels"),i=t("./modules/_nomodule/PixelManipulation"),o=t("lodash"),a=t("data-uri-to-buffer"),s=t("save-pixels");e.exports=function(t){return t.getPixels=n,t.pixelManipulation=i,t.lodash=o,t.dataUriToBuffer=a,t.savePixels=s,t}},{"./modules/_nomodule/PixelManipulation":306,"data-uri-to-buffer":19,"get-pixels":30,lodash:76,"save-pixels":168}],190:[function(t,e,r){e.exports={sample:[{name:"invert",options:{}},{name:"channel",options:{channel:"red"}},{name:"blur",options:{blur:"5"}}]}},{}],191:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));return e.size=e.size||n.size,e.qrCodeString=e.qrCodeString||"https://github.com/publiclab/image-sequencer",getPixels=t("get-pixels"),{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return getPixels(r.src,function(i,a){return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,e,r,n){return[t,e,r,n]},extraManipulation:function(r,n){i?console.log(i):t("./QR")(e,r,a,n)},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:n})})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./QR":192,"./info.json":194,"get-pixels":30}],192:[function(t,e,r){e.exports=function(e,r,n,i){t("qrcode").toDataURL(e.qrCodeString,function(o,a){t("get-pixels")(a,function(o,a){o&&console.log("Bad image path",image);var s=new(t("imagejs").Bitmap)({width:a.shape[0],height:a.shape[1]});s._data.data=a.data;var l=s.resize({width:e.size,height:e.size,algorithm:"bicubicInterpolation"});a.data=l._data.data,a.shape=[e.size,e.size,4],a.stride[1]=4*e.size;for(var u=n.shape[0],c=n.shape[1],f=u-e.size,h=c-e.size,p=0;p=f&&d>=h?(r.set(p,d,0,a.get(p-f,d-h,0)),r.set(p,d,1,a.get(p-f,d-h,1)),r.set(p,d,2,a.get(p-f,d-h,2)),r.set(p,d,3,a.get(p-f,d-h,3))):(r.set(p,d,0,n.get(p,d,0)),r.set(p,d,1,n.get(p,d,1)),r.set(p,d,2,n.get(p,d,2)),r.set(p,d,3,n.get(p,d,3)));i()})})}},{"get-pixels":30,imagejs:63,qrcode:119}],193:[function(t,e,r){e.exports=[t("./Module"),t("./info.json")]},{"./Module":191,"./info.json":194}],194:[function(t,e,r){e.exports={name:"Add QR",description:"Adds QR corresponding to the given string",url:"https://github.com/publiclab/image-sequencer/tree/master/MODULES.md",inputs:{size:{type:"integer",desc:"size of QR code in pixels",default:200},qrCodeString:{type:"string",desc:"input string to generate QR code",default:"https://github.com/publiclab/image-sequencer"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],195:[function(t,e,r){e.exports=function(e,r){return e.step.metadata=e.step.metadata||{},{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},extraManipulation:function(t){for(var r=0,n=[0,0,0,0];rAverages (r, g, b, a): "+n.join(", ")+"

"),t},format:r.format,image:e.image,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306}],196:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":195,"./info.json":197,dup:193}],197:[function(t,e,r){e.exports={name:"Average",description:"Average all pixel color",inputs:{},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],198:[function(require,module,exports){module.exports=function Dynamic(options,UI,util){var defaults=require("./../../util/getDefaults.js")(require("./info.json")),output;function draw(input,callback,progressObj){progressObj.stop(!0),progressObj.overrideFlag=!0;var step=this;"string"==typeof options.func&&eval("options.func = "+options.func);var getPixels=require("get-pixels");"string"==typeof options.offset&&(options.offset=parseInt(options.offset));var priorStep=this.getStep(options.offset);void 0===priorStep.output&&(this.output=input,UI.notify("Offset Unavailable","offset-notification"),callback()),getPixels(priorStep.output.src,function(t,e){return options.firstImagePixels=e,require("../_nomodule/PixelManipulation.js")(input,{output:function(t,e,r){step.output={src:e,format:r}},changePixel:function(t,e,r,n,i,o){let a=options.firstImagePixels;return options.func(t,e,r,n,a.get(i,o,0),a.get(i,o,1),a.get(i,o,2),a.get(i,o,3))},format:input.format,image:options.image,inBrowser:options.inBrowser,callback:callback})})}return options.func=options.func||defaults.blend,options.offset=options.offset||defaults.offset,{options:options,draw:draw,output:output,UI:UI}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./info.json":200,"get-pixels":30}],199:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":198,"./info.json":200,dup:193}],200:[function(t,e,r){e.exports={name:"Blend",description:"Blend two chosen image steps with the given function. Defaults to using the red channel from image 1 and the green and blue and alpha channels of image 2. Easier to use interfaces coming soon!",inputs:{offset:{type:"integer",desc:"Choose which image to blend the current image with. Two steps back is -2, three steps back is -3 etc.",default:-2},blend:{type:"string",desc:"Function to use to blend the two images.",default:"function(r1, g1, b1, a1, r2, g2, b2, a2) { return [ r1, g2, b2, a2 ] }"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],201:[function(t,e,r){e.exports=function(e,r){let n=[[2/159,4/159,5/159,4/159,2/159],[4/159,9/159,12/159,9/159,4/159],[5/159,12/159,15/159,12/159,5/159],[4/159,9/159,12/159,9/159,4/159],[2/159,4/159,5/159,4/159,2/159]],i=t("lodash").cloneDeep(e);n=function(t){let e=[];for(let r=t.length-1;r>=0;r--){let n=[];for(let e=t[r].length-1;e>=0;e--)n.push(t[r][e]);e.push(n)}return e}(n);for(let t=0;tg;r=0<=g?++c:--c)n[r]=(e-i)/(o-i)*(l[r]-s[r])+s[r];return n}}e.exports=function(t,e){return e.colormap=e.colormap||i.default,"object"==typeof e.colormap?colormapFunction=n(e.colormap):i.hasOwnProperty(e.colormap)?colormapFunction=i[e.colormap]:colormapFunction=i.default,colormapFunction(t/255)};var i={greyscale:n([[0,[0,0,0],[255,255,255]],[1,[255,255,255],[255,255,255]]]),bluwhtgrngis:n([[0,[6,23,86],[6,25,84]],[.0625,[6,25,84],[6,25,84]],[.125,[6,25,84],[6,25,84]],[.1875,[6,25,84],[6,25,84]],[.25,[6,25,84],[6,25,84]],[.3125,[6,25,84],[9,24,84]],[.3438,[9,24,84],[119,120,162]],[.375,[119,129,162],[249,250,251]],[.406,[249,250,251],[255,255,255]],[.4375,[255,255,255],[255,255,255]],[.5,[255,255,255],[214,205,191]],[.52,[214,205,191],[178,175,96]],[.5625,[178,175,96],[151,176,53]],[.593,[151,176,53],[146,188,12]],[.625,[146,188,12],[96,161,1]],[.6875,[96,161,1],[30,127,3]],[.75,[30,127,3],[0,99,1]],[.8125,[0,99,1],[0,74,1]],[.875,[0,74,1],[0,52,0]],[.9375,[0,52,0],[0,34,0]],[.968,[0,34,0],[68,70,67]]]),brntogrn:n([[0,[110,12,3],[118,6,1]],[.0625,[118,6,1],[141,19,6]],[.125,[141,19,6],[165,35,13]],[.1875,[165,35,13],[177,59,25]],[.2188,[177,59,25],[192,91,36]],[.25,[192,91,36],[214,145,76]],[.3125,[214,145,76],[230,183,134]],[.375,[230,183,134],[243,224,194]],[.4375,[243,224,194],[250,252,229]],[.5,[250,252,229],[217,235,185]],[.5625,[217,235,185],[184,218,143]],[.625,[184,218,143],[141,202,89]],[.6875,[141,202,89],[80,176,61]],[.75,[80,176,61],[0,147,32]],[.8125,[0,147,32],[1,122,22]],[.875,[1,122,22],[0,114,19]],[.9,[0,114,19],[0,105,18]],[.9375,[0,105,18],[7,70,14]]]),blutoredjet:n([[0,[0,0,140],[1,1,186]],[.0625,[1,1,186],[0,1,248]],[.125,[0,1,248],[0,70,254]],[.1875,[0,70,254],[0,130,255]],[.25,[0,130,255],[2,160,255]],[.2813,[2,160,255],[0,187,255]],[.3125,[0,187,255],[6,250,255]],[.375,[8,252,251],[27,254,228]],[.406,[27,254,228],[70,255,187]],[.4375,[70,255,187],[104,254,151]],[.47,[104,254,151],[132,255,19]],[.5,[132,255,19],[195,255,60]],[.5625,[195,255,60],[231,254,25]],[.5976,[231,254,25],[253,246,1]],[.625,[253,246,1],[252,210,1]],[.657,[252,210,1],[255,183,0]],[.6875,[255,183,0],[255,125,2]],[.75,[255,125,2],[255,65,1]],[.8125,[255,65,1],[247,1,1]],[.875,[247,1,1],[200,1,3]],[.9375,[200,1,3],[122,3,2]]]),colors16:n([[0,[0,0,0],[0,0,0]],[.0625,[3,1,172],[3,1,172]],[.125,[3,1,222],[3,1,222]],[.1875,[0,111,255],[0,111,255]],[.25,[3,172,255],[3,172,255]],[.3125,[1,226,255],[1,226,255]],[.375,[2,255,0],[2,255,0]],[.4375,[198,254,0],[190,254,0]],[.5,[252,255,0],[252,255,0]],[.5625,[255,223,3],[255,223,3]],[.625,[255,143,3],[255,143,3]],[.6875,[255,95,3],[255,95,3]],[.75,[242,0,1],[242,0,1]],[.8125,[245,0,170],[245,0,170]],[.875,[223,180,225],[223,180,225]],[.9375,[255,255,255],[255,255,255]]]),default:n([[0,[45,1,121],[25,1,137]],[.125,[25,1,137],[0,6,156]],[.1875,[0,6,156],[7,41,172]],[.25,[7,41,172],[22,84,187]],[.3125,[22,84,187],[25,125,194]],[.375,[25,125,194],[26,177,197]],[.4375,[26,177,197],[23,199,193]],[.47,[23,199,193],[25,200,170]],[.5,[25,200,170],[21,209,27]],[.5625,[21,209,27],[108,215,18]],[.625,[108,215,18],[166,218,19]],[.6875,[166,218,19],[206,221,20]],[.75,[206,221,20],[222,213,19]],[.7813,[222,213,19],[222,191,19]],[.8125,[222,191,19],[227,133,17]],[.875,[227,133,17],[231,83,16]],[.9375,[231,83,16],[220,61,48]]]),fastie:n([[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]]]),stretched:n([[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]]])}},{}],215:[function(t,e,r){e.exports=function(e,r){return{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(r,n,i,o){var a=(r+n+i)/3,s=t("./Colormap")(a,e);return[s[0],s[1],s[2],255]},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./Colormap":214}],216:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":215,"./info.json":217,dup:193}],217:[function(t,e,r){e.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","bluwhtgrngis","stretched","fastie","brntogrn","blutoredjet","colors16"]}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],218:[function(t,e,r){var n=t("lodash");e.exports=function(t,e){let r=n.cloneDeep(t);(e=Number(e))<-100&&(e=-100),e>100&&(e=100),e=(100+e)/100,e*=e;for(let n=0;n255&&(i=255);var o=r.get(n,s,1)/255;o-=.5,o*=e,o+=.5,(o*=255)<0&&(o=0),o>255&&(o=255);var a=r.get(n,s,2)/255;a-=.5,a*=e,a+=.5,(a*=255)<0&&(a=0),a>255&&(a=255),t.set(n,s,0,i),t.set(n,s,1,o),t.set(n,s,2,a)}return t}},{lodash:76}],219:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));return e.contrast=e.contrast||n.contrast,{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},extraManipulation:function(r){return r=t("./Contrast")(r,e.contrast)},format:r.format,image:e.image,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./Contrast":218,"./info.json":221}],220:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":219,"./info.json":221,dup:193}],221:[function(t,e,r){e.exports={name:"Contrast",description:"Change the contrast of the image by given value",inputs:{contrast:{type:"integer",desc:"contrast for the new image, typically -100 to 100",default:70,min:-100,max:100}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],222:[function(t,e,r){var n=t("lodash");e.exports=function(t,e,r){let o=function(t,e){for(e=e.split(" "),i=0;i<9;i++)e[i]=Number(e[i])*t;let r=0,n=[];for(i=0;i<3;i++){let t=[];for(j=0;j<3;j++)t.push(e[r]),r+=1;n.push(t)}return n}(e,r),a=n.cloneDeep(t);o=function(t){let e=[];for(let r=t.length-1;r>=0;r--){let n=[];for(let e=t[r].length-1;e>=0;e--)n.push(t[r][e]);e.push(n)}return e}(o);for(let e=0;eRead more",inputs:{constantFactor:{type:"float",desc:"a constant factor, multiplies all the kernel values by that factor",default:.1111,placeholder:.1111},kernelValues:{type:"string",desc:"nine space separated numbers representing the kernel values in left to right and top to bottom format.",default:"1 1 1 1 1 1 1 1 1",placeholder:"1 1 1 1 1 1 1 1 1"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],226:[function(t,e,r){(function(r){e.exports=function(e,n,i){var o=t("./../../util/getDefaults.js")(t("./info.json")),a=t("get-pixels"),s=t("save-pixels");n.x=parseInt(n.x)||o.x,n.y=parseInt(n.y)||o.y,a(e.src,function(t,a){n.w=parseInt(n.w)||Math.floor(a.shape[0]),n.h=parseInt(n.h)||Math.floor(a.shape[1]),n.backgroundColor=n.backgroundColor||o.backgroundColor;var l=n.x,u=n.y,c=n.w,f=n.h,h=a.shape[0],p=a.shape[1],d=[];backgroundColor=n.backgroundColor.split(" ");for(var g=0;gRead more",inputs:{dither:{type:"select",desc:"Name of the Dithering Algorithm",default:"none",values:["none","floydsteinberg","bayer","Atkinson"]}}}},{}],238:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));r.startingX=r.startingX||n.startingX,r.startingY=r.startingY||n.startingY;var i=Number(r.startingX),o=Number(r.startingY),a=e.shape[0],s=e.shape[1],l=Number(r.thickness)||n.thickness,u=r.endX=Number(r.endX)-l||a-1,c=r.endY=Number(r.endY)-l||s-1,f=r.color||n.color;f=f.split(" ");var h=function(t,r,n,i){for(var o=t;o<=n+l;o++)for(var a=r;a<=i+l;a++)e.set(o,a,0,f[0]),e.set(o,a,1,f[1]),e.set(o,a,2,f[2]),e.set(o,a,3,f[3])};return h(i,o,i,c),h(u,o,u,c),h(i,o,u,o),h(i,c,u,c),e}},{"./../../util/getDefaults.js":313,"./info.json":241}],239:[function(t,e,r){e.exports=function(e,r){return{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,e,r,n){return[t,e,r,n]},extraManipulation:function(r){return r=t("./DrawRectangle")(r,e)},format:r.format,image:e.image,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./DrawRectangle":238}],240:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":239,"./info.json":241,dup:193}],241:[function(t,e,r){e.exports={name:"Draw Rectangle",description:"It draws a rectangle on the image",inputs:{startingX:{type:"integer",desc:"starting x position of the rectangle",default:0},startingY:{type:"integer",desc:"starting y position of the rectangle",default:0},endX:{type:"integer",desc:"last x position of the rectangle",default:"width"},endY:{type:"integer",desc:"last y position of the rectangle",default:"height"},thickness:{type:"integer",desc:"thickness of border",default:1},color:{type:"string",desc:"RGBA values separated by a space",default:"0 0 0 255"}}}},{}],242:[function(require,module,exports){module.exports=function Dynamic(options,UI){var output;function draw(input,callback,progressObj){progressObj.stop(!0),progressObj.overrideFlag=!0;var step=this;function generator(expression){var func="f = function (r, g, b, a) { var R = r, G = g, B = b, A = a;",f;return func+="return ",func=func+expression+"}",eval(func),f}options.monochrome=options.monochrome||"(R+G+B)/3";var channels=["red","green","blue","alpha"];function changePixel(t,e,r,n){return[options.red_function(t,e,r,n),options.green_function(t,e,r,n),options.blue_function(t,e,r,n),options.alpha_function(t,e,r,n)]}function getNeighbourPixel(t,e,r,n,i){return[t.get(e+n,r+i,0),t.get(e+n,r+i,1),t.get(e+n,r+i,2),t.get(e+n,r+i,3)]}function map(t,e,r,n,i,o){var a=(t-e)/(r-e)*(i-n)+n;if(!o)return a;function s(t,e,r){return Math.max(Math.min(t,r),e)}return nInfragrammar.",inputs:{red:{type:"string",desc:"Expression to return for red channel with R, G, B, and A inputs",default:"r"},green:{type:"string",desc:"Expression to return for green channel with R, G, B, and A inputs",default:"g"},blue:{type:"string",desc:"Expression to return for blue channel with R, G, B, and A inputs",default:"b"},"monochrome (fallback)":{type:"string",desc:"Expression to return with R, G, B, and A inputs; fallback for other channels if none provided",default:"r + g + b"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],245:[function(t,e,r){t("lodash");const n=[[-1,0,1],[-2,0,2],[-1,0,1]],i=[[-1,-2,-1],[0,0,0],[1,2,1]];function o(t,e,r,o,a){let s=0;for(let e=0;e<3;e++)for(let r=0;r<3;r++){let i=o+e-1,l=a+r-1;s+=t.get(i,l,0)*n[e][r]}let l=0;for(let e=0;e<3;e++)for(let r=0;r<3;r++){let n=o+e-1,s=a+r-1;l+=t.get(n,s,0)*i[e][r]}return{pixel:[e,e,e,Math.sqrt(Math.pow(s,2)+Math.pow(l,2))],angle:Math.atan2(l,s)}}e.exports=function(t,e,r,n){let i=[],l=[];for(var u=0;ut.map(a));for(let n=1;n=-22.5&&o<=22.5||o<-157.5&&o>=-180?e[n][i]>=e[n][i+1]&&e[n][i]>=e[n][i-1]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0):o>=22.5&&o<=67.5||o<-112.5&&o>=-157.5?e[n][i]>=e[n+1][i+1]&&e[n][i]>=e[n-1][i-1]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0):o>=67.5&&o<=112.5||o<-67.5&&o>=-112.5?e[n][n]>=e[n+1][i]&&e[n][i]>=e[n][i]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0):(o>=112.5&&o<=157.5||o<-22.5&&o>=-67.5)&&(e[n][i]>=e[n+1][i-1]&&e[n][i]>=e[n-1][i+1]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0))}}(t,l,i),function(t,e,r,n,i,o){const a=s(n)*e,l=a*r;for(let e=0;el?n[e][r]>a?i.push(s):o.push(s):t.set(e,r,3,0)}i.forEach(e=>t.set(e[0],e[1],3,255))}(t,e,r,l,[],[]),t};var a=t=>180*t/Math.PI,s=t=>Math.max(...t.map(t=>t.map(t=>t||0)).map(t=>Math.max(...t)))},{lodash:76}],246:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));return e.blur=e.blur||n.blur,e.highThresholdRatio=e.highThresholdRatio||n.highThresholdRatio,e.lowThresholdRatio=e.lowThresholdRatio||n.lowThresholdRatio,{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,e,r,n){return[(t+e+r)/3,(t+e+r)/3,(t+e+r)/3,n]},extraManipulation:function(r){return r=t("ndarray-gaussian-filter")(r,e.blur),r=t("./EdgeUtils")(r,e.highThresholdRatio,e.lowThresholdRatio,e.inBrowser)},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./EdgeUtils":245,"./info.json":248,"ndarray-gaussian-filter":81}],247:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":246,"./info.json":248,dup:193}],248:[function(t,e,r){e.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. ",inputs:{blur:{type:"float",desc:"Amount of gaussian blur(Less blur gives more detail, typically 0-5)",default:2,min:0,max:5,step:.25},highThresholdRatio:{type:"float",desc:"The high threshold ratio for the image",default:.2,min:0,max:1,step:.25},lowThresholdRatio:{type:"float",desc:"The low threshold value for the image",default:.15,min:0,max:1,step:.05}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],249:[function(t,e,r){e.exports=function(e,r){return t("fisheyegl"),{options:e,draw:function(t,r){var n=this;if(e.inBrowser){if(document.querySelector("#image-sequencer-canvas"))var i=document.querySelector("#image-sequencer-canvas");else(i=document.createElement("canvas")).style.display="none",i.setAttribute("id","image-sequencer-canvas"),document.body.append(i);distorter=FisheyeGl({selector:"#image-sequencer-canvas"}),e.a=parseFloat(e.a)||distorter.lens.a,e.b=parseFloat(e.b)||distorter.lens.b,e.Fx=parseFloat(e.Fx)||distorter.lens.Fx,e.Fy=parseFloat(e.Fy)||distorter.lens.Fy,e.scale=parseFloat(e.scale)||distorter.lens.scale,e.x=parseFloat(e.x)||distorter.fov.x,e.y=parseFloat(e.y)||distorter.fov.y,distorter.lens.a=e.a,distorter.lens.b=e.b,distorter.lens.Fx=e.Fx,distorter.lens.Fy=e.Fy,distorter.lens.scale=e.scale,distorter.fov.x=e.x,distorter.fov.y=e.y,distorter.setImage(t.src,function(){n.output={src:i.toDataURL(),format:t.format},r()})}else this.output=t,r()},output:void 0,UI:r}}},{fisheyegl:22}],250:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":249,"./info.json":251,dup:193}],251:[function(t,e,r){e.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:"Path to a WebGL fragment shader file",default:"(inbuilt)"},vertexSrc:{type:"PATH",desc:"Path to a WebGL vertex shader file",default:"(inbuilt)"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],252:[function(t,e,r){e.exports=function(e,r){e.Axis=e.Axis||t("./info.json").inputs.Axis.default;var n=t("get-pixels");return{options:e,draw:function(r,i,o){o.stop(!0),o.overrideFlag=!0;var a=this;return n(r.src,function(n,o){return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){a.output={src:e,format:r}},changePixel:function(t,e,r,n){return[t,e,r,n]},extraManipulation:function(r){if(!n)return t("./flipImage")(o,r,e.Axis);console.log(n)},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:i})})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./flipImage":253,"./info.json":255,"get-pixels":30}],253:[function(t,e,r){e.exports=function(t,e,r){var n=t.shape[0],i=t.shape[1];function o(r,n,i,o){e.set(r,n,0,t.get(i,o,0)),e.set(r,n,1,t.get(i,o,1)),e.set(r,n,2,t.get(i,o,2)),e.set(r,n,3,t.get(i,o,3))}return function(){if("horizontal"==r.toLowerCase())for(var t=0;tRead more",inputs:{adjustment:{type:"float",desc:"gamma correction (inverse of actual gamma factor) for the new image",default:.2,min:2,max:1}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],259:[function(t,e,r){(function(r){e.exports=function(e,n){return{options:e,draw:function(e,n,i){var o=t("get-pixels"),a=t("save-pixels"),s=this;o(e.src,function(t,i){if(t)console.log("Bad Image path");else{for(var o=i.shape[0],l=0;l

Select or drag in an image to overlay.

';$(t.ui).find(".details").prepend(i),sequencer.setInputStep({dropZoneSelector:"#"+n,fileInputSelector:"#"+n+" .file-input",onLoad:function(e){var r=e.target;t.options.imageUrl=r.result,t.options.url=r.result,sequencer.run(),setUrlHashParameter("steps",sequencer.toString())}}),$(t.ui).find(".btn-save").on("click",function(){var e=$(t.ui).find(".det input").val();t.options.imageUrl=e,sequencer.run()})}}}},{}],267:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":265,"./info.json":268,dup:193}],268:[function(t,e,r){e.exports={name:"Import Image",description:"Import a new image and replace the original with it. Future versions may enable a blend mode. Specify an image by URL or by file selector.",url:"https://github.com/publiclab/image-sequencer/tree/master/MODULES.md",inputs:{url:{type:"string",desc:"URL of image to import",default:"./images/monarch.png"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],269:[function(t,e,r){e.exports=function(e,r){if(e.step.inBrowser)var n=t("./Ui.js")(e.step,r);var i=t("./../../util/getDefaults.js")(t("./info.json"));return e.filter=e.filter||i.filter,{options:e,draw:function(r,i,o){o.stop(!0),o.overrideFlag=!0;var a=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){a.output={src:e,format:r}},changePixel:function(t,r,n,i){if("red"==e.filter)var o=(n-t)/(1*n+t);"blue"==e.filter&&(o=(t-n)/(1*n+t));var a=255*(o+1)/2;return[a,a,a,i]},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:function(){e.step.inBrowser&&n.setup(),i()}})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./Ui.js":270,"./info.json":272}],270:[function(t,e,r){e.exports=function(t,e){return{setup:function(){var e=$(t.imgElement);e.mousemove(function(t){var r=document.createElement("canvas");r.width=e.width(),r.height=e.height(),r.getContext("2d").drawImage(this,0,0);var n=$(this).offset(),i=t.pageX-n.left,o=t.pageY-n.top,a=r.getContext("2d").getImageData(i,o,1,1).data[0];a=(a=a/127.5-1).toFixed(2),e[0].title="NDVI: "+a})}}}},{}],271:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":269,"./info.json":272,dup:193}],272:[function(t,e,r){e.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"]}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],273:[function(t,e,r){e.exports=t("../../util/createMetaModule.js")(function(t){return[{name:"ndvi",options:{}},{name:"colormap",options:{colormap:t.colormap}}]},{infoJson:t("./info.json")})[0]},{"../../util/createMetaModule.js":312,"./info.json":275}],274:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":273,"./info.json":275,dup:193}],275:[function(t,e,r){e.exports={name:"NDVI-Colormap",description:"Sequentially Applies NDVI and Colormap steps",inputs:{},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md"}},{}],276:[function(t,e,r){e.exports=function(e,r,n){var i=t("./../../util/getDefaults.js")(t("./info.json"));return e.x=e.x||i.x,e.y=e.y||i.y,{options:e,draw:function(r,n,i){e.offset=e.offset||-2,i.stop(!0),i.overrideFlag=!0;var o=this;t("../../util/ParseInputCoordinates")(e,{src:r.src,x:{valInp:e.x,type:"horizontal"},y:{valInp:e.y,type:"vertical"}},function(t,e){t.x=parseInt(e.x.valInp),t.y=parseInt(e.y.valInp)});var a=this.getStep(e.offset).image,s=this.getOutput(e.offset);t("get-pixels")(r.src,function(r,i){return e.secondImagePixels=i,t("../_nomodule/PixelManipulation.js")(s,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,r,n,i,o,a){var s=e.secondImagePixels;return o>=e.x&&o=e.y&&a=p*w&&e.get(t,r,0)<=p*b&&e.get(t,r,1)>=d*w&&e.get(t,r,1)<=d*b&&e.get(t,r,2)>=g*w&&e.get(t,r,2)<=g*b&&e.get(t,r,3)>=m*w&&e.get(t,r,3)<=m*b}for(u=u.split(" ");_.length;)if(k(i=v.pop(),n=_.pop())){o=a=n;do{o-=1}while(k(i,o)&&o>=0);do{a+=1}while(k(i,a)&&a=o*c&&t<=o*u&&e>=a*c&&e<=a*u&&r>=s*c&&r<=s*u}for(var h=0;ha&&(a=f,s=l)}return s}(n));for(var c=0;c<=u;c+=4)e.data[c]=e.data[c]"40000"?"40000":e.temperature,i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},extraManipulation:function(t){let r,n,i,o=parseInt(e.temperature);(o/=100)<=66?(r=255,n=Math.min(Math.max(99.4708025861*Math.log(o)-161.1195681661,0),255)):(r=Math.min(Math.max(329.698727446*Math.pow(o-60,-.1332047592),0),255),n=Math.min(Math.max(288.1221695283*Math.pow(o-60,-.0755148492),0),255)),o>=66?i=255:o<=19?i=0:(i=o-10,i=Math.min(Math.max(138.5177312231*Math.log(i)-305.0447927307,0),255));for(let e=0;e0?n-4:n,f=0;f>16&255,s[l++]=e>>8&255,s[l++]=255&e;2===a&&(e=i[t.charCodeAt(f)]<<2|i[t.charCodeAt(f+1)]>>4,s[l++]=255&e);1===a&&(e=i[t.charCodeAt(f)]<<10|i[t.charCodeAt(f+1)]<<4|i[t.charCodeAt(f+2)]>>2,s[l++]=e>>8&255,s[l++]=255&e);return s},r.fromByteArray=function(t){for(var e,r=t.length,i=r%3,o=[],a=0,s=r-i;as?s:a+16383));1===i?(e=t[r-1],o.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],o.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return o.join("")};for(var n=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,l=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,r){for(var i,o,a=[],s=e;s>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},{}],2:[function(t,e,r){"use strict";"use restrict";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}r.INT_BITS=32,r.INT_MAX=2147483647,r.INT_MIN=-1<<31,r.sign=function(t){return(t>0)-(t<0)},r.abs=function(t){var e=t>>31;return(t^e)-e},r.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},r.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},r.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},r.countTrailingZeros=n,r.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1},r.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},r.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var i=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<>>8&255]<<16|i[t>>>16&255]<<8|i[t>>>24&255]},r.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},r.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},r.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},r.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},r.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},{}],3:[function(t,e,r){(function(t,n,i){!function(t){if("object"==typeof r&&void 0!==e)e.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var i;"undefined"!=typeof window?i=window:void 0!==n?i=n:"undefined"!=typeof self&&(i=self),i.Promise=t()}}(function(){var e,r,o;return function t(e,r,n){function i(a,s){if(!r[a]){if(!e[a]){var l="function"==typeof _dereq_&&_dereq_;if(!s&&l)return l(a,!0);if(o)return o(a,!0);var u=new Error("Cannot find module '"+a+"'");throw u.code="MODULE_NOT_FOUND",u}var c=r[a]={exports:{}};e[a][0].call(c.exports,function(t){var r=e[a][1][t];return i(r||t)},c,c.exports,t,e,r,n)}return r[a].exports}for(var o="function"==typeof _dereq_&&_dereq_,a=0;a0;)p(t)}function p(t){var e=t.shift();if("function"!=typeof e)e._settlePromises();else{var r=t.shift(),n=t.shift();e.call(r,n)}}l.prototype.setScheduler=function(t){var e=this._schedule;return this._schedule=t,this._customScheduler=!0,e},l.prototype.hasCustomScheduler=function(){return this._customScheduler},l.prototype.enableTrampoline=function(){this._trampolineEnabled=!0},l.prototype.disableTrampolineIfNecessary=function(){s.hasDevTools&&(this._trampolineEnabled=!1)},l.prototype.haveItemsQueued=function(){return this._isTickUsed||this._haveDrainedQueues},l.prototype.fatalError=function(e,r){r?(t.stderr.write("Fatal "+(e instanceof Error?e.stack:e)+"\n"),t.exit(2)):this.throwLater(e)},l.prototype.throwLater=function(t,e){if(1===arguments.length&&(e=t,t=function(){throw e}),"undefined"!=typeof setTimeout)setTimeout(function(){t(e)},0);else try{this._schedule(function(){t(e)})}catch(t){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}},s.hasDevTools?(l.prototype.invokeLater=function(t,e,r){this._trampolineEnabled?u.call(this,t,e,r):this._schedule(function(){setTimeout(function(){t.call(e,r)},100)})},l.prototype.invoke=function(t,e,r){this._trampolineEnabled?c.call(this,t,e,r):this._schedule(function(){t.call(e,r)})},l.prototype.settlePromises=function(t){this._trampolineEnabled?f.call(this,t):this._schedule(function(){t._settlePromises()})}):(l.prototype.invokeLater=u,l.prototype.invoke=c,l.prototype.settlePromises=f),l.prototype._drainQueues=function(){h(this._normalQueue),this._reset(),this._haveDrainedQueues=!0,h(this._lateQueue)},l.prototype._queueTick=function(){this._isTickUsed||(this._isTickUsed=!0,this._schedule(this.drainQueues))},l.prototype._reset=function(){this._isTickUsed=!1},r.exports=l,r.exports.firstLineError=i},{"./queue":26,"./schedule":29,"./util":36}],3:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){var i=!1,o=function(t,e){this._reject(e)},a=function(t,e){e.promiseRejectionQueued=!0,e.bindingPromise._then(o,o,null,this,t)},s=function(t,e){0==(50397184&this._bitField)&&this._resolveCallback(e.target)},l=function(t,e){e.promiseRejectionQueued||this._reject(t)};t.prototype.bind=function(o){i||(i=!0,t.prototype._propagateFrom=n.propagateFromFunction(),t.prototype._boundValue=n.boundValueFunction());var u=r(o),c=new t(e);c._propagateFrom(this,1);var f=this._target();if(c._setBoundTo(u),u instanceof t){var h={promiseRejectionQueued:!1,promise:c,target:f,bindingPromise:u};f._then(e,a,void 0,c,h),u._then(s,l,void 0,c,h),c._setOnCancel(u)}else c._resolveCallback(f);return c},t.prototype._setBoundTo=function(t){void 0!==t?(this._bitField=2097152|this._bitField,this._boundTo=t):this._bitField=-2097153&this._bitField},t.prototype._isBound=function(){return 2097152==(2097152&this._bitField)},t.bind=function(e,r){return t.resolve(r).bind(e)}}},{}],4:[function(t,e,r){"use strict";var n;"undefined"!=typeof Promise&&(n=Promise);var i=t("./promise")();i.noConflict=function(){try{Promise===i&&(Promise=n)}catch(t){}return i},e.exports=i},{"./promise":22}],5:[function(t,e,r){"use strict";var n=Object.create;if(n){var i=n(null),o=n(null);i[" size"]=o[" size"]=0}e.exports=function(e){var r,n=t("./util"),i=n.canEvaluate;n.isIdentifier;function o(t,r){var i;if(null!=t&&(i=t[r]),"function"!=typeof i){var o="Object "+n.classString(t)+" has no method '"+n.toString(r)+"'";throw new e.TypeError(o)}return i}function a(t){return o(t,this.pop()).apply(t,this)}function s(t){return t[this]}function l(t){var e=+this;return e<0&&(e=Math.max(0,e+t.length)),t[e]}e.prototype.call=function(t){var e=[].slice.call(arguments,1);return e.push(t),this._then(a,void 0,void 0,e,void 0)},e.prototype.get=function(t){var e;if("number"==typeof t)e=l;else if(i){var n=r(t);e=null!==n?n:s}else e=s;return this._then(e,void 0,void 0,t,void 0)}}},{"./util":36}],6:[function(t,e,r){"use strict";e.exports=function(e,r,n,i){var o=t("./util"),a=o.tryCatch,s=o.errorObj,l=e._async;e.prototype.break=e.prototype.cancel=function(){if(!i.cancellation())return this._warn("cancellation is disabled");for(var t=this,e=t;t._isCancellable();){if(!t._cancelBy(e)){e._isFollowing()?e._followee().cancel():e._cancelBranched();break}var r=t._cancellationParent;if(null==r||!r._isCancellable()){t._isFollowing()?t._followee().cancel():t._cancelBranched();break}t._isFollowing()&&t._followee().cancel(),t._setWillBeCancelled(),e=t,t=r}},e.prototype._branchHasCancelled=function(){this._branchesRemainingToCancel--},e.prototype._enoughBranchesHaveCancelled=function(){return void 0===this._branchesRemainingToCancel||this._branchesRemainingToCancel<=0},e.prototype._cancelBy=function(t){return t===this?(this._branchesRemainingToCancel=0,this._invokeOnCancel(),!0):(this._branchHasCancelled(),!!this._enoughBranchesHaveCancelled()&&(this._invokeOnCancel(),!0))},e.prototype._cancelBranched=function(){this._enoughBranchesHaveCancelled()&&this._cancel()},e.prototype._cancel=function(){this._isCancellable()&&(this._setCancelled(),l.invoke(this._cancelPromises,this,void 0))},e.prototype._cancelPromises=function(){this._length()>0&&this._settlePromises()},e.prototype._unsetOnCancel=function(){this._onCancelField=void 0},e.prototype._isCancellable=function(){return this.isPending()&&!this._isCancelled()},e.prototype.isCancellable=function(){return this.isPending()&&!this.isCancelled()},e.prototype._doInvokeOnCancel=function(t,e){if(o.isArray(t))for(var r=0;r=0)return r[t]}return t.prototype._promiseCreated=function(){},t.prototype._pushContext=function(){},t.prototype._popContext=function(){return null},t._peekContext=t.prototype._peekContext=function(){},n.prototype._pushContext=function(){void 0!==this._trace&&(this._trace._promiseCreated=null,r.push(this._trace))},n.prototype._popContext=function(){if(void 0!==this._trace){var t=r.pop(),e=t._promiseCreated;return t._promiseCreated=null,e}return null},n.CapturedTrace=null,n.create=function(){if(e)return new n},n.deactivateLongStackTraces=function(){},n.activateLongStackTraces=function(){var r=t.prototype._pushContext,o=t.prototype._popContext,a=t._peekContext,s=t.prototype._peekContext,l=t.prototype._promiseCreated;n.deactivateLongStackTraces=function(){t.prototype._pushContext=r,t.prototype._popContext=o,t._peekContext=a,t.prototype._peekContext=s,t.prototype._promiseCreated=l,e=!1},e=!0,t.prototype._pushContext=n.prototype._pushContext,t.prototype._popContext=n.prototype._popContext,t._peekContext=t.prototype._peekContext=i,t.prototype._promiseCreated=function(){var t=this._peekContext();t&&null==t._promiseCreated&&(t._promiseCreated=this)}},n}},{}],9:[function(e,r,n){"use strict";r.exports=function(r,n){var i,o,a,s=r._getDomain,l=r._async,u=e("./errors").Warning,c=e("./util"),f=e("./es5"),h=c.canAttachTrace,p=/[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/,d=/\((?:timers\.js):\d+:\d+\)/,m=/[\/<\(](.+?):(\d+):(\d+)\)?\s*$/,g=null,v=null,_=!1,y=!(0==c.env("BLUEBIRD_DEBUG")),b=!(0==c.env("BLUEBIRD_WARNINGS")||!y&&!c.env("BLUEBIRD_WARNINGS")),w=!(0==c.env("BLUEBIRD_LONG_STACK_TRACES")||!y&&!c.env("BLUEBIRD_LONG_STACK_TRACES")),k=0!=c.env("BLUEBIRD_W_FORGOTTEN_RETURN")&&(b||!!c.env("BLUEBIRD_W_FORGOTTEN_RETURN"));r.prototype.suppressUnhandledRejections=function(){var t=this._target();t._bitField=-1048577&t._bitField|524288},r.prototype._ensurePossibleRejectionHandled=function(){if(0==(524288&this._bitField)){this._setRejectionIsUnhandled();var t=this;setTimeout(function(){t._notifyUnhandledRejection()},1)}},r.prototype._notifyUnhandledRejectionIsHandled=function(){G("rejectionHandled",i,void 0,this)},r.prototype._setReturnedNonUndefined=function(){this._bitField=268435456|this._bitField},r.prototype._returnedNonUndefined=function(){return 0!=(268435456&this._bitField)},r.prototype._notifyUnhandledRejection=function(){if(this._isRejectionUnhandled()){var t=this._settledValue();this._setUnhandledRejectionIsNotified(),G("unhandledRejection",o,t,this)}},r.prototype._setUnhandledRejectionIsNotified=function(){this._bitField=262144|this._bitField},r.prototype._unsetUnhandledRejectionIsNotified=function(){this._bitField=-262145&this._bitField},r.prototype._isUnhandledRejectionNotified=function(){return(262144&this._bitField)>0},r.prototype._setRejectionIsUnhandled=function(){this._bitField=1048576|this._bitField},r.prototype._unsetRejectionIsUnhandled=function(){this._bitField=-1048577&this._bitField,this._isUnhandledRejectionNotified()&&(this._unsetUnhandledRejectionIsNotified(),this._notifyUnhandledRejectionIsHandled())},r.prototype._isRejectionUnhandled=function(){return(1048576&this._bitField)>0},r.prototype._warn=function(t,e,r){return z(t,e,r||this)},r.onPossiblyUnhandledRejection=function(t){var e=s();o="function"==typeof t?null===e?t:c.domainBind(e,t):void 0},r.onUnhandledRejectionHandled=function(t){var e=s();i="function"==typeof t?null===e?t:c.domainBind(e,t):void 0};var x=function(){};r.longStackTraces=function(){if(l.haveItemsQueued()&&!Q.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");if(!Q.longStackTraces&&Z()){var t=r.prototype._captureStackTrace,e=r.prototype._attachExtraTrace,i=r.prototype._dereferenceTrace;Q.longStackTraces=!0,x=function(){if(l.haveItemsQueued()&&!Q.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");r.prototype._captureStackTrace=t,r.prototype._attachExtraTrace=e,r.prototype._dereferenceTrace=i,n.deactivateLongStackTraces(),l.enableTrampoline(),Q.longStackTraces=!1},r.prototype._captureStackTrace=D,r.prototype._attachExtraTrace=N,r.prototype._dereferenceTrace=U,n.activateLongStackTraces(),l.disableTrampolineIfNecessary()}},r.hasLongStackTraces=function(){return Q.longStackTraces&&Z()};var B=function(){try{if("function"==typeof CustomEvent){var t=new CustomEvent("CustomEvent");return c.global.dispatchEvent(t),function(t,e){var r={detail:e,cancelable:!0};f.defineProperty(r,"promise",{value:e.promise}),f.defineProperty(r,"reason",{value:e.reason});var n=new CustomEvent(t.toLowerCase(),r);return!c.global.dispatchEvent(n)}}if("function"==typeof Event){t=new Event("CustomEvent");return c.global.dispatchEvent(t),function(t,e){var r=new Event(t.toLowerCase(),{cancelable:!0});return r.detail=e,f.defineProperty(r,"promise",{value:e.promise}),f.defineProperty(r,"reason",{value:e.reason}),!c.global.dispatchEvent(r)}}return(t=document.createEvent("CustomEvent")).initCustomEvent("testingtheevent",!1,!0,{}),c.global.dispatchEvent(t),function(t,e){var r=document.createEvent("CustomEvent");return r.initCustomEvent(t.toLowerCase(),!1,!0,e),!c.global.dispatchEvent(r)}}catch(t){}return function(){return!1}}(),C=c.isNode?function(){return t.emit.apply(t,arguments)}:c.global?function(t){var e="on"+t.toLowerCase(),r=c.global[e];return!!r&&(r.apply(c.global,[].slice.call(arguments,1)),!0)}:function(){return!1};function E(t,e){return{promise:e}}var P={promiseCreated:E,promiseFulfilled:E,promiseRejected:E,promiseResolved:E,promiseCancelled:E,promiseChained:function(t,e,r){return{promise:e,child:r}},warning:function(t,e){return{warning:e}},unhandledRejection:function(t,e,r){return{reason:e,promise:r}},rejectionHandled:E},j=function(t){var e=!1;try{e=C.apply(null,arguments)}catch(t){l.throwLater(t),e=!0}var r=!1;try{r=B(t,P[t].apply(null,arguments))}catch(t){l.throwLater(t),r=!0}return r||e};function S(){return!1}function T(t,e,r){var n=this;try{t(e,r,function(t){if("function"!=typeof t)throw new TypeError("onCancel must be a function, got: "+c.toString(t));n._attachCancellationCallback(t)})}catch(t){return t}}function M(t){if(!this._isCancellable())return this;var e=this._onCancel();void 0!==e?c.isArray(e)?e.push(t):this._setOnCancel([e,t]):this._setOnCancel(t)}function A(){return this._onCancelField}function I(t){this._onCancelField=t}function R(){this._cancellationParent=void 0,this._onCancelField=void 0}function L(t,e){if(0!=(1&e)){this._cancellationParent=t;var r=t._branchesRemainingToCancel;void 0===r&&(r=0),t._branchesRemainingToCancel=r+1}0!=(2&e)&&t._isBound()&&this._setBoundTo(t._boundTo)}r.config=function(t){if("longStackTraces"in(t=Object(t))&&(t.longStackTraces?r.longStackTraces():!t.longStackTraces&&r.hasLongStackTraces()&&x()),"warnings"in t){var e=t.warnings;Q.warnings=!!e,k=Q.warnings,c.isObject(e)&&"wForgottenReturn"in e&&(k=!!e.wForgottenReturn)}if("cancellation"in t&&t.cancellation&&!Q.cancellation){if(l.haveItemsQueued())throw new Error("cannot enable cancellation after promises are in use");r.prototype._clearCancellationData=R,r.prototype._propagateFrom=L,r.prototype._onCancel=A,r.prototype._setOnCancel=I,r.prototype._attachCancellationCallback=M,r.prototype._execute=T,F=L,Q.cancellation=!0}return"monitoring"in t&&(t.monitoring&&!Q.monitoring?(Q.monitoring=!0,r.prototype._fireEvent=j):!t.monitoring&&Q.monitoring&&(Q.monitoring=!1,r.prototype._fireEvent=S)),r},r.prototype._fireEvent=S,r.prototype._execute=function(t,e,r){try{t(e,r)}catch(t){return t}},r.prototype._onCancel=function(){},r.prototype._setOnCancel=function(t){},r.prototype._attachCancellationCallback=function(t){},r.prototype._captureStackTrace=function(){},r.prototype._attachExtraTrace=function(){},r.prototype._dereferenceTrace=function(){},r.prototype._clearCancellationData=function(){},r.prototype._propagateFrom=function(t,e){};var F=function(t,e){0!=(2&e)&&t._isBound()&&this._setBoundTo(t._boundTo)};function O(){var t=this._boundTo;return void 0!==t&&t instanceof r?t.isFulfilled()?t.value():void 0:t}function D(){this._trace=new J(this._peekContext())}function N(t,e){if(h(t)){var r=this._trace;if(void 0!==r&&e&&(r=r._parent),void 0!==r)r.attachExtraTrace(t);else if(!t.__stackCleaned__){var n=V(t);c.notEnumerableProp(t,"stack",n.message+"\n"+n.stack.join("\n")),c.notEnumerableProp(t,"__stackCleaned__",!0)}}}function U(){this._trace=void 0}function z(t,e,n){if(Q.warnings){var i,o=new u(t);if(e)n._attachExtraTrace(o);else if(Q.longStackTraces&&(i=r._peekContext()))i.attachExtraTrace(o);else{var a=V(o);o.stack=a.message+"\n"+a.stack.join("\n")}j("warning",o)||H(o,"",!0)}}function q(t){for(var e=[],r=0;r0?function(t){for(var e=t.stack.replace(/\s+$/g,"").split("\n"),r=0;r0&&"SyntaxError"!=t.name&&(e=e.slice(r)),e}(t):[" (No stack trace)"],{message:r,stack:"SyntaxError"==t.name?e:q(e)}}function H(t,e,r){if("undefined"!=typeof console){var n;if(c.isObject(t)){var i=t.stack;n=e+v(i,t)}else n=e+String(t);"function"==typeof a?a(n,r):"function"!=typeof console.log&&"object"!=typeof console.log||console.log(n)}}function G(t,e,r,n){var i=!1;try{"function"==typeof e&&(i=!0,"rejectionHandled"===t?e(n):e(r,n))}catch(t){l.throwLater(t)}"unhandledRejection"===t?j(t,r,n)||i||H(r,"Unhandled rejection "):j(t,n)}function W(t){var e;if("function"==typeof t)e="[function "+(t.name||"anonymous")+"]";else{e=t&&"function"==typeof t.toString?t.toString():c.toString(t);if(/\[object [a-zA-Z0-9$_]+\]/.test(e))try{e=JSON.stringify(t)}catch(t){}0===e.length&&(e="(empty array)")}return"(<"+function(t){if(t.length<41)return t;return t.substr(0,38)+"..."}(e)+">, no stack trace)"}function Z(){return"function"==typeof K}var Y=function(){return!1},X=/[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/;function $(t){var e=t.match(X);if(e)return{fileName:e[1],line:parseInt(e[2],10)}}function J(t){this._parent=t,this._promisesCreated=0;var e=this._length=1+(void 0===t?0:t._length);K(this,J),e>32&&this.uncycle()}c.inherits(J,Error),n.CapturedTrace=J,J.prototype.uncycle=function(){var t=this._length;if(!(t<2)){for(var e=[],r={},n=0,i=this;void 0!==i;++n)e.push(i),i=i._parent;for(n=(t=this._length=n)-1;n>=0;--n){var o=e[n].stack;void 0===r[o]&&(r[o]=n)}for(n=0;n0&&(e[a-1]._parent=void 0,e[a-1]._length=1),e[n]._parent=void 0,e[n]._length=1;var s=n>0?e[n-1]:this;a=0;--u)e[u]._length=l,l++;return}}}},J.prototype.attachExtraTrace=function(t){if(!t.__stackCleaned__){this.uncycle();for(var e=V(t),r=e.message,n=[e.stack],i=this;void 0!==i;)n.push(q(i.stack.split("\n"))),i=i._parent;!function(t){for(var e=t[0],r=1;r=0;--s)if(n[s]===o){a=s;break}for(s=a;s>=0;--s){var l=n[s];if(e[i]!==l)break;e.pop(),i--}e=n}}(n),function(t){for(var e=0;e=0)return g=/@/,v=e,_=!0,function(t){t.stack=(new Error).stack};try{throw new Error}catch(t){n="stack"in t}return"stack"in i||!n||"number"!=typeof Error.stackTraceLimit?(v=function(t,e){return"string"==typeof t?t:"object"!=typeof e&&"function"!=typeof e||void 0===e.name||void 0===e.message?W(e):e.toString()},null):(g=t,v=e,function(t){Error.stackTraceLimit+=6;try{throw new Error}catch(e){t.stack=e.stack}Error.stackTraceLimit-=6})}();"undefined"!=typeof console&&void 0!==console.warn&&(a=function(t){console.warn(t)},c.isNode&&t.stderr.isTTY?a=function(t,e){var r=e?"":"";console.warn(r+t+"\n")}:c.isNode||"string"!=typeof(new Error).stack||(a=function(t,e){console.warn("%c"+t,e?"color: darkorange":"color: red")}));var Q={warnings:b,longStackTraces:!1,cancellation:!1,monitoring:!1};return w&&r.longStackTraces(),{longStackTraces:function(){return Q.longStackTraces},warnings:function(){return Q.warnings},cancellation:function(){return Q.cancellation},monitoring:function(){return Q.monitoring},propagateFromFunction:function(){return F},boundValueFunction:function(){return O},checkForgottenReturns:function(t,e,r,n,i){if(void 0===t&&null!==e&&k){if(void 0!==i&&i._returnedNonUndefined())return;if(0==(65535&n._bitField))return;r&&(r+=" ");var o="",a="";if(e._trace){for(var s=e._trace.stack.split("\n"),l=q(s),u=l.length-1;u>=0;--u){var c=l[u];if(!d.test(c)){var f=c.match(m);f&&(o="at "+f[1]+":"+f[2]+":"+f[3]+" ");break}}if(l.length>0){var h=l[0];for(u=0;u0&&(a="\n"+s[u-1]);break}}}var p="a promise was created in a "+r+"handler "+o+"but was not returned from it, see http://goo.gl/rRqMUw"+a;n._warn(p,!0,e)}},setBounds:function(t,e){if(Z()){for(var r,n,i=t.stack.split("\n"),o=e.stack.split("\n"),a=-1,s=-1,l=0;l=s||(Y=function(t){if(p.test(t))return!0;var e=$(t);return!!(e&&e.fileName===r&&a<=e.line&&e.line<=s)})}},warn:z,deprecated:function(t,e){var r=t+" is deprecated and will be removed in a future version.";return e&&(r+=" Use "+e+" instead."),z(r)},CapturedTrace:J,fireDomEvent:B,fireGlobalEvent:C}}},{"./errors":12,"./es5":13,"./util":36}],10:[function(t,e,r){"use strict";e.exports=function(t){function e(){return this.value}function r(){throw this.reason}t.prototype.return=t.prototype.thenReturn=function(r){return r instanceof t&&r.suppressUnhandledRejections(),this._then(e,void 0,void 0,{value:r},void 0)},t.prototype.throw=t.prototype.thenThrow=function(t){return this._then(r,void 0,void 0,{reason:t},void 0)},t.prototype.catchThrow=function(t){if(arguments.length<=1)return this._then(void 0,r,void 0,{reason:t},void 0);var e=arguments[1];return this.caught(t,function(){throw e})},t.prototype.catchReturn=function(r){if(arguments.length<=1)return r instanceof t&&r.suppressUnhandledRejections(),this._then(void 0,e,void 0,{value:r},void 0);var n=arguments[1];n instanceof t&&n.suppressUnhandledRejections();return this.caught(r,function(){return n})}}},{}],11:[function(t,e,r){"use strict";e.exports=function(t,e){var r=t.reduce,n=t.all;function i(){return n(this)}t.prototype.each=function(t){return r(this,t,e,0)._then(i,void 0,void 0,this,void 0)},t.prototype.mapSeries=function(t){return r(this,t,e,e)},t.each=function(t,n){return r(t,n,e,0)._then(i,void 0,void 0,t,void 0)},t.mapSeries=function(t,n){return r(t,n,e,e)}}},{}],12:[function(t,e,r){"use strict";var n,i,o=t("./es5"),a=o.freeze,s=t("./util"),l=s.inherits,u=s.notEnumerableProp;function c(t,e){function r(n){if(!(this instanceof r))return new r(n);u(this,"message","string"==typeof n?n:e),u(this,"name",t),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):Error.call(this)}return l(r,Error),r}var f=c("Warning","warning"),h=c("CancellationError","cancellation error"),p=c("TimeoutError","timeout error"),d=c("AggregateError","aggregate error");try{n=TypeError,i=RangeError}catch(t){n=c("TypeError","type error"),i=c("RangeError","range error")}for(var m="join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "),g=0;g1?t.cancelPromise._reject(e):t.cancelPromise._cancel(),t.cancelPromise=null,!0)}function f(){return p.call(this,this.promise._target()._settledValue())}function h(t){if(!c(this,t))return a.e=t,a}function p(t){var i=this.promise,s=this.handler;if(!this.called){this.called=!0;var l=this.isFinallyHandler()?s.call(i._boundValue()):s.call(i._boundValue(),t);if(l===n)return l;if(void 0!==l){i._setReturnedNonUndefined();var p=r(l,i);if(p instanceof e){if(null!=this.cancelPromise){if(p._isCancelled()){var d=new o("late cancellation observer");return i._attachExtraTrace(d),a.e=d,a}p.isPending()&&p._attachCancellationCallback(new u(this))}return p._then(f,h,void 0,this,void 0)}}}return i.isRejected()?(c(this),a.e=t,a):(c(this),t)}return l.prototype.isFinallyHandler=function(){return 0===this.type},u.prototype._resultCancelled=function(){c(this.finallyHandler)},e.prototype._passThrough=function(t,e,r,n){return"function"!=typeof t?this.then():this._then(r,n,void 0,new l(this,e,t),void 0)},e.prototype.lastly=e.prototype.finally=function(t){return this._passThrough(t,0,p,p)},e.prototype.tap=function(t){return this._passThrough(t,1,p)},e.prototype.tapCatch=function(t){var r=arguments.length;if(1===r)return this._passThrough(t,1,void 0,p);var n,o=new Array(r-1),a=0;for(n=0;n0&&"function"==typeof arguments[e]&&(t=arguments[e]);var n=[].slice.call(arguments);t&&n.pop();var i=new r(n).promise();return void 0!==t?i.spread(t):i}}},{"./util":36}],18:[function(t,e,r){"use strict";e.exports=function(e,r,n,i,o,a){var s=e._getDomain,l=t("./util"),u=l.tryCatch,c=l.errorObj,f=e._async;function h(t,e,r,n){this.constructor$(t),this._promise._captureStackTrace();var i=s();this._callback=null===i?e:l.domainBind(i,e),this._preservedValues=n===o?new Array(this.length()):null,this._limit=r,this._inFlight=0,this._queue=[],f.invoke(this._asyncInit,this,void 0)}function p(t,r,i,o){if("function"!=typeof r)return n("expecting a function but got "+l.classString(r));var a=0;if(void 0!==i){if("object"!=typeof i||null===i)return e.reject(new TypeError("options argument must be an object but it is "+l.classString(i)));if("number"!=typeof i.concurrency)return e.reject(new TypeError("'concurrency' must be a number but it is "+l.classString(i.concurrency)));a=i.concurrency}return new h(t,r,a="number"==typeof a&&isFinite(a)&&a>=1?a:0,o).promise()}l.inherits(h,r),h.prototype._asyncInit=function(){this._init$(void 0,-2)},h.prototype._init=function(){},h.prototype._promiseFulfilled=function(t,r){var n=this._values,o=this.length(),s=this._preservedValues,l=this._limit;if(r<0){if(n[r=-1*r-1]=t,l>=1&&(this._inFlight--,this._drainQueue(),this._isResolved()))return!0}else{if(l>=1&&this._inFlight>=l)return n[r]=t,this._queue.push(r),!1;null!==s&&(s[r]=t);var f=this._promise,h=this._callback,p=f._boundValue();f._pushContext();var d=u(h).call(p,t,r,o),m=f._popContext();if(a.checkForgottenReturns(d,m,null!==s?"Promise.filter":"Promise.map",f),d===c)return this._reject(d.e),!0;var g=i(d,this._promise);if(g instanceof e){var v=(g=g._target())._bitField;if(0==(50397184&v))return l>=1&&this._inFlight++,n[r]=g,g._proxy(this,-1*(r+1)),!1;if(0==(33554432&v))return 0!=(16777216&v)?(this._reject(g._reason()),!0):(this._cancel(),!0);d=g._value()}n[r]=d}return++this._totalResolved>=o&&(null!==s?this._filter(n,s):this._resolve(n),!0)},h.prototype._drainQueue=function(){for(var t=this._queue,e=this._limit,r=this._values;t.length>0&&this._inFlight1){o.deprecated("calling Promise.try with more than 1 argument");var u=arguments[1],c=arguments[2];n=a.isArray(u)?s(t).apply(c,u):s(t).call(c,u)}else n=s(t)();var f=l._popContext();return o.checkForgottenReturns(n,f,"Promise.try",l),l._resolveFromSyncValue(n),l},e.prototype._resolveFromSyncValue=function(t){t===a.errorObj?this._rejectCallback(t.e,!1):this._resolveCallback(t,!0)}}},{"./util":36}],20:[function(t,e,r){"use strict";var n=t("./util"),i=n.maybeWrapAsError,o=t("./errors").OperationalError,a=t("./es5");var s=/^(?:name|message|stack|cause)$/;function l(t){var e;if(function(t){return t instanceof Error&&a.getPrototypeOf(t)===Error.prototype}(t)){(e=new o(t)).name=t.name,e.message=t.message,e.stack=t.stack;for(var r=a.keys(t),i=0;i1){var r,n=new Array(e-1),i=0;for(r=0;r0&&"function"!=typeof t&&"function"!=typeof e){var r=".then() only accepts functions but was passed: "+u.classString(t);arguments.length>1&&(r+=", "+u.classString(e)),this._warn(r)}return this._then(t,e,void 0,void 0,void 0)},S.prototype.done=function(t,e){this._then(t,e,void 0,void 0,void 0)._setIsFinal()},S.prototype.spread=function(t){return"function"!=typeof t?o("expecting a function but got "+u.classString(t)):this.all()._then(t,void 0,void 0,v,void 0)},S.prototype.toJSON=function(){var t={isFulfilled:!1,isRejected:!1,fulfillmentValue:void 0,rejectionReason:void 0};return this.isFulfilled()?(t.fulfillmentValue=this.value(),t.isFulfilled=!0):this.isRejected()&&(t.rejectionReason=this.reason(),t.isRejected=!0),t},S.prototype.all=function(){return arguments.length>0&&this._warn(".all() was passed arguments but it does not take any"),new b(this).promise()},S.prototype.error=function(t){return this.caught(u.originatesFromRejection,t)},S.getNewLibraryCopy=r.exports,S.is=function(t){return t instanceof S},S.fromNode=S.fromCallback=function(t){var e=new S(g);e._captureStackTrace();var r=arguments.length>1&&!!Object(arguments[1]).multiArgs,n=j(t)(E(e,r));return n===P&&e._rejectCallback(n.e,!0),e._isFateSealed()||e._setAsyncGuaranteed(),e},S.all=function(t){return new b(t).promise()},S.cast=function(t){var e=y(t);return e instanceof S||((e=new S(g))._captureStackTrace(),e._setFulfilled(),e._rejectionHandler0=t),e},S.resolve=S.fulfilled=S.cast,S.reject=S.rejected=function(t){var e=new S(g);return e._captureStackTrace(),e._rejectCallback(t,!0),e},S.setScheduler=function(t){if("function"!=typeof t)throw new d("expecting a function but got "+u.classString(t));return h.setScheduler(t)},S.prototype._then=function(t,e,r,n,i){var o=void 0!==i,a=o?i:new S(g),l=this._target(),c=l._bitField;o||(a._propagateFrom(this,3),a._captureStackTrace(),void 0===n&&0!=(2097152&this._bitField)&&(n=0!=(50397184&c)?this._boundValue():l===this?void 0:this._boundTo),this._fireEvent("promiseChained",this,a));var f=s();if(0!=(50397184&c)){var p,d,v=l._settlePromiseCtx;0!=(33554432&c)?(d=l._rejectionHandler0,p=t):0!=(16777216&c)?(d=l._fulfillmentHandler0,p=e,l._unsetRejectionIsUnhandled()):(v=l._settlePromiseLateCancellationObserver,d=new m("late cancellation observer"),l._attachExtraTrace(d),p=e),h.invoke(v,l,{handler:null===f?p:"function"==typeof p&&u.domainBind(f,p),promise:a,receiver:n,value:d})}else l._addCallbacks(t,e,a,n,f);return a},S.prototype._length=function(){return 65535&this._bitField},S.prototype._isFateSealed=function(){return 0!=(117506048&this._bitField)},S.prototype._isFollowing=function(){return 67108864==(67108864&this._bitField)},S.prototype._setLength=function(t){this._bitField=-65536&this._bitField|65535&t},S.prototype._setFulfilled=function(){this._bitField=33554432|this._bitField,this._fireEvent("promiseFulfilled",this)},S.prototype._setRejected=function(){this._bitField=16777216|this._bitField,this._fireEvent("promiseRejected",this)},S.prototype._setFollowing=function(){this._bitField=67108864|this._bitField,this._fireEvent("promiseResolved",this)},S.prototype._setIsFinal=function(){this._bitField=4194304|this._bitField},S.prototype._isFinal=function(){return(4194304&this._bitField)>0},S.prototype._unsetCancelled=function(){this._bitField=-65537&this._bitField},S.prototype._setCancelled=function(){this._bitField=65536|this._bitField,this._fireEvent("promiseCancelled",this)},S.prototype._setWillBeCancelled=function(){this._bitField=8388608|this._bitField},S.prototype._setAsyncGuaranteed=function(){h.hasCustomScheduler()||(this._bitField=134217728|this._bitField)},S.prototype._receiverAt=function(t){var e=0===t?this._receiver0:this[4*t-4+3];if(e!==l)return void 0===e&&this._isBound()?this._boundValue():e},S.prototype._promiseAt=function(t){return this[4*t-4+2]},S.prototype._fulfillmentHandlerAt=function(t){return this[4*t-4+0]},S.prototype._rejectionHandlerAt=function(t){return this[4*t-4+1]},S.prototype._boundValue=function(){},S.prototype._migrateCallback0=function(t){t._bitField;var e=t._fulfillmentHandler0,r=t._rejectionHandler0,n=t._promise0,i=t._receiverAt(0);void 0===i&&(i=l),this._addCallbacks(e,r,n,i,null)},S.prototype._migrateCallbackAt=function(t,e){var r=t._fulfillmentHandlerAt(e),n=t._rejectionHandlerAt(e),i=t._promiseAt(e),o=t._receiverAt(e);void 0===o&&(o=l),this._addCallbacks(r,n,i,o,null)},S.prototype._addCallbacks=function(t,e,r,n,i){var o=this._length();if(o>=65531&&(o=0,this._setLength(0)),0===o)this._promise0=r,this._receiver0=n,"function"==typeof t&&(this._fulfillmentHandler0=null===i?t:u.domainBind(i,t)),"function"==typeof e&&(this._rejectionHandler0=null===i?e:u.domainBind(i,e));else{var a=4*o-4;this[a+2]=r,this[a+3]=n,"function"==typeof t&&(this[a+0]=null===i?t:u.domainBind(i,t)),"function"==typeof e&&(this[a+1]=null===i?e:u.domainBind(i,e))}return this._setLength(o+1),o},S.prototype._proxy=function(t,e){this._addCallbacks(void 0,void 0,e,t,null)},S.prototype._resolveCallback=function(t,e){if(0==(117506048&this._bitField)){if(t===this)return this._rejectCallback(n(),!1);var r=y(t,this);if(!(r instanceof S))return this._fulfill(t);e&&this._propagateFrom(r,2);var i=r._target();if(i!==this){var o=i._bitField;if(0==(50397184&o)){var a=this._length();a>0&&i._migrateCallback0(this);for(var s=1;s>>16)){if(t===this){var r=n();return this._attachExtraTrace(r),this._reject(r)}this._setFulfilled(),this._rejectionHandler0=t,(65535&e)>0&&(0!=(134217728&e)?this._settlePromises():h.settlePromises(this),this._dereferenceTrace())}},S.prototype._reject=function(t){var e=this._bitField;if(!((117506048&e)>>>16)){if(this._setRejected(),this._fulfillmentHandler0=t,this._isFinal())return h.fatalError(t,u.isNode);(65535&e)>0?h.settlePromises(this):this._ensurePossibleRejectionHandled()}},S.prototype._fulfillPromises=function(t,e){for(var r=1;r0){if(0!=(16842752&t)){var r=this._fulfillmentHandler0;this._settlePromise0(this._rejectionHandler0,r,t),this._rejectPromises(e,r)}else{var n=this._rejectionHandler0;this._settlePromise0(this._fulfillmentHandler0,n,t),this._fulfillPromises(e,n)}this._setLength(0)}this._clearCancellationData()},S.prototype._settledValue=function(){var t=this._bitField;return 0!=(33554432&t)?this._rejectionHandler0:0!=(16777216&t)?this._fulfillmentHandler0:void 0},S.defer=S.pending=function(){return x.deprecated("Promise.defer","new Promise"),{promise:new S(g),resolve:T,reject:M}},u.notEnumerableProp(S,"_makeSelfResolutionError",n),e("./method")(S,g,y,o,x),e("./bind")(S,g,y,x),e("./cancel")(S,b,o,x),e("./direct_resolve")(S),e("./synchronous_inspection")(S),e("./join")(S,b,y,g,h,s),S.Promise=S,S.version="3.5.3",e("./map.js")(S,b,o,y,g,x),e("./call_get.js")(S),e("./using.js")(S,o,y,k,g,x),e("./timers.js")(S,g,x),e("./generators.js")(S,o,g,y,a,x),e("./nodeify.js")(S),e("./promisify.js")(S,g),e("./props.js")(S,b,y,o),e("./race.js")(S,g,y,o),e("./reduce.js")(S,b,o,y,g,x),e("./settle.js")(S,b,x),e("./some.js")(S,b,o),e("./filter.js")(S,g),e("./each.js")(S,g),e("./any.js")(S),u.toFastProperties(S),u.toFastProperties(S.prototype),A({a:1}),A({b:2}),A({c:3}),A(1),A(function(){}),A(void 0),A(!1),A(new S(g)),x.setBounds(f.firstLineError,u.lastLineError),S}},{"./any.js":1,"./async":2,"./bind":3,"./call_get.js":5,"./cancel":6,"./catch_filter":7,"./context":8,"./debuggability":9,"./direct_resolve":10,"./each.js":11,"./errors":12,"./es5":13,"./filter.js":14,"./finally":15,"./generators.js":16,"./join":17,"./map.js":18,"./method":19,"./nodeback":20,"./nodeify.js":21,"./promise_array":23,"./promisify.js":24,"./props.js":25,"./race.js":27,"./reduce.js":28,"./settle.js":30,"./some.js":31,"./synchronous_inspection":32,"./thenables":33,"./timers.js":34,"./using.js":35,"./util":36}],23:[function(t,e,r){"use strict";e.exports=function(e,r,n,i,o){var a=t("./util");a.isArray;function s(t){var n=this._promise=new e(r);t instanceof e&&n._propagateFrom(t,3),n._setOnCancel(this),this._values=t,this._length=0,this._totalResolved=0,this._init(void 0,-2)}return a.inherits(s,o),s.prototype.length=function(){return this._length},s.prototype.promise=function(){return this._promise},s.prototype._init=function t(r,o){var s=n(this._values,this._promise);if(s instanceof e){var l=(s=s._target())._bitField;if(this._values=s,0==(50397184&l))return this._promise._setAsyncGuaranteed(),s._then(t,this._reject,void 0,this,o);if(0==(33554432&l))return 0!=(16777216&l)?this._reject(s._reason()):this._cancel();s=s._value()}if(null!==(s=a.asArray(s)))0!==s.length?this._iterate(s):-5===o?this._resolveEmptyArray():this._resolve(function(t){switch(t){case-2:return[];case-3:return{};case-6:return new Map}}(o));else{var u=i("expecting an array or an iterable object but got "+a.classString(s)).reason();this._promise._rejectCallback(u,!1)}},s.prototype._iterate=function(t){var r=this.getActualLength(t.length);this._length=r,this._values=this.shouldCopyValues()?new Array(r):this._values;for(var i=this._promise,o=!1,a=null,s=0;s=this._length&&(this._resolve(this._values),!0)},s.prototype._promiseCancelled=function(){return this._cancel(),!0},s.prototype._promiseRejected=function(t){return this._totalResolved++,this._reject(t),!0},s.prototype._resultCancelled=function(){if(!this._isResolved()){var t=this._values;if(this._cancel(),t instanceof e)t.cancel();else for(var r=0;r=this._length){var r;if(this._isMap)r=function(t){for(var e=new o,r=t.length/2|0,n=0;n>1},e.prototype.props=function(){return f(this)},e.props=function(t){return f(t)}}},{"./es5":13,"./util":36}],26:[function(t,e,r){"use strict";function n(t){this._capacity=t,this._length=0,this._front=0}n.prototype._willBeOverCapacity=function(t){return this._capacity=this._length&&(this._resolve(this._values),!0)},o.prototype._promiseFulfilled=function(t,e){var r=new i;return r._bitField=33554432,r._settledValueField=t,this._promiseResolved(e,r)},o.prototype._promiseRejected=function(t,e){var r=new i;return r._bitField=16777216,r._settledValueField=t,this._promiseResolved(e,r)},e.settle=function(t){return n.deprecated(".settle()",".reflect()"),new o(t).promise()},e.prototype.settle=function(){return e.settle(this)}}},{"./util":36}],31:[function(t,e,r){"use strict";e.exports=function(e,r,n){var i=t("./util"),o=t("./errors").RangeError,a=t("./errors").AggregateError,s=i.isArray,l={};function u(t){this.constructor$(t),this._howMany=0,this._unwrap=!1,this._initialized=!1}function c(t,e){if((0|e)!==e||e<0)return n("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n");var r=new u(t),i=r.promise();return r.setHowMany(e),r.init(),i}i.inherits(u,r),u.prototype._init=function(){if(this._initialized)if(0!==this._howMany){this._init$(void 0,-5);var t=s(this._values);!this._isResolved()&&t&&this._howMany>this._canPossiblyFulfill()&&this._reject(this._getRangeError(this.length()))}else this._resolve([])},u.prototype.init=function(){this._initialized=!0,this._init()},u.prototype.setUnwrap=function(){this._unwrap=!0},u.prototype.howMany=function(){return this._howMany},u.prototype.setHowMany=function(t){this._howMany=t},u.prototype._promiseFulfilled=function(t){return this._addFulfilled(t),this._fulfilled()===this.howMany()&&(this._values.length=this.howMany(),1===this.howMany()&&this._unwrap?this._resolve(this._values[0]):this._resolve(this._values),!0)},u.prototype._promiseRejected=function(t){return this._addRejected(t),this._checkOutcome()},u.prototype._promiseCancelled=function(){return this._values instanceof e||null==this._values?this._cancel():(this._addRejected(l),this._checkOutcome())},u.prototype._checkOutcome=function(){if(this.howMany()>this._canPossiblyFulfill()){for(var t=new a,e=this.length();e0?this._reject(t):this._cancel(),!0}return!1},u.prototype._fulfilled=function(){return this._totalResolved},u.prototype._rejected=function(){return this._values.length-this.length()},u.prototype._addRejected=function(t){this._values.push(t)},u.prototype._addFulfilled=function(t){this._values[this._totalResolved++]=t},u.prototype._canPossiblyFulfill=function(){return this.length()-this._rejected()},u.prototype._getRangeError=function(t){var e="Input array must contain at least "+this._howMany+" items but contains only "+t+" items";return new o(e)},u.prototype._resolveEmptyArray=function(){this._reject(this._getRangeError(0))},e.some=function(t,e){return c(t,e)},e.prototype.some=function(t){return c(this,t)},e._SomePromiseArray=u}},{"./errors":12,"./util":36}],32:[function(t,e,r){"use strict";e.exports=function(t){function e(t){void 0!==t?(t=t._target(),this._bitField=t._bitField,this._settledValueField=t._isFateSealed()?t._settledValue():void 0):(this._bitField=0,this._settledValueField=void 0)}e.prototype._settledValue=function(){return this._settledValueField};var r=e.prototype.value=function(){if(!this.isFulfilled())throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},n=e.prototype.error=e.prototype.reason=function(){if(!this.isRejected())throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},i=e.prototype.isFulfilled=function(){return 0!=(33554432&this._bitField)},o=e.prototype.isRejected=function(){return 0!=(16777216&this._bitField)},a=e.prototype.isPending=function(){return 0==(50397184&this._bitField)},s=e.prototype.isResolved=function(){return 0!=(50331648&this._bitField)};e.prototype.isCancelled=function(){return 0!=(8454144&this._bitField)},t.prototype.__isCancelled=function(){return 65536==(65536&this._bitField)},t.prototype._isCancelled=function(){return this._target().__isCancelled()},t.prototype.isCancelled=function(){return 0!=(8454144&this._target()._bitField)},t.prototype.isPending=function(){return a.call(this._target())},t.prototype.isRejected=function(){return o.call(this._target())},t.prototype.isFulfilled=function(){return i.call(this._target())},t.prototype.isResolved=function(){return s.call(this._target())},t.prototype.value=function(){return r.call(this._target())},t.prototype.reason=function(){var t=this._target();return t._unsetRejectionIsUnhandled(),n.call(t)},t.prototype._value=function(){return this._settledValue()},t.prototype._reason=function(){return this._unsetRejectionIsUnhandled(),this._settledValue()},t.PromiseInspection=e}},{}],33:[function(t,e,r){"use strict";e.exports=function(e,r){var n=t("./util"),i=n.errorObj,o=n.isObject;var a={}.hasOwnProperty;return function(t,s){if(o(t)){if(t instanceof e)return t;var l=function(t){try{return function(t){return t.then}(t)}catch(t){return i.e=t,i}}(t);if(l===i){s&&s._pushContext();var u=e.reject(l.e);return s&&s._popContext(),u}if("function"==typeof l)return function(t){try{return a.call(t,"_promise0")}catch(t){return!1}}(t)?(u=new e(r),t._then(u._fulfill,u._reject,void 0,u,null),u):function(t,o,a){var s=new e(r),l=s;a&&a._pushContext(),s._captureStackTrace(),a&&a._popContext();var u=!0,c=n.tryCatch(o).call(t,function(t){s&&(s._resolveCallback(t),s=null)},function(t){s&&(s._rejectCallback(t,u,!0),s=null)});return u=!1,s&&c===i&&(s._rejectCallback(c.e,!0,!0),s=null),l}(t,l,s)}return t}}},{"./util":36}],34:[function(t,e,r){"use strict";e.exports=function(e,r,n){var i=t("./util"),o=e.TimeoutError;function a(t){this.handle=t}a.prototype._resultCancelled=function(){clearTimeout(this.handle)};var s=function(t){return l(+this).thenReturn(t)},l=e.delay=function(t,i){var o,l;return void 0!==i?(o=e.resolve(i)._then(s,null,null,t,void 0),n.cancellation()&&i instanceof e&&o._setOnCancel(i)):(o=new e(r),l=setTimeout(function(){o._fulfill()},+t),n.cancellation()&&o._setOnCancel(new a(l)),o._captureStackTrace()),o._setAsyncGuaranteed(),o};e.prototype.delay=function(t){return l(t,this)};function u(t){return clearTimeout(this.handle),t}function c(t){throw clearTimeout(this.handle),t}e.prototype.timeout=function(t,e){var r,s;t=+t;var l=new a(setTimeout(function(){r.isPending()&&function(t,e,r){var n;n="string"!=typeof e?e instanceof Error?e:new o("operation timed out"):new o(e),i.markAsOriginatingFromRejection(n),t._attachExtraTrace(n),t._reject(n),null!=r&&r.cancel()}(r,e,s)},t));return n.cancellation()?(s=this.then(),(r=s._then(u,c,void 0,l,void 0))._setOnCancel(l)):r=this._then(u,c,void 0,l,void 0),r}}},{"./util":36}],35:[function(t,e,r){"use strict";e.exports=function(e,r,n,i,o,a){var s=t("./util"),l=t("./errors").TypeError,u=t("./util").inherits,c=s.errorObj,f=s.tryCatch,h={};function p(t){setTimeout(function(){throw t},0)}function d(t,r){var i=0,a=t.length,s=new e(o);return function o(){if(i>=a)return s._fulfill();var l=function(t){var e=n(t);return e!==t&&"function"==typeof t._isDisposable&&"function"==typeof t._getDisposer&&t._isDisposable()&&e._setDisposable(t._getDisposer()),e}(t[i++]);if(l instanceof e&&l._isDisposable()){try{l=n(l._getDisposer().tryDispose(r),t.promise)}catch(t){return p(t)}if(l instanceof e)return l._then(o,p,null,null,null)}o()}(),s}function m(t,e,r){this._data=t,this._promise=e,this._context=r}function g(t,e,r){this.constructor$(t,e,r)}function v(t){return m.isDisposer(t)?(this.resources[this.index]._setDisposable(t),t.promise()):t}function _(t){this.length=t,this.promise=null,this[t-1]=null}m.prototype.data=function(){return this._data},m.prototype.promise=function(){return this._promise},m.prototype.resource=function(){return this.promise().isFulfilled()?this.promise().value():h},m.prototype.tryDispose=function(t){var e=this.resource(),r=this._context;void 0!==r&&r._pushContext();var n=e!==h?this.doDispose(e,t):null;return void 0!==r&&r._popContext(),this._promise._unsetDisposable(),this._data=null,n},m.isDisposer=function(t){return null!=t&&"function"==typeof t.resource&&"function"==typeof t.tryDispose},u(g,m),g.prototype.doDispose=function(t,e){return this.data().call(t,t,e)},_.prototype._resultCancelled=function(){for(var t=this.length,r=0;r0},e.prototype._getDisposer=function(){return this._disposer},e.prototype._unsetDisposable=function(){this._bitField=-131073&this._bitField,this._disposer=void 0},e.prototype.disposer=function(t){if("function"==typeof t)return new g(t,this,i());throw new l}}},{"./errors":12,"./util":36}],36:[function(e,r,i){"use strict";var o=e("./es5"),a="undefined"==typeof navigator,s={e:{}},l,u="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==n?n:void 0!==this?this:null;function c(){try{var t=l;return l=null,t.apply(this,arguments)}catch(t){return s.e=t,s}}function f(t){return l=t,c}var h=function(t,e){var r={}.hasOwnProperty;function n(){for(var n in this.constructor=t,this.constructor$=e,e.prototype)r.call(e.prototype,n)&&"$"!==n.charAt(n.length-1)&&(this[n+"$"]=e.prototype[n])}return n.prototype=e.prototype,t.prototype=new n,t.prototype};function p(t){return null==t||!0===t||!1===t||"string"==typeof t||"number"==typeof t}function d(t){return"function"==typeof t||"object"==typeof t&&null!==t}function m(t){return p(t)?new Error(P(t)):t}function g(t,e){var r,n=t.length,i=new Array(n+1);for(r=0;r1,n=e.length>0&&!(1===e.length&&"constructor"===e[0]),i=w.test(t+"")&&o.names(t).length>0;if(r||n||i)return!0}return!1}catch(t){return!1}}function x(t){function e(){}e.prototype=t;var r=new e;function n(){return typeof r.foo}return n(),n(),t}var B=/^[a-z$_][a-z$_0-9]*$/i;function C(t){return B.test(t)}function E(t,e,r){for(var n=new Array(t),i=0;i10||V[0]>0),q.isNode&&q.toFastProperties(t);try{throw new Error}catch(t){q.lastLineError=t}r.exports=q},{"./es5":13}]},{},[4])(4)}),"undefined"!=typeof window&&null!==window?window.P=window.Promise:"undefined"!=typeof self&&null!==self&&(self.P=self.Promise)}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},t("timers").setImmediate)},{_process:118,timers:172}],4:[function(t,e,r){},{}],5:[function(t,e,r){(function(r){var n=t("tty"),i=t("./lib/encode"),o=t("stream").Stream,a=e.exports=function(){var t=null;function e(e){if(t)throw new Error("multiple inputs specified");t=e}var i=null;function o(t){if(i)throw new Error("multiple outputs specified");i=t}for(var a=0;a0&&this.down(e),t>0?this.right(t):t<0&&this.left(-t),this},s.prototype.up=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"A")),this},s.prototype.down=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"B")),this},s.prototype.right=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"C")),this},s.prototype.left=function(t){return void 0===t&&(t=1),this.write(i("["+Math.floor(t)+"D")),this},s.prototype.column=function(t){return this.write(i("["+Math.floor(t)+"G")),this},s.prototype.push=function(t){return this.write(i(t?"7":"[s")),this},s.prototype.pop=function(t){return this.write(i(t?"8":"[u")),this},s.prototype.erase=function(t){return"end"===t||"$"===t?this.write(i("[K")):"start"===t||"^"===t?this.write(i("[1K")):"line"===t?this.write(i("[2K")):"down"===t?this.write(i("[J")):"up"===t?this.write(i("[1J")):"screen"===t?this.write(i("[1J")):this.emit("error",new Error("Unknown erase type: "+t)),this},s.prototype.display=function(t){var e={reset:0,bright:1,dim:2,underscore:4,blink:5,reverse:7,hidden:8}[t];return void 0===e&&this.emit("error",new Error("Unknown attribute: "+t)),this.write(i("["+e+"m")),this},s.prototype.foreground=function(t){if("number"==typeof t)(t<0||t>=256)&&this.emit("error",new Error("Color out of range: "+t)),this.write(i("[38;5;"+t+"m"));else{var e={black:30,red:31,green:32,yellow:33,blue:34,magenta:35,cyan:36,white:37}[t.toLowerCase()];e||this.emit("error",new Error("Unknown color: "+t)),this.write(i("["+e+"m"))}return this},s.prototype.background=function(t){if("number"==typeof t)(t<0||t>=256)&&this.emit("error",new Error("Color out of range: "+t)),this.write(i("[48;5;"+t+"m"));else{var e={black:40,red:41,green:42,yellow:43,blue:44,magenta:45,cyan:46,white:47}[t.toLowerCase()];e||this.emit("error",new Error("Unknown color: "+t)),this.write(i("["+e+"m"))}return this},s.prototype.cursor=function(t){return this.write(i(t?"[?25h":"[?25l")),this};var l=a.extractCodes=function(t){for(var e=[],r=-1,n=0;n=0&&e.push(t.slice(r,n)),r=n):r>=0&&n===t.length-1&&e.push(t.slice(r));return e}}).call(this,t("_process"))},{"./lib/encode":6,_process:118,stream:169,tty:173}],6:[function(t,e,r){(function(t){var r=(e.exports=function(e){return new t([27].concat(function t(e){return"string"==typeof e?e.split("").map(r):Array.isArray(e)?e.reduce(function(e,r){return e.concat(t(r))},[]):void 0}(e)))}).ord=function(t){return t.charCodeAt(0)}}).call(this,t("buffer").Buffer)},{buffer:48}],7:[function(t,e,r){(function(r){"use strict";var n=t("readable-stream").Readable,i=t("util");function o(t,e){if(!(this instanceof o))return new o(t,e);n.call(this,e),null!==t&&void 0!==t||(t=String(t)),this._obj=t}e.exports=o,i.inherits(o,n),o.prototype._read=function(t){var e=this._obj;"string"==typeof e?this.push(new r(e)):r.isBuffer(e)?this.push(e):this.push(new r(JSON.stringify(e))),this.push(null)}}).call(this,t("buffer").Buffer)},{buffer:48,"readable-stream":13,util:180}],8:[function(t,e,r){(function(r){e.exports=s;var n=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e},i=t("core-util-is");i.inherits=t("inherits");var o=t("./_stream_readable"),a=t("./_stream_writable");function s(t){if(!(this instanceof s))return new s(t);o.call(this,t),a.call(this,t),t&&!1===t.readable&&(this.readable=!1),t&&!1===t.writable&&(this.writable=!1),this.allowHalfOpen=!0,t&&!1===t.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",l)}function l(){this.allowHalfOpen||this._writableState.ended||r.nextTick(this.end.bind(this))}i.inherits(s,o),function(t,e){for(var r=0,n=t.length;r0?d(t):b(t)}(t,e);else if(e.objectMode||n&&n.length>0)if(e.ended&&!a){var l=new Error("stream.push() after EOF");t.emit("error",l)}else if(e.endEmitted&&a){l=new Error("stream.unshift() after end event");t.emit("error",l)}else!e.decoder||a||o||(n=e.decoder.write(n)),e.length+=e.objectMode?1:n.length,a?e.buffer.unshift(n):(e.reading=!1,e.buffer.push(n)),e.needReadable&&d(t),function(t,e){e.readingMore||(e.readingMore=!0,r.nextTick(function(){!function(t,e){var r=e.length;for(;!e.reading&&!e.flowing&&!e.ended&&e.lengthe.highWaterMark&&(e.highWaterMark=function(t){if(t>=h)t=h;else{t--;for(var e=1;e<32;e<<=1)t|=t>>e;t++}return t}(t)),t>e.length?e.ended?e.length:(e.needReadable=!0,0):t)}function d(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,e.sync?r.nextTick(function(){m(t)}):m(t))}function m(t){t.emit("readable")}function g(t){var e,r=t._readableState;function n(t,n,i){!1===t.write(e)&&r.awaitDrain++}for(r.awaitDrain=0;r.pipesCount&&null!==(e=t.read());)if(1===r.pipesCount?n(r.pipes):w(r.pipes,n),t.emit("data",e),r.awaitDrain>0)return;if(0===r.pipesCount)return r.flowing=!1,void(o.listenerCount(t,"data")>0&&_(t));r.ranOut=!0}function v(){this._readableState.ranOut&&(this._readableState.ranOut=!1,g(this))}function _(t,e){if(t._readableState.flowing)throw new Error("Cannot switch to old mode now.");var n=e||!1,i=!1;t.readable=!0,t.pipe=s.prototype.pipe,t.on=t.addListener=s.prototype.on,t.on("readable",function(){var e;for(i=!0;!n&&null!==(e=t.read());)t.emit("data",e);null===e&&(i=!1,t._readableState.needReadable=!0)}),t.pause=function(){n=!0,this.emit("pause")},t.resume=function(){n=!1,i?r.nextTick(function(){t.emit("readable")}):this.read(0),this.emit("resume")},t.emit("readable")}function y(t,e){var r,n=e.buffer,o=e.length,a=!!e.decoder,s=!!e.objectMode;if(0===n.length)return null;if(0===o)r=null;else if(s)r=n.shift();else if(!t||t>=o)r=a?n.join(""):i.concat(n,o),n.length=0;else{if(t0)throw new Error("endReadable called on non-empty stream");!e.endEmitted&&e.calledRead&&(e.ended=!0,r.nextTick(function(){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}))}function w(t,e){for(var r=0,n=t.length;r0)&&(e.emittedReadable=!1),0===t&&e.needReadable&&(e.length>=e.highWaterMark||e.ended))return d(this),null;if(0===(t=p(t,e))&&e.ended)return r=null,e.length>0&&e.decoder&&(r=y(t,e),e.length-=r.length),0===e.length&&b(this),r;var i=e.needReadable;return e.length-t<=e.highWaterMark&&(i=!0),(e.ended||e.reading)&&(i=!1),i&&(e.reading=!0,e.sync=!0,0===e.length&&(e.needReadable=!0),this._read(e.highWaterMark),e.sync=!1),i&&!e.reading&&(t=p(n,e)),null===(r=t>0?y(t,e):null)&&(e.needReadable=!0,t=0),e.length-=t,0!==e.length||e.ended||(e.needReadable=!0),e.ended&&!e.endEmitted&&0===e.length&&b(this),r},c.prototype._read=function(t){this.emit("error",new Error("not implemented"))},c.prototype.pipe=function(t,e){var i=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=t;break;case 1:a.pipes=[a.pipes,t];break;default:a.pipes.push(t)}a.pipesCount+=1;var s=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?u:f;function l(t){t===i&&f()}function u(){t.end()}a.endEmitted?r.nextTick(s):i.once("end",s),t.on("unpipe",l);var c=function(t){return function(){var e=t._readableState;e.awaitDrain--,0===e.awaitDrain&&g(t)}}(i);function f(){t.removeListener("close",p),t.removeListener("finish",d),t.removeListener("drain",c),t.removeListener("error",h),t.removeListener("unpipe",l),i.removeListener("end",u),i.removeListener("end",f),t._writableState&&!t._writableState.needDrain||c()}function h(e){m(),t.removeListener("error",h),0===o.listenerCount(t,"error")&&t.emit("error",e)}function p(){t.removeListener("finish",d),m()}function d(){t.removeListener("close",p),m()}function m(){i.unpipe(t)}return t.on("drain",c),t._events&&t._events.error?n(t._events.error)?t._events.error.unshift(h):t._events.error=[h,t._events.error]:t.on("error",h),t.once("close",p),t.once("finish",d),t.emit("pipe",i),a.flowing||(this.on("readable",v),a.flowing=!0,r.nextTick(function(){g(i)})),t},c.prototype.unpipe=function(t){var e=this._readableState;if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,this.removeListener("readable",v),e.flowing=!1,t&&t.emit("unpipe",this),this);if(!t){var r=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,this.removeListener("readable",v),e.flowing=!1;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"===o)e.scalarArgs.push(i),e.shimArgs.push("scalar"+i);else if("index"===o){if(e.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"===o){if(e.shapeArgs.push(i),ir.length)throw new Error("cwise: Too many arguments in pre() block");if(e.body.args.length>r.length)throw new Error("cwise: Too many arguments in body() block");if(e.post.args.length>r.length)throw new Error("cwise: Too many arguments in post() block");return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||"cwise",e.blockSize=t.blockSize||64,n(e)}},{"./lib/thunk.js":17}],16:[function(t,e,r){"use strict";var n=t("uniq");function i(t,e,r){var n,i,o=t.length,a=e.arrayArgs.length,s=e.indexArgs.length>0,l=[],u=[],c=0,f=0;for(n=0;n0&&l.push("var "+u.join(",")),n=o-1;n>=0;--n)c=t[n],l.push(["for(i",n,"=0;i",n,"0&&l.push(["index[",f,"]-=s",f].join("")),l.push(["++index[",c,"]"].join(""))),l.push("}")}return l.join("\n")}function o(t,e,r){for(var n=t.body,i=[],o=[],a=0;a0&&_.push("shape=SS.slice(0)"),t.indexArgs.length>0){var y=new Array(r);for(l=0;l0&&v.push("var "+_.join(",")),l=0;l3&&v.push(o(t.pre,t,s));var x=o(t.body,t,s),B=function(t){for(var e=0,r=t[0].length;e0,u=[],c=0;c0;){"].join("")),u.push(["if(j",c,"<",s,"){"].join("")),u.push(["s",e[c],"=j",c].join("")),u.push(["j",c,"=0"].join("")),u.push(["}else{s",e[c],"=",s].join("")),u.push(["j",c,"-=",s,"}"].join("")),l&&u.push(["index[",e[c],"]=j",c].join(""));for(c=0;c3&&v.push(o(t.post,t,s)),t.debug&&console.log("-----Generated cwise routine for ",e,":\n"+v.join("\n")+"\n----------");var C=[t.funcName||"unnamed","_cwise_loop_",a[0].join("s"),"m",B,function(t){for(var e=new Array(t.length),r=!0,n=0;n0&&(r=r&&e[n]===e[n-1])}return r?e[0]:e.join("")}(s)].join("");return new Function(["function ",C,"(",g.join(","),"){",v.join("\n"),"} return ",C].join(""))()}},{uniq:176}],17:[function(t,e,r){"use strict";var n=t("./compile.js");e.exports=function(t){var e=["'use strict'","var CACHED={}"],r=[],i=t.funcName+"_cwise_thunk";e.push(["return function ",i,"(",t.shimArgs.join(","),"){"].join(""));for(var o=[],a=[],s=[["array",t.arrayArgs[0],".shape.slice(",Math.max(0,t.arrayBlockIndices[0]),t.arrayBlockIndices[0]<0?","+t.arrayBlockIndices[0]+")":")"].join("")],l=[],u=[],c=0;c0&&(l.push("array"+t.arrayArgs[0]+".shape.length===array"+f+".shape.length+"+(Math.abs(t.arrayBlockIndices[0])-Math.abs(t.arrayBlockIndices[c]))),u.push("array"+t.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,t.arrayBlockIndices[0])+"]===array"+f+".shape[shapeIndex+"+Math.max(0,t.arrayBlockIndices[c])+"]"))}for(t.arrayArgs.length>1&&(e.push("if (!("+l.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),e.push("for(var shapeIndex=array"+t.arrayArgs[0]+".shape.length-"+Math.abs(t.arrayBlockIndices[0])+"; shapeIndex--\x3e0;) {"),e.push("if (!("+u.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),e.push("}")),c=0;cf)&&(o[l]=f,p.push(l,f),i[l]=s));if(void 0!==r&&void 0===o[r]){var d=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(d)}return i},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e;n;)r.push(n),t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var i=n.single_source_shortest_paths(t,e,r);return n.extract_shortest_path_from_predecessor_list(i,r)},PriorityQueue:{make:function(t){var e,r=n.PriorityQueue,i={};for(e in t=t||{},r)r.hasOwnProperty(e)&&(i[e]=r[e]);return i.queue=[],i.sorter=t.sorter||r.default_sorter,i},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};void 0!==e&&(e.exports=n)},{}],21:[function(t,e,r){"use strict";e.exports=function(t,e){switch(void 0===e&&(e=0),typeof t){case"number":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n 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"},{}],25:[function(t,e,r){e.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"},{}],26:[function(t,e,r){e.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"},{}],27:[function(t,e,r){e.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"},{}],28:[function(t,e,r){e.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"},{}],29:[function(t,e,r){e.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"},{}],30:[function(t,e,r){(function(r,n){"use strict";var i=t("path"),o=t("ndarray"),a=t("omggif").GifReader,s=(t("ndarray-pack"),t("through"),t("data-uri-to-buffer"));function l(t,e){var r;try{r=new a(t)}catch(t){return void e(t)}if(r.numFrames()>0){var n=[r.numFrames(),r.height,r.width,4],i=new Uint8Array(n[0]*n[1]*n[2]*n[3]),s=o(i,n);try{for(var l=0;l=0&&(this.dispose=t)},l.prototype.setRepeat=function(t){this.repeat=t},l.prototype.setTransparent=function(t){this.transparent=t},l.prototype.analyzeImage=function(t){this.setImagePixels(this.removeAlphaChannel(t)),this.analyzePixels()},l.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},l.prototype.outputImage=function(){this.writePixels()},l.prototype.addFrame=function(t){this.emit("frame#start"),this.analyzeImage(t),this.writeImageInfo(),this.outputImage(),this.emit("frame#stop")},l.prototype.finish=function(){this.emit("finish#start"),this.writeByte(59),this.emit("finish#stop")},l.prototype.setQuality=function(t){t<1&&(t=1),this.sample=t},l.prototype.writeHeader=function(){this.emit("writeHeader#start"),this.writeUTFBytes("GIF89a"),this.emit("writeHeader#stop")},l.prototype.analyzePixels=function(){var t=this.pixels.length/3;this.indexedPixels=new Uint8Array(t);var e=new o(this.pixels,this.sample);e.buildColormap(),this.colorTab=e.getColormap();for(var r=0,n=0;n>16,r=(65280&t)>>8,n=255&t,i=0,o=16777216,a=this.colorTab.length,s=0;s=0&&(e=7&dispose),e<<=2,this.writeByte(0|e|t),this.writeShort(this.delay),this.writeByte(this.transIndex),this.writeByte(0)},l.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)},l.prototype.writeLSD=function(){this.writeShort(this.width),this.writeShort(this.height),this.writeByte(240|this.palSize),this.writeByte(0),this.writeByte(0)},l.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)},l.prototype.writePalette=function(){this.writeBytes(this.colorTab);for(var t=768-this.colorTab.length,e=0;e>8&255)},l.prototype.writePixels=function(){new a(this.width,this.height,this.indexedPixels,this.colorDepth).encode(this)},l.prototype.stream=function(){return this},l.ByteCapacitor=s,e.exports=l}).call(this,t("buffer").Buffer)},{"./LZWEncoder.js":33,"./TypedNeuQuant.js":34,assert:41,buffer:48,events:49,"readable-stream":40,util:180}],33:[function(t,e,r){var n=-1,i=12,o=5003,a=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535];e.exports=function(t,e,r,s){var l,u,c,f,h,p,d,m,g,v=Math.max(2,s),_=new Uint8Array(256),y=new Int32Array(o),b=new Int32Array(o),w=0,k=0,x=!1;function B(t,e){_[u++]=t,u>=254&&P(e)}function C(t){E(o),k=m+2,x=!0,T(m,t)}function E(t){for(var e=0;e0&&(t.writeByte(u),t.writeBytes(_,0,u),u=0)}function j(t){return(1<0?l|=t<=8;)B(255&l,e),l>>=8,w-=8;if((k>c||x)&&(x?(c=j(p=d),x=!1):c=++p==i?1<0;)B(255&l,e),l>>=8,w-=8;P(e)}}this.encode=function(r){r.writeByte(v),f=t*e,h=0,function(t,e){var r,a,s,l,f,h,v;for(x=!1,c=j(p=d=t),g=1+(m=1<=0){f=h-s,0===s&&(f=1);do{if((s-=f)<0&&(s+=h),y[s]===r){l=b[s];continue t}}while(y[s]>=0)}T(l,e),l=a,k<1<>c,h=l<>3)*(1<u;)l=P[p++],fu&&((s=r[h--])[0]-=l*(s[0]-n)/_,s[1]-=l*(s[1]-o)/_,s[2]-=l*(s[2]-a)/_)}function T(t,e,n){var o,l,p,d,m,g=~(1<<31),v=g,_=-1,y=_;for(o=0;o>s-a))>c,E[o]-=m,C[o]+=m<>3),t=0;t>p;for(E<=1&&(E=0),r=0;r=c&&(M-=c),r++,0===_&&(_=1),r%_==0)for(B-=B/f,(E=(C-=C/m)>>p)<=1&&(E=0),u=0;u>=a,r[t][1]>>=a,r[t][2]>>=a,r[t][3]=t}(),function(){var t,e,n,a,s,l,u=0,c=0;for(t=0;t>1,e=u+1;e>1,e=u+1;e<256;e++)B[e]=o}()},this.getColormap=function(){for(var t=[],e=[],n=0;n=0;)c=l?c=i:(c++,s<0&&(s=-s),(o=a[0]-t)<0&&(o=-o),(s+=o)=0&&((s=e-(a=r[f])[1])>=l?f=-1:(f--,s<0&&(s=-s),(o=a[0]-t)<0&&(o=-o),(s+=o)0)if(e.ended&&!o){var s=new Error("stream.push() after EOF");t.emit("error",s)}else if(e.endEmitted&&o){s=new Error("stream.unshift() after end event");t.emit("error",s)}else!e.decoder||o||i||(n=e.decoder.write(n)),o||(e.reading=!1),e.flowing&&0===e.length&&!e.sync?(t.emit("data",n),t.read(0)):(e.length+=e.objectMode?1:n.length,o?e.buffer.unshift(n):e.buffer.push(n),e.needReadable&&m(t)),function(t,e){e.readingMore||(e.readingMore=!0,r.nextTick(function(){!function(t,e){var r=e.length;for(;!e.reading&&!e.flowing&&!e.ended&&e.lengthe.highWaterMark&&(e.highWaterMark=function(t){if(t>=p)t=p;else{t--;for(var e=1;e<32;e<<=1)t|=t>>e;t++}return t}(t)),t>e.length?e.ended?e.length:(e.needReadable=!0,0):t)}function m(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(u("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?r.nextTick(function(){g(t)}):g(t))}function g(t){u("emit readable"),t.emit("readable"),v(t)}function v(t){var e=t._readableState;if(u("flow",e.flowing),e.flowing)do{var r=t.read()}while(null!==r&&e.flowing)}function _(t,e){var r,n=e.buffer,o=e.length,a=!!e.decoder,s=!!e.objectMode;if(0===n.length)return null;if(0===o)r=null;else if(s)r=n.shift();else if(!t||t>=o)r=a?n.join(""):i.concat(n,o),n.length=0;else{if(t0)throw new Error("endReadable called on non-empty stream");e.endEmitted||(e.ended=!0,r.nextTick(function(){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}))}f.prototype.read=function(t){u("read",t);var e=this._readableState,r=t;if((!l.isNumber(t)||t>0)&&(e.emittedReadable=!1),0===t&&e.needReadable&&(e.length>=e.highWaterMark||e.ended))return u("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?y(this):m(this),null;if(0===(t=d(t,e))&&e.ended)return 0===e.length&&y(this),null;var n,i=e.needReadable;return u("need readable",i),(0===e.length||e.length-t0?_(t,e):null,l.isNull(n)&&(e.needReadable=!0,t=0),e.length-=t,0!==e.length||e.ended||(e.needReadable=!0),r!==t&&e.ended&&0===e.length&&y(this),l.isNull(n)||this.emit("data",n),n},f.prototype._read=function(t){this.emit("error",new Error("not implemented"))},f.prototype.pipe=function(t,e){var i=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=t;break;case 1:a.pipes=[a.pipes,t];break;default:a.pipes.push(t)}a.pipesCount+=1,u("pipe count=%d opts=%j",a.pipesCount,e);var s=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?c:h;function l(t){u("onunpipe"),t===i&&h()}function c(){u("onend"),t.end()}a.endEmitted?r.nextTick(s):i.once("end",s),t.on("unpipe",l);var f=function(t){return function(){var e=t._readableState;u("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o.listenerCount(t,"data")&&(e.flowing=!0,v(t))}}(i);function h(){u("cleanup"),t.removeListener("close",m),t.removeListener("finish",g),t.removeListener("drain",f),t.removeListener("error",d),t.removeListener("unpipe",l),i.removeListener("end",c),i.removeListener("end",h),i.removeListener("data",p),!a.awaitDrain||t._writableState&&!t._writableState.needDrain||f()}function p(e){u("ondata"),!1===t.write(e)&&(u("false write response, pause",i._readableState.awaitDrain),i._readableState.awaitDrain++,i.pause())}function d(e){u("onerror",e),_(),t.removeListener("error",d),0===o.listenerCount(t,"error")&&t.emit("error",e)}function m(){t.removeListener("finish",g),_()}function g(){u("onfinish"),t.removeListener("close",m),_()}function _(){u("unpipe"),i.unpipe(t)}return t.on("drain",f),i.on("data",p),t._events&&t._events.error?n(t._events.error)?t._events.error.unshift(d):t._events.error=[d,t._events.error]:t.on("error",d),t.once("close",m),t.once("finish",g),t.emit("pipe",i),a.flowing||(u("pipe resume"),i.resume()),t},f.prototype.unpipe=function(t){var e=this._readableState;if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this),this);if(!t){var r=e.pipes,n=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var i=0;i1){for(var r=[],n=0;n=0;u--)if(c[u]!==f[u])return!1;for(u=c.length-1;u>=0;u--)if(l=c[u],!_(t[l],e[l],r,n))return!1;return!0}(t,e,r,a))}return r?t===e:t==e}function y(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function b(t,e){if(!t||!e)return!1;if("[object RegExp]"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function w(t,e,r,n){var i;if("function"!=typeof e)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(n=r,r=null),i=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),t&&!i&&g(i,r,"Missing expected exception"+n);var a="string"==typeof n,s=!t&&o.isError(i),l=!t&&i&&!r;if((s&&a&&b(i,r)||l)&&g(i,r,"Got unwanted exception"+n),t&&i&&r&&!b(i,r)||!t&&i)throw i}f.AssertionError=function(t){var e;this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=d(m((e=this).actual),128)+" "+e.operator+" "+d(m(e.expected),128),this.generatedMessage=!0);var r=t.stackStartFunction||g;if(Error.captureStackTrace)Error.captureStackTrace(this,r);else{var n=new Error;if(n.stack){var i=n.stack,o=p(r),a=i.indexOf("\n"+o);if(a>=0){var s=i.indexOf("\n",a+1);i=i.substring(s+1)}this.stack=i}}},o.inherits(f.AssertionError,Error),f.fail=g,f.ok=v,f.equal=function(t,e,r){t!=e&&g(t,e,r,"==",f.equal)},f.notEqual=function(t,e,r){t==e&&g(t,e,r,"!=",f.notEqual)},f.deepEqual=function(t,e,r){_(t,e,!1)||g(t,e,r,"deepEqual",f.deepEqual)},f.deepStrictEqual=function(t,e,r){_(t,e,!0)||g(t,e,r,"deepStrictEqual",f.deepStrictEqual)},f.notDeepEqual=function(t,e,r){_(t,e,!1)&&g(t,e,r,"notDeepEqual",f.notDeepEqual)},f.notDeepStrictEqual=function t(e,r,n){_(e,r,!0)&&g(e,r,n,"notDeepStrictEqual",t)},f.strictEqual=function(t,e,r){t!==e&&g(t,e,r,"===",f.strictEqual)},f.notStrictEqual=function(t,e,r){t===e&&g(t,e,r,"!==",f.notStrictEqual)},f.throws=function(t,e,r){w(!0,t,e,r)},f.doesNotThrow=function(t,e,r){w(!1,t,e,r)},f.ifError=function(t){if(t)throw t};var k=Object.keys||function(t){var e=[];for(var r in t)a.call(t,r)&&e.push(r);return e}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"util/":44}],42:[function(t,e,r){"function"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],43:[function(t,e,r){e.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},{}],44:[function(t,e,r){(function(e,n){var i=/%[sdj%]/g;r.format=function(t){if(!v(t)){for(var e=[],r=0;r=o)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return t}}),l=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),d(e)?n.showHidden=e:e&&r._extend(n,e),_(n.showHidden)&&(n.showHidden=!1),_(n.depth)&&(n.depth=2),_(n.colors)&&(n.colors=!1),_(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=l),c(n,t,n.depth)}function l(t,e){var r=s.styles[e];return r?"["+s.colors[r][0]+"m"+t+"["+s.colors[r][1]+"m":t}function u(t,e){return t}function c(t,e,n){if(t.customInspect&&e&&x(e.inspect)&&e.inspect!==r.inspect&&(!e.constructor||e.constructor.prototype!==e)){var i=e.inspect(n,t);return v(i)||(i=c(t,i,n)),i}var o=function(t,e){if(_(e))return t.stylize("undefined","undefined");if(v(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}if(g(e))return t.stylize(""+e,"number");if(d(e))return t.stylize(""+e,"boolean");if(m(e))return t.stylize("null","null")}(t,e);if(o)return o;var a=Object.keys(e),s=function(t){var e={};return t.forEach(function(t,r){e[t]=!0}),e}(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(e)),k(e)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(e);if(0===a.length){if(x(e)){var l=e.name?": "+e.name:"";return t.stylize("[Function"+l+"]","special")}if(y(e))return t.stylize(RegExp.prototype.toString.call(e),"regexp");if(w(e))return t.stylize(Date.prototype.toString.call(e),"date");if(k(e))return f(e)}var u,b="",B=!1,C=["{","}"];(p(e)&&(B=!0,C=["[","]"]),x(e))&&(b=" [Function"+(e.name?": "+e.name:"")+"]");return y(e)&&(b=" "+RegExp.prototype.toString.call(e)),w(e)&&(b=" "+Date.prototype.toUTCString.call(e)),k(e)&&(b=" "+f(e)),0!==a.length||B&&0!=e.length?n<0?y(e)?t.stylize(RegExp.prototype.toString.call(e),"regexp"):t.stylize("[Object]","special"):(t.seen.push(e),u=B?function(t,e,r,n,i){for(var o=[],a=0,s=e.length;a=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1];return r[0]+e+" "+t.join(", ")+" "+r[1]}(u,b,C)):C[0]+b+C[1]}function f(t){return"["+Error.prototype.toString.call(t)+"]"}function h(t,e,r,n,i,o){var a,s,l;if((l=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),P(n,i)||(a="["+i+"]"),s||(t.seen.indexOf(l.value)<0?(s=m(r)?c(t,l.value,null):c(t,l.value,r-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map(function(t){return" "+t}).join("\n").substr(2):"\n"+s.split("\n").map(function(t){return" "+t}).join("\n")):s=t.stylize("[Circular]","special")),_(a)){if(o&&i.match(/^\d+$/))return s;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function p(t){return Array.isArray(t)}function d(t){return"boolean"==typeof t}function m(t){return null===t}function g(t){return"number"==typeof t}function v(t){return"string"==typeof t}function _(t){return void 0===t}function y(t){return b(t)&&"[object RegExp]"===B(t)}function b(t){return"object"==typeof t&&null!==t}function w(t){return b(t)&&"[object Date]"===B(t)}function k(t){return b(t)&&("[object Error]"===B(t)||t instanceof Error)}function x(t){return"function"==typeof t}function B(t){return Object.prototype.toString.call(t)}function C(t){return t<10?"0"+t.toString(10):t.toString(10)}r.debuglog=function(t){if(_(o)&&(o=e.env.NODE_DEBUG||""),t=t.toUpperCase(),!a[t])if(new RegExp("\\b"+t+"\\b","i").test(o)){var n=e.pid;a[t]=function(){var e=r.format.apply(r,arguments);console.error("%s %d: %s",t,n,e)}}else a[t]=function(){};return a[t]},r.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"},r.isArray=p,r.isBoolean=d,r.isNull=m,r.isNullOrUndefined=function(t){return null==t},r.isNumber=g,r.isString=v,r.isSymbol=function(t){return"symbol"==typeof t},r.isUndefined=_,r.isRegExp=y,r.isObject=b,r.isDate=w,r.isError=k,r.isFunction=x,r.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},r.isBuffer=t("./support/isBuffer");var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function P(t,e){return Object.prototype.hasOwnProperty.call(t,e)}r.log=function(){var t,e;console.log("%s - %s",(t=new Date,e=[C(t.getHours()),C(t.getMinutes()),C(t.getSeconds())].join(":"),[t.getDate(),E[t.getMonth()],e].join(" ")),r.format.apply(r,arguments))},r.inherits=t("inherits"),r._extend=function(t,e){if(!e||!b(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t}}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":43,_process:118,inherits:42}],45:[function(t,e,r){(function(e,n){"use strict";var i=t("assert"),o=t("pako/lib/zlib/zstream"),a=t("pako/lib/zlib/deflate.js"),s=t("pako/lib/zlib/inflate.js"),l=t("pako/lib/zlib/constants");for(var u in l)r[u]=l[u];r.NONE=0,r.DEFLATE=1,r.INFLATE=2,r.GZIP=3,r.GUNZIP=4,r.DEFLATERAW=5,r.INFLATERAW=6,r.UNZIP=7;function c(t){if("number"!=typeof t||tr.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=t,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}c.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,i(this.init_done,"close before init"),i(this.mode<=r.UNZIP),this.mode===r.DEFLATE||this.mode===r.GZIP||this.mode===r.DEFLATERAW?a.deflateEnd(this.strm):this.mode!==r.INFLATE&&this.mode!==r.GUNZIP&&this.mode!==r.INFLATERAW&&this.mode!==r.UNZIP||s.inflateEnd(this.strm),this.mode=r.NONE,this.dictionary=null)},c.prototype.write=function(t,e,r,n,i,o,a){return this._write(!0,t,e,r,n,i,o,a)},c.prototype.writeSync=function(t,e,r,n,i,o,a){return this._write(!1,t,e,r,n,i,o,a)},c.prototype._write=function(t,o,a,s,l,u,c,f){if(i.equal(arguments.length,8),i(this.init_done,"write before init"),i(this.mode!==r.NONE,"already finalized"),i.equal(!1,this.write_in_progress,"write already in progress"),i.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,i.equal(!1,void 0===o,"must provide flush value"),this.write_in_progress=!0,o!==r.Z_NO_FLUSH&&o!==r.Z_PARTIAL_FLUSH&&o!==r.Z_SYNC_FLUSH&&o!==r.Z_FULL_FLUSH&&o!==r.Z_FINISH&&o!==r.Z_BLOCK)throw new Error("Invalid flush value");if(null==a&&(a=n.alloc(0),l=0,s=0),this.strm.avail_in=l,this.strm.input=a,this.strm.next_in=s,this.strm.avail_out=f,this.strm.output=u,this.strm.next_out=c,this.flush=o,!t)return this._process(),this._checkError()?this._afterSync():void 0;var h=this;return e.nextTick(function(){h._process(),h._after()}),this},c.prototype._afterSync=function(){var t=this.strm.avail_out,e=this.strm.avail_in;return this.write_in_progress=!1,[e,t]},c.prototype._process=function(){var t=null;switch(this.mode){case r.DEFLATE:case r.GZIP:case r.DEFLATERAW:this.err=a.deflate(this.strm,this.flush);break;case r.UNZIP:switch(this.strm.avail_in>0&&(t=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(null===t)break;if(31!==this.strm.input[t]){this.mode=r.INFLATE;break}if(this.gzip_id_bytes_read=1,t++,1===this.strm.avail_in)break;case 1:if(null===t)break;139===this.strm.input[t]?(this.gzip_id_bytes_read=2,this.mode=r.GUNZIP):this.mode=r.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case r.INFLATE:case r.GUNZIP:case r.INFLATERAW:for(this.err=s.inflate(this.strm,this.flush),this.err===r.Z_NEED_DICT&&this.dictionary&&(this.err=s.inflateSetDictionary(this.strm,this.dictionary),this.err===r.Z_OK?this.err=s.inflate(this.strm,this.flush):this.err===r.Z_DATA_ERROR&&(this.err=r.Z_NEED_DICT));this.strm.avail_in>0&&this.mode===r.GUNZIP&&this.err===r.Z_STREAM_END&&0!==this.strm.next_in[0];)this.reset(),this.err=s.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},c.prototype._checkError=function(){switch(this.err){case r.Z_OK:case r.Z_BUF_ERROR:if(0!==this.strm.avail_out&&this.flush===r.Z_FINISH)return this._error("unexpected end of file"),!1;break;case r.Z_STREAM_END:break;case r.Z_NEED_DICT:return null==this.dictionary?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0},c.prototype._after=function(){if(this._checkError()){var t=this.strm.avail_out,e=this.strm.avail_in;this.write_in_progress=!1,this.callback(e,t),this.pending_close&&this.close()}},c.prototype._error=function(t){this.strm.msg&&(t=this.strm.msg),this.onerror(t,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},c.prototype.init=function(t,e,n,o,a){i(4===arguments.length||5===arguments.length,"init(windowBits, level, memLevel, strategy, [dictionary])"),i(t>=8&&t<=15,"invalid windowBits"),i(e>=-1&&e<=9,"invalid compression level"),i(n>=1&&n<=9,"invalid memlevel"),i(o===r.Z_FILTERED||o===r.Z_HUFFMAN_ONLY||o===r.Z_RLE||o===r.Z_FIXED||o===r.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(e,t,n,o,a),this._setDictionary()},c.prototype.params=function(){throw new Error("deflateParams Not supported")},c.prototype.reset=function(){this._reset(),this._setDictionary()},c.prototype._init=function(t,e,n,i,l){switch(this.level=t,this.windowBits=e,this.memLevel=n,this.strategy=i,this.flush=r.Z_NO_FLUSH,this.err=r.Z_OK,this.mode!==r.GZIP&&this.mode!==r.GUNZIP||(this.windowBits+=16),this.mode===r.UNZIP&&(this.windowBits+=32),this.mode!==r.DEFLATERAW&&this.mode!==r.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new o,this.mode){case r.DEFLATE:case r.GZIP:case r.DEFLATERAW:this.err=a.deflateInit2(this.strm,this.level,r.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case r.INFLATE:case r.GUNZIP:case r.INFLATERAW:case r.UNZIP:this.err=s.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==r.Z_OK&&this._error("Init error"),this.dictionary=l,this.write_in_progress=!1,this.init_done=!0},c.prototype._setDictionary=function(){if(null!=this.dictionary){switch(this.err=r.Z_OK,this.mode){case r.DEFLATE:case r.DEFLATERAW:this.err=a.deflateSetDictionary(this.strm,this.dictionary)}this.err!==r.Z_OK&&this._error("Failed to set dictionary")}},c.prototype._reset=function(){switch(this.err=r.Z_OK,this.mode){case r.DEFLATE:case r.DEFLATERAW:case r.GZIP:this.err=a.deflateReset(this.strm);break;case r.INFLATE:case r.INFLATERAW:case r.GUNZIP:this.err=s.inflateReset(this.strm)}this.err!==r.Z_OK&&this._error("Failed to reset stream")},r.Zlib=c}).call(this,t("_process"),t("buffer").Buffer)},{_process:118,assert:41,buffer:48,"pako/lib/zlib/constants":52,"pako/lib/zlib/deflate.js":54,"pako/lib/zlib/inflate.js":56,"pako/lib/zlib/zstream":60}],46:[function(t,e,r){(function(e){"use strict";var n=t("buffer").Buffer,i=t("stream").Transform,o=t("./binding"),a=t("util"),s=t("assert").ok,l=t("buffer").kMaxLength,u="Cannot create final Buffer. It would be larger than 0x"+l.toString(16)+" bytes";o.Z_MIN_WINDOWBITS=8,o.Z_MAX_WINDOWBITS=15,o.Z_DEFAULT_WINDOWBITS=15,o.Z_MIN_CHUNK=64,o.Z_MAX_CHUNK=1/0,o.Z_DEFAULT_CHUNK=16384,o.Z_MIN_MEMLEVEL=1,o.Z_MAX_MEMLEVEL=9,o.Z_DEFAULT_MEMLEVEL=8,o.Z_MIN_LEVEL=-1,o.Z_MAX_LEVEL=9,o.Z_DEFAULT_LEVEL=o.Z_DEFAULT_COMPRESSION;for(var c=Object.keys(o),f=0;f=l?a=new RangeError(u):e=n.concat(i,o),i=[],t.close(),r(a,e)}t.on("error",function(e){t.removeListener("end",s),t.removeListener("readable",a),r(e)}),t.on("end",s),t.end(e),a()}function _(t,e){if("string"==typeof e&&(e=n.from(e)),!n.isBuffer(e))throw new TypeError("Not a string or buffer");var r=t._finishFlushFlag;return t._processChunk(e,r)}function y(t){if(!(this instanceof y))return new y(t);P.call(this,t,o.DEFLATE)}function b(t){if(!(this instanceof b))return new b(t);P.call(this,t,o.INFLATE)}function w(t){if(!(this instanceof w))return new w(t);P.call(this,t,o.GZIP)}function k(t){if(!(this instanceof k))return new k(t);P.call(this,t,o.GUNZIP)}function x(t){if(!(this instanceof x))return new x(t);P.call(this,t,o.DEFLATERAW)}function B(t){if(!(this instanceof B))return new B(t);P.call(this,t,o.INFLATERAW)}function C(t){if(!(this instanceof C))return new C(t);P.call(this,t,o.UNZIP)}function E(t){return t===o.Z_NO_FLUSH||t===o.Z_PARTIAL_FLUSH||t===o.Z_SYNC_FLUSH||t===o.Z_FULL_FLUSH||t===o.Z_FINISH||t===o.Z_BLOCK}function P(t,e){var a=this;if(this._opts=t=t||{},this._chunkSize=t.chunkSize||r.Z_DEFAULT_CHUNK,i.call(this,t),t.flush&&!E(t.flush))throw new Error("Invalid flush flag: "+t.flush);if(t.finishFlush&&!E(t.finishFlush))throw new Error("Invalid flush flag: "+t.finishFlush);if(this._flushFlag=t.flush||o.Z_NO_FLUSH,this._finishFlushFlag=void 0!==t.finishFlush?t.finishFlush:o.Z_FINISH,t.chunkSize&&(t.chunkSizer.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+t.chunkSize);if(t.windowBits&&(t.windowBitsr.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+t.windowBits);if(t.level&&(t.levelr.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+t.level);if(t.memLevel&&(t.memLevelr.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+t.memLevel);if(t.strategy&&t.strategy!=r.Z_FILTERED&&t.strategy!=r.Z_HUFFMAN_ONLY&&t.strategy!=r.Z_RLE&&t.strategy!=r.Z_FIXED&&t.strategy!=r.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+t.strategy);if(t.dictionary&&!n.isBuffer(t.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new o.Zlib(e);var s=this;this._hadError=!1,this._handle.onerror=function(t,e){j(s),s._hadError=!0;var n=new Error(t);n.errno=e,n.code=r.codes[e],s.emit("error",n)};var l=r.Z_DEFAULT_COMPRESSION;"number"==typeof t.level&&(l=t.level);var u=r.Z_DEFAULT_STRATEGY;"number"==typeof t.strategy&&(u=t.strategy),this._handle.init(t.windowBits||r.Z_DEFAULT_WINDOWBITS,l,t.memLevel||r.Z_DEFAULT_MEMLEVEL,u,t.dictionary),this._buffer=n.allocUnsafe(this._chunkSize),this._offset=0,this._level=l,this._strategy=u,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!a._handle},configurable:!0,enumerable:!0})}function j(t,r){r&&e.nextTick(r),t._handle&&(t._handle.close(),t._handle=null)}function S(t){t.emit("close")}Object.defineProperty(r,"codes",{enumerable:!0,value:Object.freeze(p),writable:!1}),r.Deflate=y,r.Inflate=b,r.Gzip=w,r.Gunzip=k,r.DeflateRaw=x,r.InflateRaw=B,r.Unzip=C,r.createDeflate=function(t){return new y(t)},r.createInflate=function(t){return new b(t)},r.createDeflateRaw=function(t){return new x(t)},r.createInflateRaw=function(t){return new B(t)},r.createGzip=function(t){return new w(t)},r.createGunzip=function(t){return new k(t)},r.createUnzip=function(t){return new C(t)},r.deflate=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new y(e),t,r)},r.deflateSync=function(t,e){return _(new y(e),t)},r.gzip=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new w(e),t,r)},r.gzipSync=function(t,e){return _(new w(e),t)},r.deflateRaw=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new x(e),t,r)},r.deflateRawSync=function(t,e){return _(new x(e),t)},r.unzip=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new C(e),t,r)},r.unzipSync=function(t,e){return _(new C(e),t)},r.inflate=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new b(e),t,r)},r.inflateSync=function(t,e){return _(new b(e),t)},r.gunzip=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new k(e),t,r)},r.gunzipSync=function(t,e){return _(new k(e),t)},r.inflateRaw=function(t,e,r){return"function"==typeof e&&(r=e,e={}),v(new B(e),t,r)},r.inflateRawSync=function(t,e){return _(new B(e),t)},a.inherits(P,i),P.prototype.params=function(t,n,i){if(tr.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+t);if(n!=r.Z_FILTERED&&n!=r.Z_HUFFMAN_ONLY&&n!=r.Z_RLE&&n!=r.Z_FIXED&&n!=r.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+n);if(this._level!==t||this._strategy!==n){var a=this;this.flush(o.Z_SYNC_FLUSH,function(){s(a._handle,"zlib binding closed"),a._handle.params(t,n),a._hadError||(a._level=t,a._strategy=n,i&&i())})}else e.nextTick(i)},P.prototype.reset=function(){return s(this._handle,"zlib binding closed"),this._handle.reset()},P.prototype._flush=function(t){this._transform(n.alloc(0),"",t)},P.prototype.flush=function(t,r){var i=this,a=this._writableState;("function"==typeof t||void 0===t&&!r)&&(r=t,t=o.Z_FULL_FLUSH),a.ended?r&&e.nextTick(r):a.ending?r&&this.once("end",r):a.needDrain?r&&this.once("drain",function(){return i.flush(t,r)}):(this._flushFlag=t,this.write(n.alloc(0),"",r))},P.prototype.close=function(t){j(this,t),e.nextTick(S,this)},P.prototype._transform=function(t,e,r){var i,a=this._writableState,s=(a.ending||a.ended)&&(!t||a.length===t.length);return null===t||n.isBuffer(t)?this._handle?(s?i=this._finishFlushFlag:(i=this._flushFlag,t.length>=a.length&&(this._flushFlag=this._opts.flush||o.Z_NO_FLUSH)),void this._processChunk(t,i,r)):r(new Error("zlib binding closed")):r(new Error("invalid input"))},P.prototype._processChunk=function(t,e,r){var i=t&&t.length,o=this._chunkSize-this._offset,a=0,c=this,f="function"==typeof r;if(!f){var h,p=[],d=0;this.on("error",function(t){h=t}),s(this._handle,"zlib binding closed");do{var m=this._handle.writeSync(e,t,a,i,this._buffer,this._offset,o)}while(!this._hadError&&_(m[0],m[1]));if(this._hadError)throw h;if(d>=l)throw j(this),new RangeError(u);var g=n.concat(p,d);return j(this),g}s(this._handle,"zlib binding closed");var v=this._handle.write(e,t,a,i,this._buffer,this._offset,o);function _(l,u){if(this&&(this.buffer=null,this.callback=null),!c._hadError){var h=o-u;if(s(h>=0,"have should not go down"),h>0){var m=c._buffer.slice(c._offset,c._offset+h);c._offset+=h,f?c.push(m):(p.push(m),d+=m.length)}if((0===u||c._offset>=c._chunkSize)&&(o=c._chunkSize,c._offset=0,c._buffer=n.allocUnsafe(c._chunkSize)),0===u){if(a+=i-l,i=l,!f)return!0;var g=c._handle.write(e,t,a,i,c._buffer,c._offset,c._chunkSize);return g.callback=_,void(g.buffer=t)}if(!f)return!1;r()}}v.buffer=t,v.callback=_},a.inherits(y,P),a.inherits(b,P),a.inherits(w,P),a.inherits(k,P),a.inherits(x,P),a.inherits(B,P),a.inherits(C,P)}).call(this,t("_process"))},{"./binding":45,_process:118,assert:41,buffer:48,stream:169,util:180}],47:[function(t,e,r){arguments[4][4][0].apply(r,arguments)},{dup:4}],48:[function(t,e,r){"use strict";var n=t("base64-js"),i=t("ieee754");r.Buffer=s,r.SlowBuffer=function(t){+t!=t&&(t=0);return s.alloc(+t)},r.INSPECT_MAX_BYTES=50;var o=2147483647;function a(t){if(t>o)throw new RangeError("Invalid typed array length");var e=new Uint8Array(t);return e.__proto__=s.prototype,e}function s(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return c(t)}return l(t,e,r)}function l(t,e,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return U(t)?function(t,e,r){if(e<0||t.byteLength=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function p(t,e){if(s.isBuffer(t))return t.length;if(z(t)||U(t))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return O(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return D(t).length;default:if(n)return O(t).length;e=(""+e).toLowerCase(),n=!0}}function d(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function m(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),q(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=s.from(e,n)),s.isBuffer(e))return 0===e.length?-1:g(t,e,r,n,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):g(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function g(t,e,r,n,i){var o,a=1,s=t.length,l=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;a=2,s/=2,l/=2,r/=2}function u(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){var c=-1;for(o=r;os&&(r=s-l),o=r;o>=0;o--){for(var f=!0,h=0;hi&&(n=i):n=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var a=0;a>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function x(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function B(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:u>223?3:u>191?2:1;if(i+f<=r)switch(f){case 1:u<128&&(c=u);break;case 2:128==(192&(o=t[i+1]))&&(l=(31&u)<<6|63&o)>127&&(c=l);break;case 3:o=t[i+1],a=t[i+2],128==(192&o)&&128==(192&a)&&(l=(15&u)<<12|(63&o)<<6|63&a)>2047&&(l<55296||l>57343)&&(c=l);break;case 4:o=t[i+1],a=t[i+2],s=t[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(l=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&l<1114112&&(c=l)}null===c?(c=65533,f=1):c>65535&&(c-=65536,n.push(c>>>10&1023|55296),c=56320|1023&c),n.push(c),i+=f}return function(t){var e=t.length;if(e<=C)return String.fromCharCode.apply(String,t);var r="",n=0;for(;nthis.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return j(this,e,r);case"utf8":case"utf-8":return B(this,e,r);case"ascii":return E(this,e,r);case"latin1":case"binary":return P(this,e,r);case"base64":return x(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}.apply(this,arguments)},s.prototype.equals=function(t){if(!s.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===s.compare(this,t)},s.prototype.inspect=function(){var t="",e=r.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,e).match(/.{2}/g).join(" "),this.length>e&&(t+=" ... ")),""},s.prototype.compare=function(t,e,r,n,i){if(!s.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(e>>>=0,r>>>=0,n>>>=0,i>>>=0,this===t)return 0;for(var o=i-n,a=r-e,l=Math.min(o,a),u=this.slice(n,i),c=t.slice(e,r),f=0;f>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return v(this,t,e,r);case"utf8":case"utf-8":return _(this,t,e,r);case"ascii":return y(this,t,e,r);case"latin1":case"binary":return b(this,t,e,r);case"base64":return w(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},s.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var C=4096;function E(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;in)&&(r=n);for(var i="",o=e;or)throw new RangeError("Trying to access beyond buffer length")}function M(t,e,r,n,i,o){if(!s.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function A(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function I(t,e,r,n,o){return e=+e,r>>>=0,o||A(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function R(t,e,r,n,o){return e=+e,r>>>=0,o||A(t,0,r,8),i.write(t,e,r,n,52,8),r+8}s.prototype.slice=function(t,e){var r=this.length;t=~~t,e=void 0===e?r:~~e,t<0?(t+=r)<0&&(t=0):t>r&&(t=r),e<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||T(t,e,this.length);for(var n=this[t],i=1,o=0;++o>>=0,e>>>=0,r||T(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},s.prototype.readUInt8=function(t,e){return t>>>=0,e||T(t,1,this.length),this[t]},s.prototype.readUInt16LE=function(t,e){return t>>>=0,e||T(t,2,this.length),this[t]|this[t+1]<<8},s.prototype.readUInt16BE=function(t,e){return t>>>=0,e||T(t,2,this.length),this[t]<<8|this[t+1]},s.prototype.readUInt32LE=function(t,e){return t>>>=0,e||T(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},s.prototype.readUInt32BE=function(t,e){return t>>>=0,e||T(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},s.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||T(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},s.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||T(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},s.prototype.readInt8=function(t,e){return t>>>=0,e||T(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},s.prototype.readInt16LE=function(t,e){t>>>=0,e||T(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},s.prototype.readInt16BE=function(t,e){t>>>=0,e||T(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},s.prototype.readInt32LE=function(t,e){return t>>>=0,e||T(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},s.prototype.readInt32BE=function(t,e){return t>>>=0,e||T(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},s.prototype.readFloatLE=function(t,e){return t>>>=0,e||T(t,4,this.length),i.read(this,t,!0,23,4)},s.prototype.readFloatBE=function(t,e){return t>>>=0,e||T(t,4,this.length),i.read(this,t,!1,23,4)},s.prototype.readDoubleLE=function(t,e){return t>>>=0,e||T(t,8,this.length),i.read(this,t,!0,52,8)},s.prototype.readDoubleBE=function(t,e){return t>>>=0,e||T(t,8,this.length),i.read(this,t,!1,52,8)},s.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e>>>=0,r>>>=0,n)||M(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o>>=0,r>>>=0,n)||M(this,t,e,r,Math.pow(2,8*r)-1,0);var i=r-1,o=1;for(this[e+i]=255&t;--i>=0&&(o*=256);)this[e+i]=t/o&255;return e+r},s.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,1,255,0),this[e]=255&t,e+1},s.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},s.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},s.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},s.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},s.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,t,e,r,i-1,-i)}var o=0,a=1,s=0;for(this[e]=255&t;++o>0)-s&255;return e+r},s.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,t,e,r,i-1,-i)}var o=r-1,a=1,s=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===s&&0!==this[e+o+1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+r},s.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},s.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},s.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},s.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},s.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||M(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},s.prototype.writeFloatLE=function(t,e,r){return I(this,t,e,!0,r)},s.prototype.writeFloatBE=function(t,e,r){return I(this,t,e,!1,r)},s.prototype.writeDoubleLE=function(t,e,r){return R(this,t,e,!0,r)},s.prototype.writeDoubleBE=function(t,e,r){return R(this,t,e,!1,r)},s.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(o<1e3)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function D(t){return n.toByteArray(function(t){if((t=t.trim().replace(L,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function N(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function U(t){return t instanceof ArrayBuffer||null!=t&&null!=t.constructor&&"ArrayBuffer"===t.constructor.name&&"number"==typeof t.byteLength}function z(t){return"function"==typeof ArrayBuffer.isView&&ArrayBuffer.isView(t)}function q(t){return t!=t}},{"base64-js":1,ieee754:61}],49:[function(t,e,r){var n=Object.create||function(t){var e=function(){};return e.prototype=t,new e},i=Object.keys||function(t){var e=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.push(r);return r},o=Function.prototype.bind||function(t){var e=this;return function(){return e.apply(t,arguments)}};function a(){this._events&&Object.prototype.hasOwnProperty.call(this,"_events")||(this._events=n(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0}e.exports=a,a.EventEmitter=a,a.prototype._events=void 0,a.prototype._maxListeners=void 0;var s,l=10;try{var u={};Object.defineProperty&&Object.defineProperty(u,"x",{value:0}),s=0===u.x}catch(t){s=!1}function c(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function f(t,e,r,i){var o,a,s;if("function"!=typeof r)throw new TypeError('"listener" argument must be a function');if((a=t._events)?(a.newListener&&(t.emit("newListener",e,r.listener?r.listener:r),a=t._events),s=a[e]):(a=t._events=n(null),t._eventsCount=0),s){if("function"==typeof s?s=a[e]=i?[r,s]:[s,r]:i?s.unshift(r):s.push(r),!s.warned&&(o=c(t))&&o>0&&s.length>o){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+' "'+String(e)+'" listeners added. Use emitter.setMaxListeners() to increase limit.');l.name="MaxListenersExceededWarning",l.emitter=t,l.type=e,l.count=s.length,"object"==typeof console&&console.warn&&console.warn("%s: %s",l.name,l.message)}}else s=a[e]=r,++t._eventsCount;return t}function h(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var t=new Array(arguments.length),e=0;e1&&(e=arguments[1]),e instanceof Error)throw e;var l=new Error('Unhandled "error" event. ('+e+")");throw l.context=e,l}if(!(r=a[t]))return!1;var u="function"==typeof r;switch(n=arguments.length){case 1:!function(t,e,r){if(e)t.call(r);else for(var n=t.length,i=g(t,n),o=0;o=0;a--)if(r[a]===e||r[a].listener===e){s=r[a].listener,o=a;break}if(o<0)return this;0===o?r.shift():function(t,e){for(var r=e,n=r+1,i=t.length;n=0;o--)this.removeListener(t,e[o]);return this},a.prototype.listeners=function(t){return d(this,t,!0)},a.prototype.rawListeners=function(t){return d(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):m.call(t,e)},a.prototype.listenerCount=m,a.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]}},{}],50:[function(t,e,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function i(t,e){return Object.prototype.hasOwnProperty.call(t,e)}r.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var r=e.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var n in r)i(r,n)&&(t[n]=r[n])}}return t},r.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var o={arraySet:function(t,e,r,n,i){if(e.subarray&&t.subarray)t.set(e.subarray(r,r+n),i);else for(var o=0;o>>16&65535|0,a=0;0!==r;){r-=a=r>2e3?2e3:r;do{o=o+(i=i+e[n++]|0)|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}},{}],52:[function(t,e,r){"use strict";e.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}},{}],53:[function(t,e,r){"use strict";var n=function(){for(var t,e=[],r=0;r<256;r++){t=r;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[r]=t}return e}();e.exports=function(t,e,r,i){var o=n,a=i+r;t^=-1;for(var s=i;s>>8^o[255&(t^e[s])];return-1^t}},{}],54:[function(t,e,r){"use strict";var n,i=t("../utils/common"),o=t("./trees"),a=t("./adler32"),s=t("./crc32"),l=t("./messages"),u=0,c=1,f=3,h=4,p=5,d=0,m=1,g=-2,v=-3,_=-5,y=-1,b=1,w=2,k=3,x=4,B=0,C=2,E=8,P=9,j=15,S=8,T=286,M=30,A=19,I=2*T+1,R=15,L=3,F=258,O=F+L+1,D=32,N=42,U=69,z=73,q=91,V=103,H=113,G=666,W=1,Z=2,Y=3,X=4,$=3;function J(t,e){return t.msg=l[e],e}function K(t){return(t<<1)-(t>4?9:0)}function Q(t){for(var e=t.length;--e>=0;)t[e]=0}function tt(t){var e=t.state,r=e.pending;r>t.avail_out&&(r=t.avail_out),0!==r&&(i.arraySet(t.output,e.pending_buf,e.pending_out,r,t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,0===e.pending&&(e.pending_out=0))}function et(t,e){o._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,tt(t.strm)}function rt(t,e){t.pending_buf[t.pending++]=e}function nt(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function it(t,e){var r,n,i=t.max_chain_length,o=t.strstart,a=t.prev_length,s=t.nice_match,l=t.strstart>t.w_size-O?t.strstart-(t.w_size-O):0,u=t.window,c=t.w_mask,f=t.prev,h=t.strstart+F,p=u[o+a-1],d=u[o+a];t.prev_length>=t.good_match&&(i>>=2),s>t.lookahead&&(s=t.lookahead);do{if(u[(r=e)+a]===d&&u[r+a-1]===p&&u[r]===u[o]&&u[++r]===u[o+1]){o+=2,r++;do{}while(u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&u[++o]===u[++r]&&oa){if(t.match_start=e,a=n,n>=s)break;p=u[o+a-1],d=u[o+a]}}}while((e=f[e&c])>l&&0!=--i);return a<=t.lookahead?a:t.lookahead}function ot(t){var e,r,n,o,l,u,c,f,h,p,d=t.w_size;do{if(o=t.window_size-t.lookahead-t.strstart,t.strstart>=d+(d-O)){i.arraySet(t.window,t.window,d,d,0),t.match_start-=d,t.strstart-=d,t.block_start-=d,e=r=t.hash_size;do{n=t.head[--e],t.head[e]=n>=d?n-d:0}while(--r);e=r=d;do{n=t.prev[--e],t.prev[e]=n>=d?n-d:0}while(--r);o+=d}if(0===t.strm.avail_in)break;if(u=t.strm,c=t.window,f=t.strstart+t.lookahead,h=o,p=void 0,(p=u.avail_in)>h&&(p=h),r=0===p?0:(u.avail_in-=p,i.arraySet(c,u.input,u.next_in,p,f),1===u.state.wrap?u.adler=a(u.adler,c,p,f):2===u.state.wrap&&(u.adler=s(u.adler,c,p,f)),u.next_in+=p,u.total_in+=p,p),t.lookahead+=r,t.lookahead+t.insert>=L)for(l=t.strstart-t.insert,t.ins_h=t.window[l],t.ins_h=(t.ins_h<=L&&(t.ins_h=(t.ins_h<=L)if(n=o._tr_tally(t,t.strstart-t.match_start,t.match_length-L),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=L){t.match_length--;do{t.strstart++,t.ins_h=(t.ins_h<=L&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=L-1)),t.prev_length>=L&&t.match_length<=t.prev_length){i=t.strstart+t.lookahead-L,n=o._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-L),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=i&&(t.ins_h=(t.ins_h<15&&(s=2,n-=16),o<1||o>P||r!==E||n<8||n>15||e<0||e>9||a<0||a>x)return J(t,g);8===n&&(n=9);var l=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=E,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*I),this.dyn_dtree=new i.Buf16(2*(2*M+1)),this.bl_tree=new i.Buf16(2*(2*A+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(R+1),this.heap=new i.Buf16(2*T+1),Q(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*T+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 t.state=l,l.strm=t,l.wrap=s,l.gzhead=null,l.w_bits=n,l.w_size=1<t.pending_buf_size-5&&(r=t.pending_buf_size-5);;){if(t.lookahead<=1){if(ot(t),0===t.lookahead&&e===u)return W;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var n=t.block_start+r;if((0===t.strstart||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,et(t,!1),0===t.strm.avail_out))return W;if(t.strstart-t.block_start>=t.w_size-O&&(et(t,!1),0===t.strm.avail_out))return W}return t.insert=0,e===h?(et(t,!0),0===t.strm.avail_out?Y:X):(t.strstart>t.block_start&&(et(t,!1),t.strm.avail_out),W)}),new lt(4,4,8,4,at),new lt(4,5,16,8,at),new lt(4,6,32,32,at),new lt(4,4,16,16,st),new lt(8,16,32,32,st),new lt(8,16,128,128,st),new lt(8,32,128,256,st),new lt(32,128,258,1024,st),new lt(32,258,258,4096,st)],r.deflateInit=function(t,e){return ft(t,e,E,j,S,B)},r.deflateInit2=ft,r.deflateReset=ct,r.deflateResetKeep=ut,r.deflateSetHeader=function(t,e){return t&&t.state?2!==t.state.wrap?g:(t.state.gzhead=e,d):g},r.deflate=function(t,e){var r,i,a,l;if(!t||!t.state||e>p||e<0)return t?J(t,g):g;if(i=t.state,!t.output||!t.input&&0!==t.avail_in||i.status===G&&e!==h)return J(t,0===t.avail_out?_:g);if(i.strm=t,r=i.last_flush,i.last_flush=e,i.status===N)if(2===i.wrap)t.adler=0,rt(i,31),rt(i,139),rt(i,8),i.gzhead?(rt(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)),rt(i,255&i.gzhead.time),rt(i,i.gzhead.time>>8&255),rt(i,i.gzhead.time>>16&255),rt(i,i.gzhead.time>>24&255),rt(i,9===i.level?2:i.strategy>=w||i.level<2?4:0),rt(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(rt(i,255&i.gzhead.extra.length),rt(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(t.adler=s(t.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=U):(rt(i,0),rt(i,0),rt(i,0),rt(i,0),rt(i,0),rt(i,9===i.level?2:i.strategy>=w||i.level<2?4:0),rt(i,$),i.status=H);else{var v=E+(i.w_bits-8<<4)<<8;v|=(i.strategy>=w||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(v|=D),v+=31-v%31,i.status=H,nt(i,v),0!==i.strstart&&(nt(i,t.adler>>>16),nt(i,65535&t.adler)),t.adler=1}if(i.status===U)if(i.gzhead.extra){for(a=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),tt(t),a=i.pending,i.pending!==i.pending_buf_size));)rt(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=z)}else i.status=z;if(i.status===z)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),tt(t),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.gzindex=0,i.status=q)}else i.status=q;if(i.status===q)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),tt(t),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(t.adler=s(t.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.status=V)}else i.status=V;if(i.status===V&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&tt(t),i.pending+2<=i.pending_buf_size&&(rt(i,255&t.adler),rt(i,t.adler>>8&255),t.adler=0,i.status=H)):i.status=H),0!==i.pending){if(tt(t),0===t.avail_out)return i.last_flush=-1,d}else if(0===t.avail_in&&K(e)<=K(r)&&e!==h)return J(t,_);if(i.status===G&&0!==t.avail_in)return J(t,_);if(0!==t.avail_in||0!==i.lookahead||e!==u&&i.status!==G){var y=i.strategy===w?function(t,e){for(var r;;){if(0===t.lookahead&&(ot(t),0===t.lookahead)){if(e===u)return W;break}if(t.match_length=0,r=o._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(et(t,!1),0===t.strm.avail_out))return W}return t.insert=0,e===h?(et(t,!0),0===t.strm.avail_out?Y:X):t.last_lit&&(et(t,!1),0===t.strm.avail_out)?W:Z}(i,e):i.strategy===k?function(t,e){for(var r,n,i,a,s=t.window;;){if(t.lookahead<=F){if(ot(t),t.lookahead<=F&&e===u)return W;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=L&&t.strstart>0&&(n=s[i=t.strstart-1])===s[++i]&&n===s[++i]&&n===s[++i]){a=t.strstart+F;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&it.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=L?(r=o._tr_tally(t,1,t.match_length-L),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=o._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(et(t,!1),0===t.strm.avail_out))return W}return t.insert=0,e===h?(et(t,!0),0===t.strm.avail_out?Y:X):t.last_lit&&(et(t,!1),0===t.strm.avail_out)?W:Z}(i,e):n[i.level].func(i,e);if(y!==Y&&y!==X||(i.status=G),y===W||y===Y)return 0===t.avail_out&&(i.last_flush=-1),d;if(y===Z&&(e===c?o._tr_align(i):e!==p&&(o._tr_stored_block(i,0,0,!1),e===f&&(Q(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),tt(t),0===t.avail_out))return i.last_flush=-1,d}return e!==h?d:i.wrap<=0?m:(2===i.wrap?(rt(i,255&t.adler),rt(i,t.adler>>8&255),rt(i,t.adler>>16&255),rt(i,t.adler>>24&255),rt(i,255&t.total_in),rt(i,t.total_in>>8&255),rt(i,t.total_in>>16&255),rt(i,t.total_in>>24&255)):(nt(i,t.adler>>>16),nt(i,65535&t.adler)),tt(t),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?d:m)},r.deflateEnd=function(t){var e;return t&&t.state?(e=t.state.status)!==N&&e!==U&&e!==z&&e!==q&&e!==V&&e!==H&&e!==G?J(t,g):(t.state=null,e===H?J(t,v):d):g},r.deflateSetDictionary=function(t,e){var r,n,o,s,l,u,c,f,h=e.length;if(!t||!t.state)return g;if(2===(s=(r=t.state).wrap)||1===s&&r.status!==N||r.lookahead)return g;for(1===s&&(t.adler=a(t.adler,e,h,0)),r.wrap=0,h>=r.w_size&&(0===s&&(Q(r.head),r.strstart=0,r.block_start=0,r.insert=0),f=new i.Buf8(r.w_size),i.arraySet(f,e,h-r.w_size,r.w_size,0),e=f,h=r.w_size),l=t.avail_in,u=t.next_in,c=t.input,t.avail_in=h,t.next_in=0,t.input=e,ot(r);r.lookahead>=L;){n=r.strstart,o=r.lookahead-(L-1);do{r.ins_h=(r.ins_h<>>=b=y>>>24,d-=b,0===(b=y>>>16&255))E[o++]=65535&y;else{if(!(16&b)){if(0==(64&b)){y=m[(65535&y)+(p&(1<>>=b,d-=b),d<15&&(p+=C[n++]<>>=b=y>>>24,d-=b,!(16&(b=y>>>16&255))){if(0==(64&b)){y=g[(65535&y)+(p&(1<l){t.msg="invalid distance too far back",r.mode=30;break t}if(p>>>=b,d-=b,k>(b=o-a)){if((b=k-b)>c&&r.sane){t.msg="invalid distance too far back",r.mode=30;break t}if(x=0,B=h,0===f){if(x+=u-b,b2;)E[o++]=B[x++],E[o++]=B[x++],E[o++]=B[x++],w-=3;w&&(E[o++]=B[x++],w>1&&(E[o++]=B[x++]))}else{x=o-k;do{E[o++]=E[x++],E[o++]=E[x++],E[o++]=E[x++],w-=3}while(w>2);w&&(E[o++]=E[x++],w>1&&(E[o++]=E[x++]))}break}}break}}while(n>3,p&=(1<<(d-=w<<3))-1,t.next_in=n,t.next_out=o,t.avail_in=n>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24)}function it(t){var e;return t&&t.state?(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=k,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new n.Buf32(tt),e.distcode=e.distdyn=new n.Buf32(et),e.sane=1,e.back=-1,d):v}function ot(t){var e;return t&&t.state?((e=t.state).wsize=0,e.whave=0,e.wnext=0,it(t)):v}function at(t,e){var r,n;return t&&t.state?(n=t.state,e<0?(r=0,e=-e):(r=1+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?v:(null!==n.window&&n.wbits!==e&&(n.window=null),n.wrap=r,n.wbits=e,ot(t))):v}function st(t,e){var r,i;return t?(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 n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0},t.state=i,i.window=null,(r=at(t,e))!==d&&(t.state=null),r):v}var lt,ut,ct=!0;function ft(t){if(ct){var e;for(lt=new n.Buf32(512),ut=new n.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(s(u,t.lens,0,288,lt,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;s(c,t.lens,0,32,ut,0,t.work,{bits:5}),ct=!1}t.lencode=lt,t.lenbits=9,t.distcode=ut,t.distbits=5}function ht(t,e,r,i){var o,a=t.state;return null===a.window&&(a.wsize=1<=a.wsize?(n.arraySet(a.window,e,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):((o=a.wsize-a.wnext)>i&&(o=i),n.arraySet(a.window,e,r-i,o,a.wnext),(i-=o)?(n.arraySet(a.window,e,r-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=o,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,r.check=o(r.check,Pt,2,0),st=0,lt=0,r.mode=x;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&st)<<8)+(st>>8))%31){t.msg="incorrect header check",r.mode=J;break}if((15&st)!==w){t.msg="unknown compression method",r.mode=J;break}if(lt-=4,kt=8+(15&(st>>>=4)),0===r.wbits)r.wbits=kt;else if(kt>r.wbits){t.msg="invalid window size",r.mode=J;break}r.dmax=1<>8&1),512&r.flags&&(Pt[0]=255&st,Pt[1]=st>>>8&255,r.check=o(r.check,Pt,2,0)),st=0,lt=0,r.mode=B;case B:for(;lt<32;){if(0===ot)break t;ot--,st+=tt[rt++]<>>8&255,Pt[2]=st>>>16&255,Pt[3]=st>>>24&255,r.check=o(r.check,Pt,4,0)),st=0,lt=0,r.mode=C;case C:for(;lt<16;){if(0===ot)break t;ot--,st+=tt[rt++]<>8),512&r.flags&&(Pt[0]=255&st,Pt[1]=st>>>8&255,r.check=o(r.check,Pt,2,0)),st=0,lt=0,r.mode=E;case E:if(1024&r.flags){for(;lt<16;){if(0===ot)break t;ot--,st+=tt[rt++]<>>8&255,r.check=o(r.check,Pt,2,0)),st=0,lt=0}else r.head&&(r.head.extra=null);r.mode=P;case P:if(1024&r.flags&&((pt=r.length)>ot&&(pt=ot),pt&&(r.head&&(kt=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,tt,rt,pt,kt)),512&r.flags&&(r.check=o(r.check,tt,pt,rt)),ot-=pt,rt+=pt,r.length-=pt),r.length))break t;r.length=0,r.mode=j;case j:if(2048&r.flags){if(0===ot)break t;pt=0;do{kt=tt[rt+pt++],r.head&&kt&&r.length<65536&&(r.head.name+=String.fromCharCode(kt))}while(kt&&pt>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=I;break;case M:for(;lt<32;){if(0===ot)break t;ot--,st+=tt[rt++]<>>=7<,lt-=7<,r.mode=Y;break}for(;lt<3;){if(0===ot)break t;ot--,st+=tt[rt++]<>>=1)){case 0:r.mode=L;break;case 1:if(ft(r),r.mode=z,e===p){st>>>=2,lt-=2;break t}break;case 2:r.mode=D;break;case 3:t.msg="invalid block type",r.mode=J}st>>>=2,lt-=2;break;case L:for(st>>>=7<,lt-=7<lt<32;){if(0===ot)break t;ot--,st+=tt[rt++]<>>16^65535)){t.msg="invalid stored block lengths",r.mode=J;break}if(r.length=65535&st,st=0,lt=0,r.mode=F,e===p)break t;case F:r.mode=O;case O:if(pt=r.length){if(pt>ot&&(pt=ot),pt>at&&(pt=at),0===pt)break t;n.arraySet(et,tt,rt,pt,it),ot-=pt,rt+=pt,at-=pt,it+=pt,r.length-=pt;break}r.mode=I;break;case D:for(;lt<14;){if(0===ot)break t;ot--,st+=tt[rt++]<>>=5,lt-=5,r.ndist=1+(31&st),st>>>=5,lt-=5,r.ncode=4+(15&st),st>>>=4,lt-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=J;break}r.have=0,r.mode=N;case N:for(;r.have>>=3,lt-=3}for(;r.have<19;)r.lens[jt[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,Bt={bits:r.lenbits},xt=s(l,r.lens,0,19,r.lencode,0,r.work,Bt),r.lenbits=Bt.bits,xt){t.msg="invalid code lengths set",r.mode=J;break}r.have=0,r.mode=U;case U:for(;r.have>>16&255,_t=65535&Et,!((gt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>>=gt,lt-=gt,r.lens[r.have++]=_t;else{if(16===_t){for(Ct=gt+2;lt>>=gt,lt-=gt,0===r.have){t.msg="invalid bit length repeat",r.mode=J;break}kt=r.lens[r.have-1],pt=3+(3&st),st>>>=2,lt-=2}else if(17===_t){for(Ct=gt+3;lt>>=gt)),st>>>=3,lt-=3}else{for(Ct=gt+7;lt>>=gt)),st>>>=7,lt-=7}if(r.have+pt>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=J;break}for(;pt--;)r.lens[r.have++]=kt}}if(r.mode===J)break;if(0===r.lens[256]){t.msg="invalid code -- missing end-of-block",r.mode=J;break}if(r.lenbits=9,Bt={bits:r.lenbits},xt=s(u,r.lens,0,r.nlen,r.lencode,0,r.work,Bt),r.lenbits=Bt.bits,xt){t.msg="invalid literal/lengths set",r.mode=J;break}if(r.distbits=6,r.distcode=r.distdyn,Bt={bits:r.distbits},xt=s(c,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,Bt),r.distbits=Bt.bits,xt){t.msg="invalid distances set",r.mode=J;break}if(r.mode=z,e===p)break t;case z:r.mode=q;case q:if(ot>=6&&at>=258){t.next_out=it,t.avail_out=at,t.next_in=rt,t.avail_in=ot,r.hold=st,r.bits=lt,a(t,ct),it=t.next_out,et=t.output,at=t.avail_out,rt=t.next_in,tt=t.input,ot=t.avail_in,st=r.hold,lt=r.bits,r.mode===I&&(r.back=-1);break}for(r.back=0;vt=(Et=r.lencode[st&(1<>>16&255,_t=65535&Et,!((gt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>yt)])>>>16&255,_t=65535&Et,!(yt+(gt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>>=yt,lt-=yt,r.back+=yt}if(st>>>=gt,lt-=gt,r.back+=gt,r.length=_t,0===vt){r.mode=Z;break}if(32&vt){r.back=-1,r.mode=I;break}if(64&vt){t.msg="invalid literal/length code",r.mode=J;break}r.extra=15&vt,r.mode=V;case V:if(r.extra){for(Ct=r.extra;lt>>=r.extra,lt-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=H;case H:for(;vt=(Et=r.distcode[st&(1<>>16&255,_t=65535&Et,!((gt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>yt)])>>>16&255,_t=65535&Et,!(yt+(gt=Et>>>24)<=lt);){if(0===ot)break t;ot--,st+=tt[rt++]<>>=yt,lt-=yt,r.back+=yt}if(st>>>=gt,lt-=gt,r.back+=gt,64&vt){t.msg="invalid distance code",r.mode=J;break}r.offset=_t,r.extra=15&vt,r.mode=G;case G:if(r.extra){for(Ct=r.extra;lt>>=r.extra,lt-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=J;break}r.mode=W;case W:if(0===at)break t;if(pt=ct-at,r.offset>pt){if((pt=r.offset-pt)>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=J;break}pt>r.wnext?(pt-=r.wnext,dt=r.wsize-pt):dt=r.wnext-pt,pt>r.length&&(pt=r.length),mt=r.window}else mt=et,dt=it-r.offset,pt=r.length;pt>at&&(pt=at),at-=pt,r.length-=pt;do{et[it++]=mt[dt++]}while(--pt);0===r.length&&(r.mode=q);break;case Z:if(0===at)break t;et[it++]=r.length,at--,r.mode=q;break;case Y:if(r.wrap){for(;lt<32;){if(0===ot)break t;ot--,st|=tt[rt++]<=1&&0===L[E];E--);if(P>E&&(P=E),0===E)return u[c++]=20971520,u[c++]=20971520,h.bits=1,0;for(C=1;C0&&(0===t||1!==E))return-1;for(F[1]=0,x=1;x<15;x++)F[x+1]=F[x]+L[x];for(B=0;B852||2===t&&M>592)return 1;for(;;){y=x-S,f[B]<_?(b=0,w=f[B]):f[B]>_?(b=O[D+f[B]],w=I[R+f[B]]):(b=96,w=0),p=1<>S)+(d-=p)]=y<<24|b<<16|w|0}while(0!==d);for(p=1<>=1;if(0!==p?(A&=p-1,A+=p):A=0,B++,0==--L[x]){if(x===E)break;x=e[r+f[B]]}if(x>P&&(A&g)!==m){for(0===S&&(S=P),v+=C,T=1<<(j=x-S);j+S852||2===t&&M>592)return 1;u[m=A&g]=P<<24|j<<16|v-c|0}}return 0!==A&&(u[v+A]=x-S<<24|64<<16|0),h.bits=P,0}},{"../utils/common":50}],58:[function(t,e,r){"use strict";e.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"}},{}],59:[function(t,e,r){"use strict";var n=t("../utils/common"),i=4,o=0,a=1,s=2;function l(t){for(var e=t.length;--e>=0;)t[e]=0}var u=0,c=1,f=2,h=29,p=256,d=p+1+h,m=30,g=19,v=2*d+1,_=15,y=16,b=7,w=256,k=16,x=17,B=18,C=[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],E=[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],P=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],j=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],S=new Array(2*(d+2));l(S);var T=new Array(2*m);l(T);var M=new Array(512);l(M);var A=new Array(256);l(A);var I=new Array(h);l(I);var R,L,F,O=new Array(m);function D(t,e,r,n,i){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=t&&t.length}function N(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function U(t){return t<256?M[t]:M[256+(t>>>7)]}function z(t,e){t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255}function q(t,e,r){t.bi_valid>y-r?(t.bi_buf|=e<>y-t.bi_valid,t.bi_valid+=r-y):(t.bi_buf|=e<>>=1,r<<=1}while(--e>0);return r>>>1}function G(t,e,r){var n,i,o=new Array(_+1),a=0;for(n=1;n<=_;n++)o[n]=a=a+r[n-1]<<1;for(i=0;i<=e;i++){var s=t[2*i+1];0!==s&&(t[2*i]=H(o[s]++,s))}}function W(t){var e;for(e=0;e8?z(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function Y(t,e,r,n){var i=2*e,o=2*r;return t[i]>1;r>=1;r--)X(t,o,r);i=l;do{r=t.heap[1],t.heap[1]=t.heap[t.heap_len--],X(t,o,1),n=t.heap[1],t.heap[--t.heap_max]=r,t.heap[--t.heap_max]=n,o[2*i]=o[2*r]+o[2*n],t.depth[i]=(t.depth[r]>=t.depth[n]?t.depth[r]:t.depth[n])+1,o[2*r+1]=o[2*n+1]=i,t.heap[1]=i++,X(t,o,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],function(t,e){var r,n,i,o,a,s,l=e.dyn_tree,u=e.max_code,c=e.stat_desc.static_tree,f=e.stat_desc.has_stree,h=e.stat_desc.extra_bits,p=e.stat_desc.extra_base,d=e.stat_desc.max_length,m=0;for(o=0;o<=_;o++)t.bl_count[o]=0;for(l[2*t.heap[t.heap_max]+1]=0,r=t.heap_max+1;rd&&(o=d,m++),l[2*n+1]=o,n>u||(t.bl_count[o]++,a=0,n>=p&&(a=h[n-p]),s=l[2*n],t.opt_len+=s*(o+a),f&&(t.static_len+=s*(c[2*n+1]+a)));if(0!==m){do{for(o=d-1;0===t.bl_count[o];)o--;t.bl_count[o]--,t.bl_count[o+1]+=2,t.bl_count[d]--,m-=2}while(m>0);for(o=d;0!==o;o--)for(n=t.bl_count[o];0!==n;)(i=t.heap[--r])>u||(l[2*i+1]!==o&&(t.opt_len+=(o-l[2*i+1])*l[2*i],l[2*i+1]=o),n--)}}(t,e),G(o,u,t.bl_count)}function K(t,e,r){var n,i,o=-1,a=e[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),e[2*(r+1)+1]=65535,n=0;n<=r;n++)i=a,a=e[2*(n+1)+1],++s>=7;n0?(t.strm.data_type===s&&(t.strm.data_type=function(t){var e,r=4093624447;for(e=0;e<=31;e++,r>>>=1)if(1&r&&0!==t.dyn_ltree[2*e])return o;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return a;for(e=32;e=3&&0===t.bl_tree[2*j[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}(t),l=t.opt_len+3+7>>>3,(u=t.static_len+3+7>>>3)<=l&&(l=u)):l=u=r+5,r+4<=l&&-1!==e?et(t,e,r,n):t.strategy===i||u===l?(q(t,(c<<1)+(n?1:0),3),$(t,S,T)):(q(t,(f<<1)+(n?1:0),3),function(t,e,r,n){var i;for(q(t,e-257,5),q(t,r-1,5),q(t,n-4,4),i=0;i>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&r,t.last_lit++,0===e?t.dyn_ltree[2*r]++:(t.matches++,e--,t.dyn_ltree[2*(A[r]+p+1)]++,t.dyn_dtree[2*U(e)]++),t.last_lit===t.lit_bufsize-1},r._tr_align=function(t){q(t,c<<1,3),V(t,w,S),function(t){16===t.bi_valid?(z(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}(t)}},{"../utils/common":50}],60:[function(t,e,r){"use strict";e.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}},{}],61:[function(t,e,r){r.read=function(t,e,r,n,i){var o,a,s=8*i-n-1,l=(1<>1,c=-7,f=r?i-1:0,h=r?-1:1,p=t[e+f];for(f+=h,o=p&(1<<-c)-1,p>>=-c,c+=s;c>0;o=256*o+t[e+f],f+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=n;c>0;a=256*a+t[e+f],f+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,n),o-=u}return(p?-1:1)*a*Math.pow(2,o-n)},r.write=function(t,e,r,n,i,o){var a,s,l,u=8*o-i-1,c=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:o-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),(e+=a+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(a++,l/=2),a+f>=c?(s=0,a=c):a+f>=1?(s=(e*l-1)*Math.pow(2,i),a+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;t[r+p]=255&s,p+=d,s/=256,i-=8);for(a=a<0;t[r+p]=255&a,p+=d,a/=256,u-=8);t[r+p-d]|=128*m}},{}],62:[function(t,e,r){e.exports=[function(t,e){return{options:t,draw:function(e,r,n){n.stop(!0),n.overrideFlag=!0;var i=this;return e.pixelManipulation({output:function(t,e,r){i.output={src:e,format:r}},changePixel:function(t,e,r,n){return[255-t,255-e,255-r,n]},format:e.format,image:t.image,inBrowser:t.inBrowser,callback:r})},output:void 0,UI:e}},{name:"Invert",description:"Inverts the image.",inputs:{}}]},{}],63:[function(t,e,r){"use strict";var n=t("underscore"),i=e.exports={Bitmap:t("./lib/bitmap")};n.extend(i,t("./lib/enums"))},{"./lib/bitmap":64,"./lib/enums":65,underscore:175}],64:[function(t,e,r){(function(r){"use strict";var n=t("fs"),i=(t("underscore"),t("bluebird")),o=t("jpeg-js"),a=t("node-png").PNG,s=t("./enums"),l=t("./utils"),u=t("./resize"),c={r:0,g:0,b:0,a:0},f=e.exports=function(t){t&&(t instanceof f?this._data={data:new r(t.data.data),width:t.width,height:t.height}:t.data?this._data=t:t.width&&t.height&&(this._data={data:new r(4*t.width*t.height),width:t.width,height:t.height},t.color&&this._fill(t.color)))};f.prototype={get width(){return this._data.width},get height(){return this._data.height},attach:function(t){var e=this._data;return this._data=t,e},detach:function(){var t=this._data;return delete this._data,t},_deduceFileType:function(t){if(!t)throw new Error("Can't determine image type");switch(t.substr(-4).toLowerCase()){case".jpg":return s.ImageType.JPG;case".png":return s.ImageType.PNG}if(".jpeg"==t.substr(-5).toLowerCase())return s.ImageType.JPG;throw new Error("Can't recognise image type: "+t)},_readStream:function(t){var e=i.defer(),n=[];return t.on("data",function(t){n.push(t)}),t.on("end",function(){var t=r.concat(n);e.resolve(t)}),t.on("error",function(t){e.reject(t)}),e.promise},_readPNG:function(t){var e=i.defer(),r=new a({filterType:4});return r.on("parsed",function(){e.resolve(r)}),r.on("error",function(t){e.rejecyt(t)}),t.pipe(r),e.promise},_parseOptions:function(t,e){return"number"==typeof(t=t||{})&&(t={type:t}),t.type=t.type||this._deduceFileType(e),t},read:function(t,e){var r=this;switch((e=this._parseOptions(e)).type){case s.ImageType.JPG:return this._readStream(t).then(function(t){r._data=o.decode(t)});case s.ImageType.PNG:return this._readPNG(t).then(function(t){r._data={data:t.data,width:t.width,height:t.height}});default:return i.reject(new Error("Not supported: ImageType "+e.type))}},readFile:function(t,e){var r=this;return l.fs.exists(t).then(function(i){if(i){e=r._parseOptions(e,t);var o=n.createReadStream(t);return r.read(o,e)}throw new Error("File Not Found: "+t)})},write:function(t,e){e=this._parseOptions(e);var r=i.defer();try{switch(t.on("finish",function(){r.resolve()}),t.on("error",function(t){r.reject(t)}),e.type){case s.ImageType.JPG:var n=o.encode(this._data,e.quality||90).data;t.write(n),t.end();break;case s.ImageType.PNG:var l=new a;l.width=this.width,l.height=this.height,l.data=this._data.data,l.on("end",function(){r.resolve()}),l.on("error",function(t){r.reject(t)}),l.pack().pipe(t);break;default:throw new Error("Not supported: ImageType "+e.type)}}catch(t){r.reject(t)}return r.promise},writeFile:function(t,e){e=this._parseOptions(e,t);var r=n.createWriteStream(t);return this.write(r,e)},clone:function(){return new f({width:this.width,height:this.height,data:new r(this._data.data)})},setPixel:function(t,e,r,n,i,o){if(void 0===n){var a=r;r=a.r,n=a.g,i=a.b,o=a.a}void 0===o&&(o=255);var s=4*(e*this.width+t),l=this._data.data;l[s++]=r,l[s++]=n,l[s++]=i,l[s++]=o},getPixel:function(t,e,r){var n=4*(e*this.width+t);r=r||{};var i=this._data.data;return r.r=i[n++],r.g=i[n++],r.b=i[n++],r.a=i[n++],r},negative:function(){for(var t=new f({width:this.width,height:this.height}),e=this.width*this.height,r=this._data.data,n=t._data.data,i=0,o=0,a=0;a-1&&S-1&&T=0&&T>=0?w[F]:O)+D*(g=S=0?w[F+4]:O),z=(1-D)*(v=S>=0&&T0?a:0)-(c>0?4:0)]+2*s[p-(u>0?a:0)]+1*s[p-(u>0?a:0)+(c0?4:0)]+4*s[p]+2*s[p+(c0?4:0)]+2*s[p+(u0?o[k-4]:2*o[k]-o[k+4],B=o[k],C=o[k+4],E=z0?m[k-4*h]:2*m[k]-m[k+4*h],T=m[k],M=m[k+4*h],A=N1)for(g=0;g0&&!t[a-1];)a--;o.push({children:[],index:0});var s,l=o[0];for(r=0;r0;)l=o.pop();for(l.index++,o.push(l);o.length<=r;)o.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s;i++}r+10)return p>>--d&1;if(255==(p=e[r++])){var t=e[r++];if(t)throw"unexpected marker: "+(p<<8|t).toString(16)}return d=7,p>>>7}function g(t){for(var e,r=t;null!==(e=m());){if("number"==typeof(r=r[e]))return r;if("object"!=typeof r)throw"invalid huffman sequence"}return null}function v(t){for(var e=0;t>0;){var r=m();if(null===r)return;e=e<<1|r,t--}return e}function _(t){var e=v(t);return e>=1<0)y--;else for(var n=a,i=s;n<=i;){var o=g(e.huffmanTableAC),l=15&o,c=o>>4;if(0!==l)r[t[n+=c]]=_(l)*(1<>4,0===f)o<15?(y=v(o)+(1<>4;if(0!==s)r[t[o+=l]]=_(s),o++;else{if(l<15)break;o+=16}}};var M,A,I,R,L=0;for(A=1==T?i[0].blocksPerLine*i[0].blocksPerColumn:c*n.mcusPerColumn,o||(o=A);L=65488&&M<=65495))break;r+=2}return r-h}function h(t,u){var c,f,h=[],p=u.blocksPerLine,d=u.blocksPerColumn,m=p<<3,g=new Int32Array(64),v=new Uint8Array(64);function _(t,c,f){var h,p,d,m,g,v,_,y,b,w,k=u.quantizationTable,x=f;for(w=0;w<64;w++)x[w]=t[w]*k[w];for(w=0;w<8;++w){var B=8*w;0!=x[1+B]||0!=x[2+B]||0!=x[3+B]||0!=x[4+B]||0!=x[5+B]||0!=x[6+B]||0!=x[7+B]?(h=s*x[0+B]+128>>8,p=s*x[4+B]+128>>8,d=x[2+B],m=x[6+B],g=l*(x[1+B]-x[7+B])+128>>8,y=l*(x[1+B]+x[7+B])+128>>8,v=x[3+B]<<4,_=x[5+B]<<4,b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+m*o+128>>8,d=d*o-m*a+128>>8,m=b,b=g-_+1>>1,g=g+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=b,b=h-m+1>>1,h=h+m+1>>1,m=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=g*i+y*n+2048>>12,g=g*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+B]=h+y,x[7+B]=h-y,x[1+B]=p+_,x[6+B]=p-_,x[2+B]=d+v,x[5+B]=d-v,x[3+B]=m+g,x[4+B]=m-g):(b=s*x[0+B]+512>>10,x[0+B]=b,x[1+B]=b,x[2+B]=b,x[3+B]=b,x[4+B]=b,x[5+B]=b,x[6+B]=b,x[7+B]=b)}for(w=0;w<8;++w){var C=w;0!=x[8+C]||0!=x[16+C]||0!=x[24+C]||0!=x[32+C]||0!=x[40+C]||0!=x[48+C]||0!=x[56+C]?(h=s*x[0+C]+2048>>12,p=s*x[32+C]+2048>>12,d=x[16+C],m=x[48+C],g=l*(x[8+C]-x[56+C])+2048>>12,y=l*(x[8+C]+x[56+C])+2048>>12,v=x[24+C],_=x[40+C],b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+m*o+2048>>12,d=d*o-m*a+2048>>12,m=b,b=g-_+1>>1,g=g+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=b,b=h-m+1>>1,h=h+m+1>>1,m=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=g*i+y*n+2048>>12,g=g*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+C]=h+y,x[56+C]=h-y,x[8+C]=p+_,x[48+C]=p-_,x[16+C]=d+v,x[40+C]=d-v,x[24+C]=m+g,x[32+C]=m-g):(b=s*f[w+0]+8192>>14,x[0+C]=b,x[8+C]=b,x[16+C]=b,x[24+C]=b,x[32+C]=b,x[40+C]=b,x[48+C]=b,x[56+C]=b)}for(w=0;w<64;++w){var E=128+(x[w]+8>>4);c[w]=E<0?0:E>255?255:E}}for(var y=0;y255?255:t}return u.prototype={load:function(t){var e=new XMLHttpRequest;e.open("GET",t,!0),e.responseType="arraybuffer",e.onload=function(){var t=new Uint8Array(e.response||e.mozResponseArrayBuffer);this.parse(t),this.onload&&this.onload()}.bind(this),e.send(null)},parse:function(e){var r=0;e.length;function n(){var t=e[r]<<8|e[r+1];return r+=2,t}function i(){var t=n(),i=e.subarray(r,r+t-2);return r+=i.length,i}function o(t){var e,r,n=0,i=0;for(r in t.components)t.components.hasOwnProperty(r)&&(n<(e=t.components[r]).h&&(n=e.h),i>4==0)for(z=0;z<64;z++){w[t[z]]=e[r++]}else{if(b>>4!=1)throw"DQT: invalid table spec";for(z=0;z<64;z++){w[t[z]]=n()}}p[15&b]=w}break;case 65472:case 65473:case 65474:n(),(a={}).extended=65473===v,a.progressive=65474===v,a.precision=e[r++],a.scanLines=n(),a.samplesPerLine=n(),a.components={},a.componentsOrder=[];var k,x=e[r++];for(N=0;N>4,C=15&e[r+1],E=e[r+2];a.componentsOrder.push(k),a.components[k]={h:B,v:C,quantizationIdx:E},r+=3}o(a),d.push(a);break;case 65476:var P=n();for(N=2;N>4==0?g:m)[15&j]=c(S,M)}break;case 65501:n(),s=n();break;case 65498:n();var A=e[r++],I=[];for(N=0;N>4],q.huffmanTableAC=m[15&R],I.push(q)}var L=e[r++],F=e[r++],O=e[r++],D=f(e,r,a,I,s,L,F,O>>4,15&O);r+=D;break;default:if(255==e[r-3]&&e[r-2]>=192&&e[r-2]<=254){r-=3;break}throw"unknown JPEG marker "+v.toString(16)}v=n()}if(1!=d.length)throw"only single frame JPEGs supported";for(var N=0;N=0;)e&1<>8&255),L(255&t)}function O(t,e,r,n,i){var o,a=i[0],s=i[240];for(var l=function(t,e){var r,n,i,o,a,s,l,u,c,f,h=0;for(c=0;c<8;++c){r=t[h],n=t[h+1],i=t[h+2],o=t[h+3],a=t[h+4],s=t[h+5],l=t[h+6];var p=r+(u=t[h+7]),m=r-u,g=n+l,v=n-l,_=i+s,y=i-s,b=o+a,w=o-a,k=p+b,x=p-b,B=g+_,C=g-_;t[h]=k+B,t[h+4]=k-B;var E=.707106781*(C+x);t[h+2]=x+E,t[h+6]=x-E;var P=.382683433*((k=w+y)-(C=v+m)),j=.5411961*k+P,S=1.306562965*C+P,T=.707106781*(B=y+v),M=m+T,A=m-T;t[h+5]=A+j,t[h+3]=A-j,t[h+1]=M+S,t[h+7]=M-S,h+=8}for(h=0,c=0;c<8;++c){r=t[h],n=t[h+8],i=t[h+16],o=t[h+24],a=t[h+32],s=t[h+40],l=t[h+48];var I=r+(u=t[h+56]),R=r-u,L=n+l,F=n-l,O=i+s,D=i-s,N=o+a,U=o-a,z=I+N,q=I-N,V=L+O,H=L-O;t[h]=z+V,t[h+32]=z-V;var G=.707106781*(H+q);t[h+16]=q+G,t[h+48]=q-G;var W=.382683433*((z=U+D)-(H=F+R)),Z=.5411961*z+W,Y=1.306562965*H+W,X=.707106781*(V=D+F),$=R+X,J=R-X;t[h+40]=J+Z,t[h+24]=J-Z,t[h+8]=$+Y,t[h+56]=$-Y,h++}for(c=0;c<64;++c)f=t[c]*e[c],d[c]=f>0?f+.5|0:f-.5|0;return d}(t,e),u=0;u<64;++u)m[B[u]]=l[u];var c=m[0]-r;r=m[0],0==c?R(n[0]):(R(n[p[o=32767+c]]),R(h[o]));for(var f=63;f>0&&0==m[f];f--);if(0==f)return R(a),r;for(var g,v=1;v<=f;){for(var _=v;0==m[v]&&v<=f;++v);var y=v-_;if(y>=16){g=y>>4;for(var b=1;b<=g;++b)R(s);y&=15}o=32767+m[v],R(i[(y<<4)+p[o]]),R(h[o]),v++}return 63!=f&&R(a),r}function D(t){if(t<=0&&(t=1),t>100&&(t=100),a!=t){(function(t){for(var e=[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],r=0;r<64;r++){var n=s((e[r]*t+50)/100);n<1?n=1:n>255&&(n=255),l[B[r]]=n}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],o=0;o<64;o++){var a=s((i[o]*t+50)/100);a<1?a=1:a>255&&(a=255),u[B[o]]=a}for(var h=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],p=0,d=0;d<8;d++)for(var m=0;m<8;m++)c[p]=1/(l[B[p]]*h[d]*h[m]*8),f[p]=1/(u[B[p]]*h[d]*h[m]*8),p++})(t<50?Math.floor(5e3/t):Math.floor(200-2*t)),a=t}}this.encode=function(e,a){(new Date).getTime();a&&D(a),g=new Array,v=0,_=7,F(65496),F(65504),F(16),L(74),L(70),L(73),L(70),L(0),L(1),L(1),L(0),F(1),F(1),L(0),L(0),function(){F(65499),F(132),L(0);for(var t=0;t<64;t++)L(l[t]);L(1);for(var e=0;e<64;e++)L(u[e])}(),function(t,e){F(65472),F(17),L(8),F(e),F(t),L(3),L(1),L(17),L(0),L(2),L(17),L(1),L(3),L(17),L(1)}(e.width,e.height),function(){F(65476),F(418),L(0);for(var t=0;t<16;t++)L(C[t+1]);for(var e=0;e<=11;e++)L(E[e]);L(16);for(var r=0;r<16;r++)L(P[r+1]);for(var n=0;n<=161;n++)L(j[n]);L(1);for(var i=0;i<16;i++)L(S[i+1]);for(var o=0;o<=11;o++)L(T[o]);L(17);for(var a=0;a<16;a++)L(M[a+1]);for(var s=0;s<=161;s++)L(A[s])}(),F(65498),F(12),L(3),L(1),L(0),L(2),L(17),L(3),L(17),L(0),L(63),L(0);var s=0,h=0,p=0;v=0,_=7,this.encode.displayName="_encode_";for(var d,m,k,B,I,N,U,z,q,V=e.data,H=e.width,G=e.height,W=4*H,Z=0;Z>3)*W+(U=4*(7&q)),Z+z>=G&&(N-=W*(Z+1+z-G)),d+U>=W&&(N-=d+U-W+4),m=V[N++],k=V[N++],B=V[N++],y[q]=(x[m]+x[k+256>>0]+x[B+512>>0]>>16)-128,b[q]=(x[m+768>>0]+x[k+1024>>0]+x[B+1280>>0]>>16)-128,w[q]=(x[m+1280>>0]+x[k+1536>>0]+x[B+1792>>0]>>16)-128;s=O(y,c,s,r,i),h=O(b,f,h,n,o),p=O(w,f,p,n,o),d+=32}Z+=8}if(_>=0){var Y=[];Y[1]=_+1,Y[0]=(1<<_+1)-1,R(Y)}return F(65497),new t(g)},function(){(new Date).getTime();e||(e=50),function(){for(var t=String.fromCharCode,e=0;e<256;e++)k[e]=t(e)}(),r=I(C,E),n=I(S,T),i=I(P,j),o=I(M,A),function(){for(var t=1,e=2,r=1;r<=15;r++){for(var n=t;n>0]=38470*t,x[t+512>>0]=7471*t+32768,x[t+768>>0]=-11059*t,x[t+1024>>0]=-21709*t,x[t+1280>>0]=32768*t+8421375,x[t+1536>>0]=-27439*t,x[t+1792>>0]=-5329*t}(),D(e),(new Date).getTime()}()}e.exports=function(t,e){void 0===e&&(e=50);return{data:new r(e).encode(t,e),width:t.width,height:t.height}}}).call(this,t("buffer").Buffer)},{buffer:48}],71:[function(t,e,r){arguments[4][42][0].apply(r,arguments)},{dup:42}],72:[function(t,e,r){"use strict";e.exports=function(t){for(var e=new Array(t),r=0;r=this.width||e<0||e>=this.height)&&!!this.data[e*this.width+t]},t.prototype.set=function(t,e,r){this.data[e*this.width+t]=r?1:0},t.prototype.setRegion=function(t,e,r,n,i){for(var o=e;o=this.size&&(i=(i^this.primitive)&this.size-1);for(o=0;o1&&0===e[0]){for(var n=1;ni.length&&(r=(o=[i,r])[0],i=o[1]);for(var o,a=new Uint8ClampedArray(i.length),s=i.length-r.length,l=0;lr?r:t}var s=function(){function t(t,e){this.width=t,this.data=new Uint8ClampedArray(t*e)}return t.prototype.get=function(t,e){return this.data[e*this.width+t]},t.prototype.set=function(t,e,r){this.data[e*this.width+t]=r},t}();e.binarize=function(t,e,r,l){if(t.length!==e*r*4)throw new Error("Malformed data passed to binarizer.");for(var u=new s(e,r),c=0;c0&&y>0)){var C=(v.get(y,_-1)+2*v.get(y-1,_)+v.get(y-1,_-1))/4;w6&&(r.setRegion(e-11,0,3,6,!0),r.setRegion(0,e-11,6,3,!0)),r}(e),s=[],u=0,f=0,h=!0,p=o-1;p>0;p-=2){6===p&&p--;for(var d=0;d=0;i--)for(var o=e-9;o>=e-11;o--)n=l(t.get(o,i),n);var u=0;for(o=5;o>=0;o--)for(i=e-9;i>=e-11;i--)u=l(t.get(o,i),u);for(var c,f=1/0,h=0,p=a.VERSIONS;h=0;n--)6!==n&&(e=l(t.get(8,n),e));var i=t.height,o=0;for(n=i-1;n>=i-7;n--)o=l(t.get(8,n),o);for(r=i-8;r1){var c=n.ecBlocks[0].numBlocks,f=n.ecBlocks[1].numBlocks;for(s=0;s0;)for(var h=0,p=i;h=3;){if((u=t.readBits(10))>=1e3)throw new Error("Invalid numeric value above 999");var a=Math.floor(u/100),s=Math.floor(u/10)%10,l=u%10;r.push(48+a,48+s,48+l),n+=a.toString()+s.toString()+l.toString(),o-=3}if(2===o){if((u=t.readBits(7))>=100)throw new Error("Invalid numeric value above 99");a=Math.floor(u/10),s=u%10;r.push(48+a,48+s),n+=a.toString()+s.toString()}else if(1===o){var u;if((u=t.readBits(4))>=10)throw new Error("Invalid numeric value above 9");r.push(48+u),n+=u.toString()}return{bytes:r,text:n}}!function(t){t.Numeric="numeric",t.Alphanumeric="alphanumeric",t.Byte="byte",t.Kanji="kanji",t.ECI="eci"}(n=e.Mode||(e.Mode={})),function(t){t[t.Terminator=0]="Terminator",t[t.Numeric=1]="Numeric",t[t.Alphanumeric=2]="Alphanumeric",t[t.Byte=4]="Byte",t[t.Kanji=8]="Kanji",t[t.ECI=7]="ECI"}(i||(i={}));var l=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function u(t,e){for(var r=[],n="",i=[9,11,13][e],o=t.readBits(i);o>=2;){var a=t.readBits(11),s=Math.floor(a/45),u=a%45;r.push(l[s].charCodeAt(0),l[u].charCodeAt(0)),n+=l[s]+l[u],o-=2}if(1===o){s=t.readBits(6);r.push(l[s].charCodeAt(0)),n+=l[s]}return{bytes:r,text:n}}function c(t,e){for(var r=[],n="",i=[8,16,16][e],o=t.readBits(i),a=0;a>8,255&u),n+=String.fromCharCode(a.shiftJISTable[u])}return{bytes:r,text:n}}e.decode=function(t,e){for(var r,a,l,h,p=new o.BitStream(t),d=e<=9?0:e<=26?1:2,m={text:"",bytes:[],chunks:[]};p.available()>=4;){var g=p.readBits(4);if(g===i.Terminator)return m;if(g===i.ECI)0===p.readBits(1)?m.chunks.push({type:n.ECI,assignmentNumber:p.readBits(7)}):0===p.readBits(1)?m.chunks.push({type:n.ECI,assignmentNumber:p.readBits(14)}):0===p.readBits(1)?m.chunks.push({type:n.ECI,assignmentNumber:p.readBits(21)}):m.chunks.push({type:n.ECI,assignmentNumber:-1});else if(g===i.Numeric){var v=s(p,d);m.text+=v.text,(r=m.bytes).push.apply(r,v.bytes),m.chunks.push({type:n.Numeric,text:v.text})}else if(g===i.Alphanumeric){var _=u(p,d);m.text+=_.text,(a=m.bytes).push.apply(a,_.bytes),m.chunks.push({type:n.Alphanumeric,text:_.text})}else if(g===i.Byte){var y=c(p,d);m.text+=y.text,(l=m.bytes).push.apply(l,y.bytes),m.chunks.push({type:n.Byte,bytes:y.bytes,text:y.text})}else if(g===i.Kanji){var b=f(p,d);m.text+=b.text,(h=m.bytes).push.apply(h,b.bytes),m.chunks.push({type:n.Kanji,bytes:b.bytes,text:b.text})}}}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t){this.byteOffset=0,this.bitOffset=0,this.bytes=t}return t.prototype.readBits=function(t){if(t<1||t>32||t>this.available())throw new Error("Cannot read "+t.toString()+" bits");var e=0;if(this.bitOffset>0){var r=8-this.bitOffset,n=t>8-n<<(o=r-n);e=(this.bytes[this.byteOffset]&i)>>o,t-=n,this.bitOffset+=n,8===this.bitOffset&&(this.bitOffset=0,this.byteOffset++)}if(t>0){for(;t>=8;)e=e<<8|255&this.bytes[this.byteOffset],this.byteOffset++,t-=8;if(t>0){var o;i=255>>(o=8-t)<>o,this.bitOffset+=t}}return e},t.prototype.available=function(){return 8*(this.bytes.length-this.byteOffset)-this.bitOffset},t}();e.BitStream=n},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.shiftJISTable={32:32,33:33,34:34,35:35,36:36,37:37,38:38,39:39,40:40,41:41,42:42,43:43,44:44,45:45,46:46,47:47,48:48,49:49,50:50,51:51,52:52,53:53,54:54,55:55,56:56,57:57,58:58,59:59,60:60,61:61,62:62,63:63,64:64,65:65,66:66,67:67,68:68,69:69,70:70,71:71,72:72,73:73,74:74,75:75,76:76,77:77,78:78,79:79,80:80,81:81,82:82,83:83,84:84,85:85,86:86,87:87,88:88,89:89,90:90,91:91,92:165,93:93,94:94,95:95,96:96,97:97,98:98,99:99,100:100,101:101,102:102,103:103,104:104,105:105,106:106,107:107,108:108,109:109,110:110,111:111,112:112,113:113,114:114,115:115,116:116,117:117,118:118,119:119,120:120,121:121,122:122,123:123,124:124,125:125,126:8254,33088:12288,33089:12289,33090:12290,33091:65292,33092:65294,33093:12539,33094:65306,33095:65307,33096:65311,33097:65281,33098:12443,33099:12444,33100:180,33101:65344,33102:168,33103:65342,33104:65507,33105:65343,33106:12541,33107:12542,33108:12445,33109:12446,33110:12291,33111:20189,33112:12293,33113:12294,33114:12295,33115:12540,33116:8213,33117:8208,33118:65295,33119:92,33120:12316,33121:8214,33122:65372,33123:8230,33124:8229,33125:8216,33126:8217,33127:8220,33128:8221,33129:65288,33130:65289,33131:12308,33132:12309,33133:65339,33134:65341,33135:65371,33136:65373,33137:12296,33138:12297,33139:12298,33140:12299,33141:12300,33142:12301,33143:12302,33144:12303,33145:12304,33146:12305,33147:65291,33148:8722,33149:177,33150:215,33152:247,33153:65309,33154:8800,33155:65308,33156:65310,33157:8806,33158:8807,33159:8734,33160:8756,33161:9794,33162:9792,33163:176,33164:8242,33165:8243,33166:8451,33167:65509,33168:65284,33169:162,33170:163,33171:65285,33172:65283,33173:65286,33174:65290,33175:65312,33176:167,33177:9734,33178:9733,33179:9675,33180:9679,33181:9678,33182:9671,33183:9670,33184:9633,33185:9632,33186:9651,33187:9650,33188:9661,33189:9660,33190:8251,33191:12306,33192:8594,33193:8592,33194:8593,33195:8595,33196:12307,33208:8712,33209:8715,33210:8838,33211:8839,33212:8834,33213:8835,33214:8746,33215:8745,33224:8743,33225:8744,33226:172,33227:8658,33228:8660,33229:8704,33230:8707,33242:8736,33243:8869,33244:8978,33245:8706,33246:8711,33247:8801,33248:8786,33249:8810,33250:8811,33251:8730,33252:8765,33253:8733,33254:8757,33255:8747,33256:8748,33264:8491,33265:8240,33266:9839,33267:9837,33268:9834,33269:8224,33270:8225,33271:182,33276:9711,33359:65296,33360:65297,33361:65298,33362:65299,33363:65300,33364:65301,33365:65302,33366:65303,33367:65304,33368:65305,33376:65313,33377:65314,33378:65315,33379:65316,33380:65317,33381:65318,33382:65319,33383:65320,33384:65321,33385:65322,33386:65323,33387:65324,33388:65325,33389:65326,33390:65327,33391:65328,33392:65329,33393:65330,33394:65331,33395:65332,33396:65333,33397:65334,33398:65335,33399:65336,33400:65337,33401:65338,33409:65345,33410:65346,33411:65347,33412:65348,33413:65349,33414:65350,33415:65351,33416:65352,33417:65353,33418:65354,33419:65355,33420:65356,33421:65357,33422:65358,33423:65359,33424:65360,33425:65361,33426:65362,33427:65363,33428:65364,33429:65365,33430:65366,33431:65367,33432:65368,33433:65369,33434:65370,33439:12353,33440:12354,33441:12355,33442:12356,33443:12357,33444:12358,33445:12359,33446:12360,33447:12361,33448:12362,33449:12363,33450:12364,33451:12365,33452:12366,33453:12367,33454:12368,33455:12369,33456:12370,33457:12371,33458:12372,33459:12373,33460:12374,33461:12375,33462:12376,33463:12377,33464:12378,33465:12379,33466:12380,33467:12381,33468:12382,33469:12383,33470:12384,33471:12385,33472:12386,33473:12387,33474:12388,33475:12389,33476:12390,33477:12391,33478:12392,33479:12393,33480:12394,33481:12395,33482:12396,33483:12397,33484:12398,33485:12399,33486:12400,33487:12401,33488:12402,33489:12403,33490:12404,33491:12405,33492:12406,33493:12407,33494:12408,33495:12409,33496:12410,33497:12411,33498:12412,33499:12413,33500:12414,33501:12415,33502:12416,33503:12417,33504:12418,33505:12419,33506:12420,33507:12421,33508:12422,33509:12423,33510:12424,33511:12425,33512:12426,33513:12427,33514:12428,33515:12429,33516:12430,33517:12431,33518:12432,33519:12433,33520:12434,33521:12435,33600:12449,33601:12450,33602:12451,33603:12452,33604:12453,33605:12454,33606:12455,33607:12456,33608:12457,33609:12458,33610:12459,33611:12460,33612:12461,33613:12462,33614:12463,33615:12464,33616:12465,33617:12466,33618:12467,33619:12468,33620:12469,33621:12470,33622:12471,33623:12472,33624:12473,33625:12474,33626:12475,33627:12476,33628:12477,33629:12478,33630:12479,33631:12480,33632:12481,33633:12482,33634:12483,33635:12484,33636:12485,33637:12486,33638:12487,33639:12488,33640:12489,33641:12490,33642:12491,33643:12492,33644:12493,33645:12494,33646:12495,33647:12496,33648:12497,33649:12498,33650:12499,33651:12500,33652:12501,33653:12502,33654:12503,33655:12504,33656:12505,33657:12506,33658:12507,33659:12508,33660:12509,33661:12510,33662:12511,33664:12512,33665:12513,33666:12514,33667:12515,33668:12516,33669:12517,33670:12518,33671:12519,33672:12520,33673:12521,33674:12522,33675:12523,33676:12524,33677:12525,33678:12526,33679:12527,33680:12528,33681:12529,33682:12530,33683:12531,33684:12532,33685:12533,33686:12534,33695:913,33696:914,33697:915,33698:916,33699:917,33700:918,33701:919,33702:920,33703:921,33704:922,33705:923,33706:924,33707:925,33708:926,33709:927,33710:928,33711:929,33712:931,33713:932,33714:933,33715:934,33716:935,33717:936,33718:937,33727:945,33728:946,33729:947,33730:948,33731:949,33732:950,33733:951,33734:952,33735:953,33736:954,33737:955,33738:956,33739:957,33740:958,33741:959,33742:960,33743:961,33744:963,33745:964,33746:965,33747:966,33748:967,33749:968,33750:969,33856:1040,33857:1041,33858:1042,33859:1043,33860:1044,33861:1045,33862:1025,33863:1046,33864:1047,33865:1048,33866:1049,33867:1050,33868:1051,33869:1052,33870:1053,33871:1054,33872:1055,33873:1056,33874:1057,33875:1058,33876:1059,33877:1060,33878:1061,33879:1062,33880:1063,33881:1064,33882:1065,33883:1066,33884:1067,33885:1068,33886:1069,33887:1070,33888:1071,33904:1072,33905:1073,33906:1074,33907:1075,33908:1076,33909:1077,33910:1105,33911:1078,33912:1079,33913:1080,33914:1081,33915:1082,33916:1083,33917:1084,33918:1085,33920:1086,33921:1087,33922:1088,33923:1089,33924:1090,33925:1091,33926:1092,33927:1093,33928:1094,33929:1095,33930:1096,33931:1097,33932:1098,33933:1099,33934:1100,33935:1101,33936:1102,33937:1103,33951:9472,33952:9474,33953:9484,33954:9488,33955:9496,33956:9492,33957:9500,33958:9516,33959:9508,33960:9524,33961:9532,33962:9473,33963:9475,33964:9487,33965:9491,33966:9499,33967:9495,33968:9507,33969:9523,33970:9515,33971:9531,33972:9547,33973:9504,33974:9519,33975:9512,33976:9527,33977:9535,33978:9501,33979:9520,33980:9509,33981:9528,33982:9538,34975:20124,34976:21782,34977:23043,34978:38463,34979:21696,34980:24859,34981:25384,34982:23030,34983:36898,34984:33909,34985:33564,34986:31312,34987:24746,34988:25569,34989:28197,34990:26093,34991:33894,34992:33446,34993:39925,34994:26771,34995:22311,34996:26017,34997:25201,34998:23451,34999:22992,35000:34427,35001:39156,35002:32098,35003:32190,35004:39822,35005:25110,35006:31903,35007:34999,35008:23433,35009:24245,35010:25353,35011:26263,35012:26696,35013:38343,35014:38797,35015:26447,35016:20197,35017:20234,35018:20301,35019:20381,35020:20553,35021:22258,35022:22839,35023:22996,35024:23041,35025:23561,35026:24799,35027:24847,35028:24944,35029:26131,35030:26885,35031:28858,35032:30031,35033:30064,35034:31227,35035:32173,35036:32239,35037:32963,35038:33806,35039:34915,35040:35586,35041:36949,35042:36986,35043:21307,35044:20117,35045:20133,35046:22495,35047:32946,35048:37057,35049:30959,35050:19968,35051:22769,35052:28322,35053:36920,35054:31282,35055:33576,35056:33419,35057:39983,35058:20801,35059:21360,35060:21693,35061:21729,35062:22240,35063:23035,35064:24341,35065:39154,35066:28139,35067:32996,35068:34093,35136:38498,35137:38512,35138:38560,35139:38907,35140:21515,35141:21491,35142:23431,35143:28879,35144:32701,35145:36802,35146:38632,35147:21359,35148:40284,35149:31418,35150:19985,35151:30867,35152:33276,35153:28198,35154:22040,35155:21764,35156:27421,35157:34074,35158:39995,35159:23013,35160:21417,35161:28006,35162:29916,35163:38287,35164:22082,35165:20113,35166:36939,35167:38642,35168:33615,35169:39180,35170:21473,35171:21942,35172:23344,35173:24433,35174:26144,35175:26355,35176:26628,35177:27704,35178:27891,35179:27945,35180:29787,35181:30408,35182:31310,35183:38964,35184:33521,35185:34907,35186:35424,35187:37613,35188:28082,35189:30123,35190:30410,35191:39365,35192:24742,35193:35585,35194:36234,35195:38322,35196:27022,35197:21421,35198:20870,35200:22290,35201:22576,35202:22852,35203:23476,35204:24310,35205:24616,35206:25513,35207:25588,35208:27839,35209:28436,35210:28814,35211:28948,35212:29017,35213:29141,35214:29503,35215:32257,35216:33398,35217:33489,35218:34199,35219:36960,35220:37467,35221:40219,35222:22633,35223:26044,35224:27738,35225:29989,35226:20985,35227:22830,35228:22885,35229:24448,35230:24540,35231:25276,35232:26106,35233:27178,35234:27431,35235:27572,35236:29579,35237:32705,35238:35158,35239:40236,35240:40206,35241:40644,35242:23713,35243:27798,35244:33659,35245:20740,35246:23627,35247:25014,35248:33222,35249:26742,35250:29281,35251:20057,35252:20474,35253:21368,35254:24681,35255:28201,35256:31311,35257:38899,35258:19979,35259:21270,35260:20206,35261:20309,35262:20285,35263:20385,35264:20339,35265:21152,35266:21487,35267:22025,35268:22799,35269:23233,35270:23478,35271:23521,35272:31185,35273:26247,35274:26524,35275:26550,35276:27468,35277:27827,35278:28779,35279:29634,35280:31117,35281:31166,35282:31292,35283:31623,35284:33457,35285:33499,35286:33540,35287:33655,35288:33775,35289:33747,35290:34662,35291:35506,35292:22057,35293:36008,35294:36838,35295:36942,35296:38686,35297:34442,35298:20420,35299:23784,35300:25105,35301:29273,35302:30011,35303:33253,35304:33469,35305:34558,35306:36032,35307:38597,35308:39187,35309:39381,35310:20171,35311:20250,35312:35299,35313:22238,35314:22602,35315:22730,35316:24315,35317:24555,35318:24618,35319:24724,35320:24674,35321:25040,35322:25106,35323:25296,35324:25913,35392:39745,35393:26214,35394:26800,35395:28023,35396:28784,35397:30028,35398:30342,35399:32117,35400:33445,35401:34809,35402:38283,35403:38542,35404:35997,35405:20977,35406:21182,35407:22806,35408:21683,35409:23475,35410:23830,35411:24936,35412:27010,35413:28079,35414:30861,35415:33995,35416:34903,35417:35442,35418:37799,35419:39608,35420:28012,35421:39336,35422:34521,35423:22435,35424:26623,35425:34510,35426:37390,35427:21123,35428:22151,35429:21508,35430:24275,35431:25313,35432:25785,35433:26684,35434:26680,35435:27579,35436:29554,35437:30906,35438:31339,35439:35226,35440:35282,35441:36203,35442:36611,35443:37101,35444:38307,35445:38548,35446:38761,35447:23398,35448:23731,35449:27005,35450:38989,35451:38990,35452:25499,35453:31520,35454:27179,35456:27263,35457:26806,35458:39949,35459:28511,35460:21106,35461:21917,35462:24688,35463:25324,35464:27963,35465:28167,35466:28369,35467:33883,35468:35088,35469:36676,35470:19988,35471:39993,35472:21494,35473:26907,35474:27194,35475:38788,35476:26666,35477:20828,35478:31427,35479:33970,35480:37340,35481:37772,35482:22107,35483:40232,35484:26658,35485:33541,35486:33841,35487:31909,35488:21e3,35489:33477,35490:29926,35491:20094,35492:20355,35493:20896,35494:23506,35495:21002,35496:21208,35497:21223,35498:24059,35499:21914,35500:22570,35501:23014,35502:23436,35503:23448,35504:23515,35505:24178,35506:24185,35507:24739,35508:24863,35509:24931,35510:25022,35511:25563,35512:25954,35513:26577,35514:26707,35515:26874,35516:27454,35517:27475,35518:27735,35519:28450,35520:28567,35521:28485,35522:29872,35523:29976,35524:30435,35525:30475,35526:31487,35527:31649,35528:31777,35529:32233,35530:32566,35531:32752,35532:32925,35533:33382,35534:33694,35535:35251,35536:35532,35537:36011,35538:36996,35539:37969,35540:38291,35541:38289,35542:38306,35543:38501,35544:38867,35545:39208,35546:33304,35547:20024,35548:21547,35549:23736,35550:24012,35551:29609,35552:30284,35553:30524,35554:23721,35555:32747,35556:36107,35557:38593,35558:38929,35559:38996,35560:39e3,35561:20225,35562:20238,35563:21361,35564:21916,35565:22120,35566:22522,35567:22855,35568:23305,35569:23492,35570:23696,35571:24076,35572:24190,35573:24524,35574:25582,35575:26426,35576:26071,35577:26082,35578:26399,35579:26827,35580:26820,35648:27231,35649:24112,35650:27589,35651:27671,35652:27773,35653:30079,35654:31048,35655:23395,35656:31232,35657:32e3,35658:24509,35659:35215,35660:35352,35661:36020,35662:36215,35663:36556,35664:36637,35665:39138,35666:39438,35667:39740,35668:20096,35669:20605,35670:20736,35671:22931,35672:23452,35673:25135,35674:25216,35675:25836,35676:27450,35677:29344,35678:30097,35679:31047,35680:32681,35681:34811,35682:35516,35683:35696,35684:25516,35685:33738,35686:38816,35687:21513,35688:21507,35689:21931,35690:26708,35691:27224,35692:35440,35693:30759,35694:26485,35695:40653,35696:21364,35697:23458,35698:33050,35699:34384,35700:36870,35701:19992,35702:20037,35703:20167,35704:20241,35705:21450,35706:21560,35707:23470,35708:24339,35709:24613,35710:25937,35712:26429,35713:27714,35714:27762,35715:27875,35716:28792,35717:29699,35718:31350,35719:31406,35720:31496,35721:32026,35722:31998,35723:32102,35724:26087,35725:29275,35726:21435,35727:23621,35728:24040,35729:25298,35730:25312,35731:25369,35732:28192,35733:34394,35734:35377,35735:36317,35736:37624,35737:28417,35738:31142,35739:39770,35740:20136,35741:20139,35742:20140,35743:20379,35744:20384,35745:20689,35746:20807,35747:31478,35748:20849,35749:20982,35750:21332,35751:21281,35752:21375,35753:21483,35754:21932,35755:22659,35756:23777,35757:24375,35758:24394,35759:24623,35760:24656,35761:24685,35762:25375,35763:25945,35764:27211,35765:27841,35766:29378,35767:29421,35768:30703,35769:33016,35770:33029,35771:33288,35772:34126,35773:37111,35774:37857,35775:38911,35776:39255,35777:39514,35778:20208,35779:20957,35780:23597,35781:26241,35782:26989,35783:23616,35784:26354,35785:26997,35786:29577,35787:26704,35788:31873,35789:20677,35790:21220,35791:22343,35792:24062,35793:37670,35794:26020,35795:27427,35796:27453,35797:29748,35798:31105,35799:31165,35800:31563,35801:32202,35802:33465,35803:33740,35804:34943,35805:35167,35806:35641,35807:36817,35808:37329,35809:21535,35810:37504,35811:20061,35812:20534,35813:21477,35814:21306,35815:29399,35816:29590,35817:30697,35818:33510,35819:36527,35820:39366,35821:39368,35822:39378,35823:20855,35824:24858,35825:34398,35826:21936,35827:31354,35828:20598,35829:23507,35830:36935,35831:38533,35832:20018,35833:27355,35834:37351,35835:23633,35836:23624,35904:25496,35905:31391,35906:27795,35907:38772,35908:36705,35909:31402,35910:29066,35911:38536,35912:31874,35913:26647,35914:32368,35915:26705,35916:37740,35917:21234,35918:21531,35919:34219,35920:35347,35921:32676,35922:36557,35923:37089,35924:21350,35925:34952,35926:31041,35927:20418,35928:20670,35929:21009,35930:20804,35931:21843,35932:22317,35933:29674,35934:22411,35935:22865,35936:24418,35937:24452,35938:24693,35939:24950,35940:24935,35941:25001,35942:25522,35943:25658,35944:25964,35945:26223,35946:26690,35947:28179,35948:30054,35949:31293,35950:31995,35951:32076,35952:32153,35953:32331,35954:32619,35955:33550,35956:33610,35957:34509,35958:35336,35959:35427,35960:35686,35961:36605,35962:38938,35963:40335,35964:33464,35965:36814,35966:39912,35968:21127,35969:25119,35970:25731,35971:28608,35972:38553,35973:26689,35974:20625,35975:27424,35976:27770,35977:28500,35978:31348,35979:32080,35980:34880,35981:35363,35982:26376,35983:20214,35984:20537,35985:20518,35986:20581,35987:20860,35988:21048,35989:21091,35990:21927,35991:22287,35992:22533,35993:23244,35994:24314,35995:25010,35996:25080,35997:25331,35998:25458,35999:26908,36000:27177,36001:29309,36002:29356,36003:29486,36004:30740,36005:30831,36006:32121,36007:30476,36008:32937,36009:35211,36010:35609,36011:36066,36012:36562,36013:36963,36014:37749,36015:38522,36016:38997,36017:39443,36018:40568,36019:20803,36020:21407,36021:21427,36022:24187,36023:24358,36024:28187,36025:28304,36026:29572,36027:29694,36028:32067,36029:33335,36030:35328,36031:35578,36032:38480,36033:20046,36034:20491,36035:21476,36036:21628,36037:22266,36038:22993,36039:23396,36040:24049,36041:24235,36042:24359,36043:25144,36044:25925,36045:26543,36046:28246,36047:29392,36048:31946,36049:34996,36050:32929,36051:32993,36052:33776,36053:34382,36054:35463,36055:36328,36056:37431,36057:38599,36058:39015,36059:40723,36060:20116,36061:20114,36062:20237,36063:21320,36064:21577,36065:21566,36066:23087,36067:24460,36068:24481,36069:24735,36070:26791,36071:27278,36072:29786,36073:30849,36074:35486,36075:35492,36076:35703,36077:37264,36078:20062,36079:39881,36080:20132,36081:20348,36082:20399,36083:20505,36084:20502,36085:20809,36086:20844,36087:21151,36088:21177,36089:21246,36090:21402,36091:21475,36092:21521,36160:21518,36161:21897,36162:22353,36163:22434,36164:22909,36165:23380,36166:23389,36167:23439,36168:24037,36169:24039,36170:24055,36171:24184,36172:24195,36173:24218,36174:24247,36175:24344,36176:24658,36177:24908,36178:25239,36179:25304,36180:25511,36181:25915,36182:26114,36183:26179,36184:26356,36185:26477,36186:26657,36187:26775,36188:27083,36189:27743,36190:27946,36191:28009,36192:28207,36193:28317,36194:30002,36195:30343,36196:30828,36197:31295,36198:31968,36199:32005,36200:32024,36201:32094,36202:32177,36203:32789,36204:32771,36205:32943,36206:32945,36207:33108,36208:33167,36209:33322,36210:33618,36211:34892,36212:34913,36213:35611,36214:36002,36215:36092,36216:37066,36217:37237,36218:37489,36219:30783,36220:37628,36221:38308,36222:38477,36224:38917,36225:39321,36226:39640,36227:40251,36228:21083,36229:21163,36230:21495,36231:21512,36232:22741,36233:25335,36234:28640,36235:35946,36236:36703,36237:40633,36238:20811,36239:21051,36240:21578,36241:22269,36242:31296,36243:37239,36244:40288,36245:40658,36246:29508,36247:28425,36248:33136,36249:29969,36250:24573,36251:24794,36252:39592,36253:29403,36254:36796,36255:27492,36256:38915,36257:20170,36258:22256,36259:22372,36260:22718,36261:23130,36262:24680,36263:25031,36264:26127,36265:26118,36266:26681,36267:26801,36268:28151,36269:30165,36270:32058,36271:33390,36272:39746,36273:20123,36274:20304,36275:21449,36276:21766,36277:23919,36278:24038,36279:24046,36280:26619,36281:27801,36282:29811,36283:30722,36284:35408,36285:37782,36286:35039,36287:22352,36288:24231,36289:25387,36290:20661,36291:20652,36292:20877,36293:26368,36294:21705,36295:22622,36296:22971,36297:23472,36298:24425,36299:25165,36300:25505,36301:26685,36302:27507,36303:28168,36304:28797,36305:37319,36306:29312,36307:30741,36308:30758,36309:31085,36310:25998,36311:32048,36312:33756,36313:35009,36314:36617,36315:38555,36316:21092,36317:22312,36318:26448,36319:32618,36320:36001,36321:20916,36322:22338,36323:38442,36324:22586,36325:27018,36326:32948,36327:21682,36328:23822,36329:22524,36330:30869,36331:40442,36332:20316,36333:21066,36334:21643,36335:25662,36336:26152,36337:26388,36338:26613,36339:31364,36340:31574,36341:32034,36342:37679,36343:26716,36344:39853,36345:31545,36346:21273,36347:20874,36348:21047,36416:23519,36417:25334,36418:25774,36419:25830,36420:26413,36421:27578,36422:34217,36423:38609,36424:30352,36425:39894,36426:25420,36427:37638,36428:39851,36429:30399,36430:26194,36431:19977,36432:20632,36433:21442,36434:23665,36435:24808,36436:25746,36437:25955,36438:26719,36439:29158,36440:29642,36441:29987,36442:31639,36443:32386,36444:34453,36445:35715,36446:36059,36447:37240,36448:39184,36449:26028,36450:26283,36451:27531,36452:20181,36453:20180,36454:20282,36455:20351,36456:21050,36457:21496,36458:21490,36459:21987,36460:22235,36461:22763,36462:22987,36463:22985,36464:23039,36465:23376,36466:23629,36467:24066,36468:24107,36469:24535,36470:24605,36471:25351,36472:25903,36473:23388,36474:26031,36475:26045,36476:26088,36477:26525,36478:27490,36480:27515,36481:27663,36482:29509,36483:31049,36484:31169,36485:31992,36486:32025,36487:32043,36488:32930,36489:33026,36490:33267,36491:35222,36492:35422,36493:35433,36494:35430,36495:35468,36496:35566,36497:36039,36498:36060,36499:38604,36500:39164,36501:27503,36502:20107,36503:20284,36504:20365,36505:20816,36506:23383,36507:23546,36508:24904,36509:25345,36510:26178,36511:27425,36512:28363,36513:27835,36514:29246,36515:29885,36516:30164,36517:30913,36518:31034,36519:32780,36520:32819,36521:33258,36522:33940,36523:36766,36524:27728,36525:40575,36526:24335,36527:35672,36528:40235,36529:31482,36530:36600,36531:23437,36532:38635,36533:19971,36534:21489,36535:22519,36536:22833,36537:23241,36538:23460,36539:24713,36540:28287,36541:28422,36542:30142,36543:36074,36544:23455,36545:34048,36546:31712,36547:20594,36548:26612,36549:33437,36550:23649,36551:34122,36552:32286,36553:33294,36554:20889,36555:23556,36556:25448,36557:36198,36558:26012,36559:29038,36560:31038,36561:32023,36562:32773,36563:35613,36564:36554,36565:36974,36566:34503,36567:37034,36568:20511,36569:21242,36570:23610,36571:26451,36572:28796,36573:29237,36574:37196,36575:37320,36576:37675,36577:33509,36578:23490,36579:24369,36580:24825,36581:20027,36582:21462,36583:23432,36584:25163,36585:26417,36586:27530,36587:29417,36588:29664,36589:31278,36590:33131,36591:36259,36592:37202,36593:39318,36594:20754,36595:21463,36596:21610,36597:23551,36598:25480,36599:27193,36600:32172,36601:38656,36602:22234,36603:21454,36604:21608,36672:23447,36673:23601,36674:24030,36675:20462,36676:24833,36677:25342,36678:27954,36679:31168,36680:31179,36681:32066,36682:32333,36683:32722,36684:33261,36685:33311,36686:33936,36687:34886,36688:35186,36689:35728,36690:36468,36691:36655,36692:36913,36693:37195,36694:37228,36695:38598,36696:37276,36697:20160,36698:20303,36699:20805,36700:21313,36701:24467,36702:25102,36703:26580,36704:27713,36705:28171,36706:29539,36707:32294,36708:37325,36709:37507,36710:21460,36711:22809,36712:23487,36713:28113,36714:31069,36715:32302,36716:31899,36717:22654,36718:29087,36719:20986,36720:34899,36721:36848,36722:20426,36723:23803,36724:26149,36725:30636,36726:31459,36727:33308,36728:39423,36729:20934,36730:24490,36731:26092,36732:26991,36733:27529,36734:28147,36736:28310,36737:28516,36738:30462,36739:32020,36740:24033,36741:36981,36742:37255,36743:38918,36744:20966,36745:21021,36746:25152,36747:26257,36748:26329,36749:28186,36750:24246,36751:32210,36752:32626,36753:26360,36754:34223,36755:34295,36756:35576,36757:21161,36758:21465,36759:22899,36760:24207,36761:24464,36762:24661,36763:37604,36764:38500,36765:20663,36766:20767,36767:21213,36768:21280,36769:21319,36770:21484,36771:21736,36772:21830,36773:21809,36774:22039,36775:22888,36776:22974,36777:23100,36778:23477,36779:23558,36780:23567,36781:23569,36782:23578,36783:24196,36784:24202,36785:24288,36786:24432,36787:25215,36788:25220,36789:25307,36790:25484,36791:25463,36792:26119,36793:26124,36794:26157,36795:26230,36796:26494,36797:26786,36798:27167,36799:27189,36800:27836,36801:28040,36802:28169,36803:28248,36804:28988,36805:28966,36806:29031,36807:30151,36808:30465,36809:30813,36810:30977,36811:31077,36812:31216,36813:31456,36814:31505,36815:31911,36816:32057,36817:32918,36818:33750,36819:33931,36820:34121,36821:34909,36822:35059,36823:35359,36824:35388,36825:35412,36826:35443,36827:35937,36828:36062,36829:37284,36830:37478,36831:37758,36832:37912,36833:38556,36834:38808,36835:19978,36836:19976,36837:19998,36838:20055,36839:20887,36840:21104,36841:22478,36842:22580,36843:22732,36844:23330,36845:24120,36846:24773,36847:25854,36848:26465,36849:26454,36850:27972,36851:29366,36852:30067,36853:31331,36854:33976,36855:35698,36856:37304,36857:37664,36858:22065,36859:22516,36860:39166,36928:25325,36929:26893,36930:27542,36931:29165,36932:32340,36933:32887,36934:33394,36935:35302,36936:39135,36937:34645,36938:36785,36939:23611,36940:20280,36941:20449,36942:20405,36943:21767,36944:23072,36945:23517,36946:23529,36947:24515,36948:24910,36949:25391,36950:26032,36951:26187,36952:26862,36953:27035,36954:28024,36955:28145,36956:30003,36957:30137,36958:30495,36959:31070,36960:31206,36961:32051,36962:33251,36963:33455,36964:34218,36965:35242,36966:35386,36967:36523,36968:36763,36969:36914,36970:37341,36971:38663,36972:20154,36973:20161,36974:20995,36975:22645,36976:22764,36977:23563,36978:29978,36979:23613,36980:33102,36981:35338,36982:36805,36983:38499,36984:38765,36985:31525,36986:35535,36987:38920,36988:37218,36989:22259,36990:21416,36992:36887,36993:21561,36994:22402,36995:24101,36996:25512,36997:27700,36998:28810,36999:30561,37000:31883,37001:32736,37002:34928,37003:36930,37004:37204,37005:37648,37006:37656,37007:38543,37008:29790,37009:39620,37010:23815,37011:23913,37012:25968,37013:26530,37014:36264,37015:38619,37016:25454,37017:26441,37018:26905,37019:33733,37020:38935,37021:38592,37022:35070,37023:28548,37024:25722,37025:23544,37026:19990,37027:28716,37028:30045,37029:26159,37030:20932,37031:21046,37032:21218,37033:22995,37034:24449,37035:24615,37036:25104,37037:25919,37038:25972,37039:26143,37040:26228,37041:26866,37042:26646,37043:27491,37044:28165,37045:29298,37046:29983,37047:30427,37048:31934,37049:32854,37050:22768,37051:35069,37052:35199,37053:35488,37054:35475,37055:35531,37056:36893,37057:37266,37058:38738,37059:38745,37060:25993,37061:31246,37062:33030,37063:38587,37064:24109,37065:24796,37066:25114,37067:26021,37068:26132,37069:26512,37070:30707,37071:31309,37072:31821,37073:32318,37074:33034,37075:36012,37076:36196,37077:36321,37078:36447,37079:30889,37080:20999,37081:25305,37082:25509,37083:25666,37084:25240,37085:35373,37086:31363,37087:31680,37088:35500,37089:38634,37090:32118,37091:33292,37092:34633,37093:20185,37094:20808,37095:21315,37096:21344,37097:23459,37098:23554,37099:23574,37100:24029,37101:25126,37102:25159,37103:25776,37104:26643,37105:26676,37106:27849,37107:27973,37108:27927,37109:26579,37110:28508,37111:29006,37112:29053,37113:26059,37114:31359,37115:31661,37116:32218,37184:32330,37185:32680,37186:33146,37187:33307,37188:33337,37189:34214,37190:35438,37191:36046,37192:36341,37193:36984,37194:36983,37195:37549,37196:37521,37197:38275,37198:39854,37199:21069,37200:21892,37201:28472,37202:28982,37203:20840,37204:31109,37205:32341,37206:33203,37207:31950,37208:22092,37209:22609,37210:23720,37211:25514,37212:26366,37213:26365,37214:26970,37215:29401,37216:30095,37217:30094,37218:30990,37219:31062,37220:31199,37221:31895,37222:32032,37223:32068,37224:34311,37225:35380,37226:38459,37227:36961,37228:40736,37229:20711,37230:21109,37231:21452,37232:21474,37233:20489,37234:21930,37235:22766,37236:22863,37237:29245,37238:23435,37239:23652,37240:21277,37241:24803,37242:24819,37243:25436,37244:25475,37245:25407,37246:25531,37248:25805,37249:26089,37250:26361,37251:24035,37252:27085,37253:27133,37254:28437,37255:29157,37256:20105,37257:30185,37258:30456,37259:31379,37260:31967,37261:32207,37262:32156,37263:32865,37264:33609,37265:33624,37266:33900,37267:33980,37268:34299,37269:35013,37270:36208,37271:36865,37272:36973,37273:37783,37274:38684,37275:39442,37276:20687,37277:22679,37278:24974,37279:33235,37280:34101,37281:36104,37282:36896,37283:20419,37284:20596,37285:21063,37286:21363,37287:24687,37288:25417,37289:26463,37290:28204,37291:36275,37292:36895,37293:20439,37294:23646,37295:36042,37296:26063,37297:32154,37298:21330,37299:34966,37300:20854,37301:25539,37302:23384,37303:23403,37304:23562,37305:25613,37306:26449,37307:36956,37308:20182,37309:22810,37310:22826,37311:27760,37312:35409,37313:21822,37314:22549,37315:22949,37316:24816,37317:25171,37318:26561,37319:33333,37320:26965,37321:38464,37322:39364,37323:39464,37324:20307,37325:22534,37326:23550,37327:32784,37328:23729,37329:24111,37330:24453,37331:24608,37332:24907,37333:25140,37334:26367,37335:27888,37336:28382,37337:32974,37338:33151,37339:33492,37340:34955,37341:36024,37342:36864,37343:36910,37344:38538,37345:40667,37346:39899,37347:20195,37348:21488,37349:22823,37350:31532,37351:37261,37352:38988,37353:40441,37354:28381,37355:28711,37356:21331,37357:21828,37358:23429,37359:25176,37360:25246,37361:25299,37362:27810,37363:28655,37364:29730,37365:35351,37366:37944,37367:28609,37368:35582,37369:33592,37370:20967,37371:34552,37372:21482,37440:21481,37441:20294,37442:36948,37443:36784,37444:22890,37445:33073,37446:24061,37447:31466,37448:36799,37449:26842,37450:35895,37451:29432,37452:40008,37453:27197,37454:35504,37455:20025,37456:21336,37457:22022,37458:22374,37459:25285,37460:25506,37461:26086,37462:27470,37463:28129,37464:28251,37465:28845,37466:30701,37467:31471,37468:31658,37469:32187,37470:32829,37471:32966,37472:34507,37473:35477,37474:37723,37475:22243,37476:22727,37477:24382,37478:26029,37479:26262,37480:27264,37481:27573,37482:30007,37483:35527,37484:20516,37485:30693,37486:22320,37487:24347,37488:24677,37489:26234,37490:27744,37491:30196,37492:31258,37493:32622,37494:33268,37495:34584,37496:36933,37497:39347,37498:31689,37499:30044,37500:31481,37501:31569,37502:33988,37504:36880,37505:31209,37506:31378,37507:33590,37508:23265,37509:30528,37510:20013,37511:20210,37512:23449,37513:24544,37514:25277,37515:26172,37516:26609,37517:27880,37518:34411,37519:34935,37520:35387,37521:37198,37522:37619,37523:39376,37524:27159,37525:28710,37526:29482,37527:33511,37528:33879,37529:36015,37530:19969,37531:20806,37532:20939,37533:21899,37534:23541,37535:24086,37536:24115,37537:24193,37538:24340,37539:24373,37540:24427,37541:24500,37542:25074,37543:25361,37544:26274,37545:26397,37546:28526,37547:29266,37548:30010,37549:30522,37550:32884,37551:33081,37552:33144,37553:34678,37554:35519,37555:35548,37556:36229,37557:36339,37558:37530,37559:38263,37560:38914,37561:40165,37562:21189,37563:25431,37564:30452,37565:26389,37566:27784,37567:29645,37568:36035,37569:37806,37570:38515,37571:27941,37572:22684,37573:26894,37574:27084,37575:36861,37576:37786,37577:30171,37578:36890,37579:22618,37580:26626,37581:25524,37582:27131,37583:20291,37584:28460,37585:26584,37586:36795,37587:34086,37588:32180,37589:37716,37590:26943,37591:28528,37592:22378,37593:22775,37594:23340,37595:32044,37596:29226,37597:21514,37598:37347,37599:40372,37600:20141,37601:20302,37602:20572,37603:20597,37604:21059,37605:35998,37606:21576,37607:22564,37608:23450,37609:24093,37610:24213,37611:24237,37612:24311,37613:24351,37614:24716,37615:25269,37616:25402,37617:25552,37618:26799,37619:27712,37620:30855,37621:31118,37622:31243,37623:32224,37624:33351,37625:35330,37626:35558,37627:36420,37628:36883,37696:37048,37697:37165,37698:37336,37699:40718,37700:27877,37701:25688,37702:25826,37703:25973,37704:28404,37705:30340,37706:31515,37707:36969,37708:37841,37709:28346,37710:21746,37711:24505,37712:25764,37713:36685,37714:36845,37715:37444,37716:20856,37717:22635,37718:22825,37719:23637,37720:24215,37721:28155,37722:32399,37723:29980,37724:36028,37725:36578,37726:39003,37727:28857,37728:20253,37729:27583,37730:28593,37731:3e4,37732:38651,37733:20814,37734:21520,37735:22581,37736:22615,37737:22956,37738:23648,37739:24466,37740:26007,37741:26460,37742:28193,37743:30331,37744:33759,37745:36077,37746:36884,37747:37117,37748:37709,37749:30757,37750:30778,37751:21162,37752:24230,37753:22303,37754:22900,37755:24594,37756:20498,37757:20826,37758:20908,37760:20941,37761:20992,37762:21776,37763:22612,37764:22616,37765:22871,37766:23445,37767:23798,37768:23947,37769:24764,37770:25237,37771:25645,37772:26481,37773:26691,37774:26812,37775:26847,37776:30423,37777:28120,37778:28271,37779:28059,37780:28783,37781:29128,37782:24403,37783:30168,37784:31095,37785:31561,37786:31572,37787:31570,37788:31958,37789:32113,37790:21040,37791:33891,37792:34153,37793:34276,37794:35342,37795:35588,37796:35910,37797:36367,37798:36867,37799:36879,37800:37913,37801:38518,37802:38957,37803:39472,37804:38360,37805:20685,37806:21205,37807:21516,37808:22530,37809:23566,37810:24999,37811:25758,37812:27934,37813:30643,37814:31461,37815:33012,37816:33796,37817:36947,37818:37509,37819:23776,37820:40199,37821:21311,37822:24471,37823:24499,37824:28060,37825:29305,37826:30563,37827:31167,37828:31716,37829:27602,37830:29420,37831:35501,37832:26627,37833:27233,37834:20984,37835:31361,37836:26932,37837:23626,37838:40182,37839:33515,37840:23493,37841:37193,37842:28702,37843:22136,37844:23663,37845:24775,37846:25958,37847:27788,37848:35930,37849:36929,37850:38931,37851:21585,37852:26311,37853:37389,37854:22856,37855:37027,37856:20869,37857:20045,37858:20970,37859:34201,37860:35598,37861:28760,37862:25466,37863:37707,37864:26978,37865:39348,37866:32260,37867:30071,37868:21335,37869:26976,37870:36575,37871:38627,37872:27741,37873:20108,37874:23612,37875:24336,37876:36841,37877:21250,37878:36049,37879:32905,37880:34425,37881:24319,37882:26085,37883:20083,37884:20837,37952:22914,37953:23615,37954:38894,37955:20219,37956:22922,37957:24525,37958:35469,37959:28641,37960:31152,37961:31074,37962:23527,37963:33905,37964:29483,37965:29105,37966:24180,37967:24565,37968:25467,37969:25754,37970:29123,37971:31896,37972:20035,37973:24316,37974:20043,37975:22492,37976:22178,37977:24745,37978:28611,37979:32013,37980:33021,37981:33075,37982:33215,37983:36786,37984:35223,37985:34468,37986:24052,37987:25226,37988:25773,37989:35207,37990:26487,37991:27874,37992:27966,37993:29750,37994:30772,37995:23110,37996:32629,37997:33453,37998:39340,37999:20467,38000:24259,38001:25309,38002:25490,38003:25943,38004:26479,38005:30403,38006:29260,38007:32972,38008:32954,38009:36649,38010:37197,38011:20493,38012:22521,38013:23186,38014:26757,38016:26995,38017:29028,38018:29437,38019:36023,38020:22770,38021:36064,38022:38506,38023:36889,38024:34687,38025:31204,38026:30695,38027:33833,38028:20271,38029:21093,38030:21338,38031:25293,38032:26575,38033:27850,38034:30333,38035:31636,38036:31893,38037:33334,38038:34180,38039:36843,38040:26333,38041:28448,38042:29190,38043:32283,38044:33707,38045:39361,38046:40614,38047:20989,38048:31665,38049:30834,38050:31672,38051:32903,38052:31560,38053:27368,38054:24161,38055:32908,38056:30033,38057:30048,38058:20843,38059:37474,38060:28300,38061:30330,38062:37271,38063:39658,38064:20240,38065:32624,38066:25244,38067:31567,38068:38309,38069:40169,38070:22138,38071:22617,38072:34532,38073:38588,38074:20276,38075:21028,38076:21322,38077:21453,38078:21467,38079:24070,38080:25644,38081:26001,38082:26495,38083:27710,38084:27726,38085:29256,38086:29359,38087:29677,38088:30036,38089:32321,38090:33324,38091:34281,38092:36009,38093:31684,38094:37318,38095:29033,38096:38930,38097:39151,38098:25405,38099:26217,38100:30058,38101:30436,38102:30928,38103:34115,38104:34542,38105:21290,38106:21329,38107:21542,38108:22915,38109:24199,38110:24444,38111:24754,38112:25161,38113:25209,38114:25259,38115:26e3,38116:27604,38117:27852,38118:30130,38119:30382,38120:30865,38121:31192,38122:32203,38123:32631,38124:32933,38125:34987,38126:35513,38127:36027,38128:36991,38129:38750,38130:39131,38131:27147,38132:31800,38133:20633,38134:23614,38135:24494,38136:26503,38137:27608,38138:29749,38139:30473,38140:32654,38208:40763,38209:26570,38210:31255,38211:21305,38212:30091,38213:39661,38214:24422,38215:33181,38216:33777,38217:32920,38218:24380,38219:24517,38220:30050,38221:31558,38222:36924,38223:26727,38224:23019,38225:23195,38226:32016,38227:30334,38228:35628,38229:20469,38230:24426,38231:27161,38232:27703,38233:28418,38234:29922,38235:31080,38236:34920,38237:35413,38238:35961,38239:24287,38240:25551,38241:30149,38242:31186,38243:33495,38244:37672,38245:37618,38246:33948,38247:34541,38248:39981,38249:21697,38250:24428,38251:25996,38252:27996,38253:28693,38254:36007,38255:36051,38256:38971,38257:25935,38258:29942,38259:19981,38260:20184,38261:22496,38262:22827,38263:23142,38264:23500,38265:20904,38266:24067,38267:24220,38268:24598,38269:25206,38270:25975,38272:26023,38273:26222,38274:28014,38275:29238,38276:31526,38277:33104,38278:33178,38279:33433,38280:35676,38281:36e3,38282:36070,38283:36212,38284:38428,38285:38468,38286:20398,38287:25771,38288:27494,38289:33310,38290:33889,38291:34154,38292:37096,38293:23553,38294:26963,38295:39080,38296:33914,38297:34135,38298:20239,38299:21103,38300:24489,38301:24133,38302:26381,38303:31119,38304:33145,38305:35079,38306:35206,38307:28149,38308:24343,38309:25173,38310:27832,38311:20175,38312:29289,38313:39826,38314:20998,38315:21563,38316:22132,38317:22707,38318:24996,38319:25198,38320:28954,38321:22894,38322:31881,38323:31966,38324:32027,38325:38640,38326:25991,38327:32862,38328:19993,38329:20341,38330:20853,38331:22592,38332:24163,38333:24179,38334:24330,38335:26564,38336:20006,38337:34109,38338:38281,38339:38491,38340:31859,38341:38913,38342:20731,38343:22721,38344:30294,38345:30887,38346:21029,38347:30629,38348:34065,38349:31622,38350:20559,38351:22793,38352:29255,38353:31687,38354:32232,38355:36794,38356:36820,38357:36941,38358:20415,38359:21193,38360:23081,38361:24321,38362:38829,38363:20445,38364:33303,38365:37610,38366:22275,38367:25429,38368:27497,38369:29995,38370:35036,38371:36628,38372:31298,38373:21215,38374:22675,38375:24917,38376:25098,38377:26286,38378:27597,38379:31807,38380:33769,38381:20515,38382:20472,38383:21253,38384:21574,38385:22577,38386:22857,38387:23453,38388:23792,38389:23791,38390:23849,38391:24214,38392:25265,38393:25447,38394:25918,38395:26041,38396:26379,38464:27861,38465:27873,38466:28921,38467:30770,38468:32299,38469:32990,38470:33459,38471:33804,38472:34028,38473:34562,38474:35090,38475:35370,38476:35914,38477:37030,38478:37586,38479:39165,38480:40179,38481:40300,38482:20047,38483:20129,38484:20621,38485:21078,38486:22346,38487:22952,38488:24125,38489:24536,38490:24537,38491:25151,38492:26292,38493:26395,38494:26576,38495:26834,38496:20882,38497:32033,38498:32938,38499:33192,38500:35584,38501:35980,38502:36031,38503:37502,38504:38450,38505:21536,38506:38956,38507:21271,38508:20693,38509:21340,38510:22696,38511:25778,38512:26420,38513:29287,38514:30566,38515:31302,38516:37350,38517:21187,38518:27809,38519:27526,38520:22528,38521:24140,38522:22868,38523:26412,38524:32763,38525:20961,38526:30406,38528:25705,38529:30952,38530:39764,38531:40635,38532:22475,38533:22969,38534:26151,38535:26522,38536:27598,38537:21737,38538:27097,38539:24149,38540:33180,38541:26517,38542:39850,38543:26622,38544:40018,38545:26717,38546:20134,38547:20451,38548:21448,38549:25273,38550:26411,38551:27819,38552:36804,38553:20397,38554:32365,38555:40639,38556:19975,38557:24930,38558:28288,38559:28459,38560:34067,38561:21619,38562:26410,38563:39749,38564:24051,38565:31637,38566:23724,38567:23494,38568:34588,38569:28234,38570:34001,38571:31252,38572:33032,38573:22937,38574:31885,38575:27665,38576:30496,38577:21209,38578:22818,38579:28961,38580:29279,38581:30683,38582:38695,38583:40289,38584:26891,38585:23167,38586:23064,38587:20901,38588:21517,38589:21629,38590:26126,38591:30431,38592:36855,38593:37528,38594:40180,38595:23018,38596:29277,38597:28357,38598:20813,38599:26825,38600:32191,38601:32236,38602:38754,38603:40634,38604:25720,38605:27169,38606:33538,38607:22916,38608:23391,38609:27611,38610:29467,38611:30450,38612:32178,38613:32791,38614:33945,38615:20786,38616:26408,38617:40665,38618:30446,38619:26466,38620:21247,38621:39173,38622:23588,38623:25147,38624:31870,38625:36016,38626:21839,38627:24758,38628:32011,38629:38272,38630:21249,38631:20063,38632:20918,38633:22812,38634:29242,38635:32822,38636:37326,38637:24357,38638:30690,38639:21380,38640:24441,38641:32004,38642:34220,38643:35379,38644:36493,38645:38742,38646:26611,38647:34222,38648:37971,38649:24841,38650:24840,38651:27833,38652:30290,38720:35565,38721:36664,38722:21807,38723:20305,38724:20778,38725:21191,38726:21451,38727:23461,38728:24189,38729:24736,38730:24962,38731:25558,38732:26377,38733:26586,38734:28263,38735:28044,38736:29494,38737:29495,38738:30001,38739:31056,38740:35029,38741:35480,38742:36938,38743:37009,38744:37109,38745:38596,38746:34701,38747:22805,38748:20104,38749:20313,38750:19982,38751:35465,38752:36671,38753:38928,38754:20653,38755:24188,38756:22934,38757:23481,38758:24248,38759:25562,38760:25594,38761:25793,38762:26332,38763:26954,38764:27096,38765:27915,38766:28342,38767:29076,38768:29992,38769:31407,38770:32650,38771:32768,38772:33865,38773:33993,38774:35201,38775:35617,38776:36362,38777:36965,38778:38525,38779:39178,38780:24958,38781:25233,38782:27442,38784:27779,38785:28020,38786:32716,38787:32764,38788:28096,38789:32645,38790:34746,38791:35064,38792:26469,38793:33713,38794:38972,38795:38647,38796:27931,38797:32097,38798:33853,38799:37226,38800:20081,38801:21365,38802:23888,38803:27396,38804:28651,38805:34253,38806:34349,38807:35239,38808:21033,38809:21519,38810:23653,38811:26446,38812:26792,38813:29702,38814:29827,38815:30178,38816:35023,38817:35041,38818:37324,38819:38626,38820:38520,38821:24459,38822:29575,38823:31435,38824:33870,38825:25504,38826:30053,38827:21129,38828:27969,38829:28316,38830:29705,38831:30041,38832:30827,38833:31890,38834:38534,38835:31452,38836:40845,38837:20406,38838:24942,38839:26053,38840:34396,38841:20102,38842:20142,38843:20698,38844:20001,38845:20940,38846:23534,38847:26009,38848:26753,38849:28092,38850:29471,38851:30274,38852:30637,38853:31260,38854:31975,38855:33391,38856:35538,38857:36988,38858:37327,38859:38517,38860:38936,38861:21147,38862:32209,38863:20523,38864:21400,38865:26519,38866:28107,38867:29136,38868:29747,38869:33256,38870:36650,38871:38563,38872:40023,38873:40607,38874:29792,38875:22593,38876:28057,38877:32047,38878:39006,38879:20196,38880:20278,38881:20363,38882:20919,38883:21169,38884:23994,38885:24604,38886:29618,38887:31036,38888:33491,38889:37428,38890:38583,38891:38646,38892:38666,38893:40599,38894:40802,38895:26278,38896:27508,38897:21015,38898:21155,38899:28872,38900:35010,38901:24265,38902:24651,38903:24976,38904:28451,38905:29001,38906:31806,38907:32244,38908:32879,38976:34030,38977:36899,38978:37676,38979:21570,38980:39791,38981:27347,38982:28809,38983:36034,38984:36335,38985:38706,38986:21172,38987:23105,38988:24266,38989:24324,38990:26391,38991:27004,38992:27028,38993:28010,38994:28431,38995:29282,38996:29436,38997:31725,38998:32769,38999:32894,39000:34635,39001:37070,39002:20845,39003:40595,39004:31108,39005:32907,39006:37682,39007:35542,39008:20525,39009:21644,39010:35441,39011:27498,39012:36036,39013:33031,39014:24785,39015:26528,39016:40434,39017:20121,39018:20120,39019:39952,39020:35435,39021:34241,39022:34152,39023:26880,39024:28286,39025:30871,39026:33109,39071:24332,39072:19984,39073:19989,39074:20010,39075:20017,39076:20022,39077:20028,39078:20031,39079:20034,39080:20054,39081:20056,39082:20098,39083:20101,39084:35947,39085:20106,39086:33298,39087:24333,39088:20110,39089:20126,39090:20127,39091:20128,39092:20130,39093:20144,39094:20147,39095:20150,39096:20174,39097:20173,39098:20164,39099:20166,39100:20162,39101:20183,39102:20190,39103:20205,39104:20191,39105:20215,39106:20233,39107:20314,39108:20272,39109:20315,39110:20317,39111:20311,39112:20295,39113:20342,39114:20360,39115:20367,39116:20376,39117:20347,39118:20329,39119:20336,39120:20369,39121:20335,39122:20358,39123:20374,39124:20760,39125:20436,39126:20447,39127:20430,39128:20440,39129:20443,39130:20433,39131:20442,39132:20432,39133:20452,39134:20453,39135:20506,39136:20520,39137:20500,39138:20522,39139:20517,39140:20485,39141:20252,39142:20470,39143:20513,39144:20521,39145:20524,39146:20478,39147:20463,39148:20497,39149:20486,39150:20547,39151:20551,39152:26371,39153:20565,39154:20560,39155:20552,39156:20570,39157:20566,39158:20588,39159:20600,39160:20608,39161:20634,39162:20613,39163:20660,39164:20658,39232:20681,39233:20682,39234:20659,39235:20674,39236:20694,39237:20702,39238:20709,39239:20717,39240:20707,39241:20718,39242:20729,39243:20725,39244:20745,39245:20737,39246:20738,39247:20758,39248:20757,39249:20756,39250:20762,39251:20769,39252:20794,39253:20791,39254:20796,39255:20795,39256:20799,39257:20800,39258:20818,39259:20812,39260:20820,39261:20834,39262:31480,39263:20841,39264:20842,39265:20846,39266:20864,39267:20866,39268:22232,39269:20876,39270:20873,39271:20879,39272:20881,39273:20883,39274:20885,39275:20886,39276:20900,39277:20902,39278:20898,39279:20905,39280:20906,39281:20907,39282:20915,39283:20913,39284:20914,39285:20912,39286:20917,39287:20925,39288:20933,39289:20937,39290:20955,39291:20960,39292:34389,39293:20969,39294:20973,39296:20976,39297:20981,39298:20990,39299:20996,39300:21003,39301:21012,39302:21006,39303:21031,39304:21034,39305:21038,39306:21043,39307:21049,39308:21071,39309:21060,39310:21067,39311:21068,39312:21086,39313:21076,39314:21098,39315:21108,39316:21097,39317:21107,39318:21119,39319:21117,39320:21133,39321:21140,39322:21138,39323:21105,39324:21128,39325:21137,39326:36776,39327:36775,39328:21164,39329:21165,39330:21180,39331:21173,39332:21185,39333:21197,39334:21207,39335:21214,39336:21219,39337:21222,39338:39149,39339:21216,39340:21235,39341:21237,39342:21240,39343:21241,39344:21254,39345:21256,39346:30008,39347:21261,39348:21264,39349:21263,39350:21269,39351:21274,39352:21283,39353:21295,39354:21297,39355:21299,39356:21304,39357:21312,39358:21318,39359:21317,39360:19991,39361:21321,39362:21325,39363:20950,39364:21342,39365:21353,39366:21358,39367:22808,39368:21371,39369:21367,39370:21378,39371:21398,39372:21408,39373:21414,39374:21413,39375:21422,39376:21424,39377:21430,39378:21443,39379:31762,39380:38617,39381:21471,39382:26364,39383:29166,39384:21486,39385:21480,39386:21485,39387:21498,39388:21505,39389:21565,39390:21568,39391:21548,39392:21549,39393:21564,39394:21550,39395:21558,39396:21545,39397:21533,39398:21582,39399:21647,39400:21621,39401:21646,39402:21599,39403:21617,39404:21623,39405:21616,39406:21650,39407:21627,39408:21632,39409:21622,39410:21636,39411:21648,39412:21638,39413:21703,39414:21666,39415:21688,39416:21669,39417:21676,39418:21700,39419:21704,39420:21672,39488:21675,39489:21698,39490:21668,39491:21694,39492:21692,39493:21720,39494:21733,39495:21734,39496:21775,39497:21780,39498:21757,39499:21742,39500:21741,39501:21754,39502:21730,39503:21817,39504:21824,39505:21859,39506:21836,39507:21806,39508:21852,39509:21829,39510:21846,39511:21847,39512:21816,39513:21811,39514:21853,39515:21913,39516:21888,39517:21679,39518:21898,39519:21919,39520:21883,39521:21886,39522:21912,39523:21918,39524:21934,39525:21884,39526:21891,39527:21929,39528:21895,39529:21928,39530:21978,39531:21957,39532:21983,39533:21956,39534:21980,39535:21988,39536:21972,39537:22036,39538:22007,39539:22038,39540:22014,39541:22013,39542:22043,39543:22009,39544:22094,39545:22096,39546:29151,39547:22068,39548:22070,39549:22066,39550:22072,39552:22123,39553:22116,39554:22063,39555:22124,39556:22122,39557:22150,39558:22144,39559:22154,39560:22176,39561:22164,39562:22159,39563:22181,39564:22190,39565:22198,39566:22196,39567:22210,39568:22204,39569:22209,39570:22211,39571:22208,39572:22216,39573:22222,39574:22225,39575:22227,39576:22231,39577:22254,39578:22265,39579:22272,39580:22271,39581:22276,39582:22281,39583:22280,39584:22283,39585:22285,39586:22291,39587:22296,39588:22294,39589:21959,39590:22300,39591:22310,39592:22327,39593:22328,39594:22350,39595:22331,39596:22336,39597:22351,39598:22377,39599:22464,39600:22408,39601:22369,39602:22399,39603:22409,39604:22419,39605:22432,39606:22451,39607:22436,39608:22442,39609:22448,39610:22467,39611:22470,39612:22484,39613:22482,39614:22483,39615:22538,39616:22486,39617:22499,39618:22539,39619:22553,39620:22557,39621:22642,39622:22561,39623:22626,39624:22603,39625:22640,39626:27584,39627:22610,39628:22589,39629:22649,39630:22661,39631:22713,39632:22687,39633:22699,39634:22714,39635:22750,39636:22715,39637:22712,39638:22702,39639:22725,39640:22739,39641:22737,39642:22743,39643:22745,39644:22744,39645:22757,39646:22748,39647:22756,39648:22751,39649:22767,39650:22778,39651:22777,39652:22779,39653:22780,39654:22781,39655:22786,39656:22794,39657:22800,39658:22811,39659:26790,39660:22821,39661:22828,39662:22829,39663:22834,39664:22840,39665:22846,39666:31442,39667:22869,39668:22864,39669:22862,39670:22874,39671:22872,39672:22882,39673:22880,39674:22887,39675:22892,39676:22889,39744:22904,39745:22913,39746:22941,39747:20318,39748:20395,39749:22947,39750:22962,39751:22982,39752:23016,39753:23004,39754:22925,39755:23001,39756:23002,39757:23077,39758:23071,39759:23057,39760:23068,39761:23049,39762:23066,39763:23104,39764:23148,39765:23113,39766:23093,39767:23094,39768:23138,39769:23146,39770:23194,39771:23228,39772:23230,39773:23243,39774:23234,39775:23229,39776:23267,39777:23255,39778:23270,39779:23273,39780:23254,39781:23290,39782:23291,39783:23308,39784:23307,39785:23318,39786:23346,39787:23248,39788:23338,39789:23350,39790:23358,39791:23363,39792:23365,39793:23360,39794:23377,39795:23381,39796:23386,39797:23387,39798:23397,39799:23401,39800:23408,39801:23411,39802:23413,39803:23416,39804:25992,39805:23418,39806:23424,39808:23427,39809:23462,39810:23480,39811:23491,39812:23495,39813:23497,39814:23508,39815:23504,39816:23524,39817:23526,39818:23522,39819:23518,39820:23525,39821:23531,39822:23536,39823:23542,39824:23539,39825:23557,39826:23559,39827:23560,39828:23565,39829:23571,39830:23584,39831:23586,39832:23592,39833:23608,39834:23609,39835:23617,39836:23622,39837:23630,39838:23635,39839:23632,39840:23631,39841:23409,39842:23660,39843:23662,39844:20066,39845:23670,39846:23673,39847:23692,39848:23697,39849:23700,39850:22939,39851:23723,39852:23739,39853:23734,39854:23740,39855:23735,39856:23749,39857:23742,39858:23751,39859:23769,39860:23785,39861:23805,39862:23802,39863:23789,39864:23948,39865:23786,39866:23819,39867:23829,39868:23831,39869:23900,39870:23839,39871:23835,39872:23825,39873:23828,39874:23842,39875:23834,39876:23833,39877:23832,39878:23884,39879:23890,39880:23886,39881:23883,39882:23916,39883:23923,39884:23926,39885:23943,39886:23940,39887:23938,39888:23970,39889:23965,39890:23980,39891:23982,39892:23997,39893:23952,39894:23991,39895:23996,39896:24009,39897:24013,39898:24019,39899:24018,39900:24022,39901:24027,39902:24043,39903:24050,39904:24053,39905:24075,39906:24090,39907:24089,39908:24081,39909:24091,39910:24118,39911:24119,39912:24132,39913:24131,39914:24128,39915:24142,39916:24151,39917:24148,39918:24159,39919:24162,39920:24164,39921:24135,39922:24181,39923:24182,39924:24186,39925:40636,39926:24191,39927:24224,39928:24257,39929:24258,39930:24264,39931:24272,39932:24271,40000:24278,40001:24291,40002:24285,40003:24282,40004:24283,40005:24290,40006:24289,40007:24296,40008:24297,40009:24300,40010:24305,40011:24307,40012:24304,40013:24308,40014:24312,40015:24318,40016:24323,40017:24329,40018:24413,40019:24412,40020:24331,40021:24337,40022:24342,40023:24361,40024:24365,40025:24376,40026:24385,40027:24392,40028:24396,40029:24398,40030:24367,40031:24401,40032:24406,40033:24407,40034:24409,40035:24417,40036:24429,40037:24435,40038:24439,40039:24451,40040:24450,40041:24447,40042:24458,40043:24456,40044:24465,40045:24455,40046:24478,40047:24473,40048:24472,40049:24480,40050:24488,40051:24493,40052:24508,40053:24534,40054:24571,40055:24548,40056:24568,40057:24561,40058:24541,40059:24755,40060:24575,40061:24609,40062:24672,40064:24601,40065:24592,40066:24617,40067:24590,40068:24625,40069:24603,40070:24597,40071:24619,40072:24614,40073:24591,40074:24634,40075:24666,40076:24641,40077:24682,40078:24695,40079:24671,40080:24650,40081:24646,40082:24653,40083:24675,40084:24643,40085:24676,40086:24642,40087:24684,40088:24683,40089:24665,40090:24705,40091:24717,40092:24807,40093:24707,40094:24730,40095:24708,40096:24731,40097:24726,40098:24727,40099:24722,40100:24743,40101:24715,40102:24801,40103:24760,40104:24800,40105:24787,40106:24756,40107:24560,40108:24765,40109:24774,40110:24757,40111:24792,40112:24909,40113:24853,40114:24838,40115:24822,40116:24823,40117:24832,40118:24820,40119:24826,40120:24835,40121:24865,40122:24827,40123:24817,40124:24845,40125:24846,40126:24903,40127:24894,40128:24872,40129:24871,40130:24906,40131:24895,40132:24892,40133:24876,40134:24884,40135:24893,40136:24898,40137:24900,40138:24947,40139:24951,40140:24920,40141:24921,40142:24922,40143:24939,40144:24948,40145:24943,40146:24933,40147:24945,40148:24927,40149:24925,40150:24915,40151:24949,40152:24985,40153:24982,40154:24967,40155:25004,40156:24980,40157:24986,40158:24970,40159:24977,40160:25003,40161:25006,40162:25036,40163:25034,40164:25033,40165:25079,40166:25032,40167:25027,40168:25030,40169:25018,40170:25035,40171:32633,40172:25037,40173:25062,40174:25059,40175:25078,40176:25082,40177:25076,40178:25087,40179:25085,40180:25084,40181:25086,40182:25088,40183:25096,40184:25097,40185:25101,40186:25100,40187:25108,40188:25115,40256:25118,40257:25121,40258:25130,40259:25134,40260:25136,40261:25138,40262:25139,40263:25153,40264:25166,40265:25182,40266:25187,40267:25179,40268:25184,40269:25192,40270:25212,40271:25218,40272:25225,40273:25214,40274:25234,40275:25235,40276:25238,40277:25300,40278:25219,40279:25236,40280:25303,40281:25297,40282:25275,40283:25295,40284:25343,40285:25286,40286:25812,40287:25288,40288:25308,40289:25292,40290:25290,40291:25282,40292:25287,40293:25243,40294:25289,40295:25356,40296:25326,40297:25329,40298:25383,40299:25346,40300:25352,40301:25327,40302:25333,40303:25424,40304:25406,40305:25421,40306:25628,40307:25423,40308:25494,40309:25486,40310:25472,40311:25515,40312:25462,40313:25507,40314:25487,40315:25481,40316:25503,40317:25525,40318:25451,40320:25449,40321:25534,40322:25577,40323:25536,40324:25542,40325:25571,40326:25545,40327:25554,40328:25590,40329:25540,40330:25622,40331:25652,40332:25606,40333:25619,40334:25638,40335:25654,40336:25885,40337:25623,40338:25640,40339:25615,40340:25703,40341:25711,40342:25718,40343:25678,40344:25898,40345:25749,40346:25747,40347:25765,40348:25769,40349:25736,40350:25788,40351:25818,40352:25810,40353:25797,40354:25799,40355:25787,40356:25816,40357:25794,40358:25841,40359:25831,40360:33289,40361:25824,40362:25825,40363:25260,40364:25827,40365:25839,40366:25900,40367:25846,40368:25844,40369:25842,40370:25850,40371:25856,40372:25853,40373:25880,40374:25884,40375:25861,40376:25892,40377:25891,40378:25899,40379:25908,40380:25909,40381:25911,40382:25910,40383:25912,40384:30027,40385:25928,40386:25942,40387:25941,40388:25933,40389:25944,40390:25950,40391:25949,40392:25970,40393:25976,40394:25986,40395:25987,40396:35722,40397:26011,40398:26015,40399:26027,40400:26039,40401:26051,40402:26054,40403:26049,40404:26052,40405:26060,40406:26066,40407:26075,40408:26073,40409:26080,40410:26081,40411:26097,40412:26482,40413:26122,40414:26115,40415:26107,40416:26483,40417:26165,40418:26166,40419:26164,40420:26140,40421:26191,40422:26180,40423:26185,40424:26177,40425:26206,40426:26205,40427:26212,40428:26215,40429:26216,40430:26207,40431:26210,40432:26224,40433:26243,40434:26248,40435:26254,40436:26249,40437:26244,40438:26264,40439:26269,40440:26305,40441:26297,40442:26313,40443:26302,40444:26300,40512:26308,40513:26296,40514:26326,40515:26330,40516:26336,40517:26175,40518:26342,40519:26345,40520:26352,40521:26357,40522:26359,40523:26383,40524:26390,40525:26398,40526:26406,40527:26407,40528:38712,40529:26414,40530:26431,40531:26422,40532:26433,40533:26424,40534:26423,40535:26438,40536:26462,40537:26464,40538:26457,40539:26467,40540:26468,40541:26505,40542:26480,40543:26537,40544:26492,40545:26474,40546:26508,40547:26507,40548:26534,40549:26529,40550:26501,40551:26551,40552:26607,40553:26548,40554:26604,40555:26547,40556:26601,40557:26552,40558:26596,40559:26590,40560:26589,40561:26594,40562:26606,40563:26553,40564:26574,40565:26566,40566:26599,40567:27292,40568:26654,40569:26694,40570:26665,40571:26688,40572:26701,40573:26674,40574:26702,40576:26803,40577:26667,40578:26713,40579:26723,40580:26743,40581:26751,40582:26783,40583:26767,40584:26797,40585:26772,40586:26781,40587:26779,40588:26755,40589:27310,40590:26809,40591:26740,40592:26805,40593:26784,40594:26810,40595:26895,40596:26765,40597:26750,40598:26881,40599:26826,40600:26888,40601:26840,40602:26914,40603:26918,40604:26849,40605:26892,40606:26829,40607:26836,40608:26855,40609:26837,40610:26934,40611:26898,40612:26884,40613:26839,40614:26851,40615:26917,40616:26873,40617:26848,40618:26863,40619:26920,40620:26922,40621:26906,40622:26915,40623:26913,40624:26822,40625:27001,40626:26999,40627:26972,40628:27e3,40629:26987,40630:26964,40631:27006,40632:26990,40633:26937,40634:26996,40635:26941,40636:26969,40637:26928,40638:26977,40639:26974,40640:26973,40641:27009,40642:26986,40643:27058,40644:27054,40645:27088,40646:27071,40647:27073,40648:27091,40649:27070,40650:27086,40651:23528,40652:27082,40653:27101,40654:27067,40655:27075,40656:27047,40657:27182,40658:27025,40659:27040,40660:27036,40661:27029,40662:27060,40663:27102,40664:27112,40665:27138,40666:27163,40667:27135,40668:27402,40669:27129,40670:27122,40671:27111,40672:27141,40673:27057,40674:27166,40675:27117,40676:27156,40677:27115,40678:27146,40679:27154,40680:27329,40681:27171,40682:27155,40683:27204,40684:27148,40685:27250,40686:27190,40687:27256,40688:27207,40689:27234,40690:27225,40691:27238,40692:27208,40693:27192,40694:27170,40695:27280,40696:27277,40697:27296,40698:27268,40699:27298,40700:27299,40768:27287,40769:34327,40770:27323,40771:27331,40772:27330,40773:27320,40774:27315,40775:27308,40776:27358,40777:27345,40778:27359,40779:27306,40780:27354,40781:27370,40782:27387,40783:27397,40784:34326,40785:27386,40786:27410,40787:27414,40788:39729,40789:27423,40790:27448,40791:27447,40792:30428,40793:27449,40794:39150,40795:27463,40796:27459,40797:27465,40798:27472,40799:27481,40800:27476,40801:27483,40802:27487,40803:27489,40804:27512,40805:27513,40806:27519,40807:27520,40808:27524,40809:27523,40810:27533,40811:27544,40812:27541,40813:27550,40814:27556,40815:27562,40816:27563,40817:27567,40818:27570,40819:27569,40820:27571,40821:27575,40822:27580,40823:27590,40824:27595,40825:27603,40826:27615,40827:27628,40828:27627,40829:27635,40830:27631,40832:40638,40833:27656,40834:27667,40835:27668,40836:27675,40837:27684,40838:27683,40839:27742,40840:27733,40841:27746,40842:27754,40843:27778,40844:27789,40845:27802,40846:27777,40847:27803,40848:27774,40849:27752,40850:27763,40851:27794,40852:27792,40853:27844,40854:27889,40855:27859,40856:27837,40857:27863,40858:27845,40859:27869,40860:27822,40861:27825,40862:27838,40863:27834,40864:27867,40865:27887,40866:27865,40867:27882,40868:27935,40869:34893,40870:27958,40871:27947,40872:27965,40873:27960,40874:27929,40875:27957,40876:27955,40877:27922,40878:27916,40879:28003,40880:28051,40881:28004,40882:27994,40883:28025,40884:27993,40885:28046,40886:28053,40887:28644,40888:28037,40889:28153,40890:28181,40891:28170,40892:28085,40893:28103,40894:28134,40895:28088,40896:28102,40897:28140,40898:28126,40899:28108,40900:28136,40901:28114,40902:28101,40903:28154,40904:28121,40905:28132,40906:28117,40907:28138,40908:28142,40909:28205,40910:28270,40911:28206,40912:28185,40913:28274,40914:28255,40915:28222,40916:28195,40917:28267,40918:28203,40919:28278,40920:28237,40921:28191,40922:28227,40923:28218,40924:28238,40925:28196,40926:28415,40927:28189,40928:28216,40929:28290,40930:28330,40931:28312,40932:28361,40933:28343,40934:28371,40935:28349,40936:28335,40937:28356,40938:28338,40939:28372,40940:28373,40941:28303,40942:28325,40943:28354,40944:28319,40945:28481,40946:28433,40947:28748,40948:28396,40949:28408,40950:28414,40951:28479,40952:28402,40953:28465,40954:28399,40955:28466,40956:28364,161:65377,162:65378,163:65379,164:65380,165:65381,166:65382,167:65383,168:65384,169:65385,170:65386,171:65387,172:65388,173:65389,174:65390,175:65391,176:65392,177:65393,178:65394,179:65395,180:65396,181:65397,182:65398,183:65399,184:65400,185:65401,186:65402,187:65403,188:65404,189:65405,190:65406,191:65407,192:65408,193:65409,194:65410,195:65411,196:65412,197:65413,198:65414,199:65415,200:65416,201:65417,202:65418,203:65419,204:65420,205:65421,206:65422,207:65423,208:65424,209:65425,210:65426,211:65427,212:65428,213:65429,214:65430,215:65431,216:65432,217:65433,218:65434,219:65435,220:65436,221:65437,222:65438,223:65439,57408:28478,57409:28435,57410:28407,57411:28550,57412:28538,57413:28536,57414:28545,57415:28544,57416:28527,57417:28507,57418:28659,57419:28525,57420:28546,57421:28540,57422:28504,57423:28558,57424:28561,57425:28610,57426:28518,57427:28595,57428:28579,57429:28577,57430:28580,57431:28601,57432:28614,57433:28586,57434:28639,57435:28629,57436:28652,57437:28628,57438:28632,57439:28657,57440:28654,57441:28635,57442:28681,57443:28683,57444:28666,57445:28689,57446:28673,57447:28687,57448:28670,57449:28699,57450:28698,57451:28532,57452:28701,57453:28696,57454:28703,57455:28720,57456:28734,57457:28722,57458:28753,57459:28771,57460:28825,57461:28818,57462:28847,57463:28913,57464:28844,57465:28856,57466:28851,57467:28846,57468:28895,57469:28875,57470:28893,57472:28889,57473:28937,57474:28925,57475:28956,57476:28953,57477:29029,57478:29013,57479:29064,57480:29030,57481:29026,57482:29004,57483:29014,57484:29036,57485:29071,57486:29179,57487:29060,57488:29077,57489:29096,57490:29100,57491:29143,57492:29113,57493:29118,57494:29138,57495:29129,57496:29140,57497:29134,57498:29152,57499:29164,57500:29159,57501:29173,57502:29180,57503:29177,57504:29183,57505:29197,57506:29200,57507:29211,57508:29224,57509:29229,57510:29228,57511:29232,57512:29234,57513:29243,57514:29244,57515:29247,57516:29248,57517:29254,57518:29259,57519:29272,57520:29300,57521:29310,57522:29314,57523:29313,57524:29319,57525:29330,57526:29334,57527:29346,57528:29351,57529:29369,57530:29362,57531:29379,57532:29382,57533:29380,57534:29390,57535:29394,57536:29410,57537:29408,57538:29409,57539:29433,57540:29431,57541:20495,57542:29463,57543:29450,57544:29468,57545:29462,57546:29469,57547:29492,57548:29487,57549:29481,57550:29477,57551:29502,57552:29518,57553:29519,57554:40664,57555:29527,57556:29546,57557:29544,57558:29552,57559:29560,57560:29557,57561:29563,57562:29562,57563:29640,57564:29619,57565:29646,57566:29627,57567:29632,57568:29669,57569:29678,57570:29662,57571:29858,57572:29701,57573:29807,57574:29733,57575:29688,57576:29746,57577:29754,57578:29781,57579:29759,57580:29791,57581:29785,57582:29761,57583:29788,57584:29801,57585:29808,57586:29795,57587:29802,57588:29814,57589:29822,57590:29835,57591:29854,57592:29863,57593:29898,57594:29903,57595:29908,57596:29681,57664:29920,57665:29923,57666:29927,57667:29929,57668:29934,57669:29938,57670:29936,57671:29937,57672:29944,57673:29943,57674:29956,57675:29955,57676:29957,57677:29964,57678:29966,57679:29965,57680:29973,57681:29971,57682:29982,57683:29990,57684:29996,57685:30012,57686:30020,57687:30029,57688:30026,57689:30025,57690:30043,57691:30022,57692:30042,57693:30057,57694:30052,57695:30055,57696:30059,57697:30061,57698:30072,57699:30070,57700:30086,57701:30087,57702:30068,57703:30090,57704:30089,57705:30082,57706:30100,57707:30106,57708:30109,57709:30117,57710:30115,57711:30146,57712:30131,57713:30147,57714:30133,57715:30141,57716:30136,57717:30140,57718:30129,57719:30157,57720:30154,57721:30162,57722:30169,57723:30179,57724:30174,57725:30206,57726:30207,57728:30204,57729:30209,57730:30192,57731:30202,57732:30194,57733:30195,57734:30219,57735:30221,57736:30217,57737:30239,57738:30247,57739:30240,57740:30241,57741:30242,57742:30244,57743:30260,57744:30256,57745:30267,57746:30279,57747:30280,57748:30278,57749:30300,57750:30296,57751:30305,57752:30306,57753:30312,57754:30313,57755:30314,57756:30311,57757:30316,57758:30320,57759:30322,57760:30326,57761:30328,57762:30332,57763:30336,57764:30339,57765:30344,57766:30347,57767:30350,57768:30358,57769:30355,57770:30361,57771:30362,57772:30384,57773:30388,57774:30392,57775:30393,57776:30394,57777:30402,57778:30413,57779:30422,57780:30418,57781:30430,57782:30433,57783:30437,57784:30439,57785:30442,57786:34351,57787:30459,57788:30472,57789:30471,57790:30468,57791:30505,57792:30500,57793:30494,57794:30501,57795:30502,57796:30491,57797:30519,57798:30520,57799:30535,57800:30554,57801:30568,57802:30571,57803:30555,57804:30565,57805:30591,57806:30590,57807:30585,57808:30606,57809:30603,57810:30609,57811:30624,57812:30622,57813:30640,57814:30646,57815:30649,57816:30655,57817:30652,57818:30653,57819:30651,57820:30663,57821:30669,57822:30679,57823:30682,57824:30684,57825:30691,57826:30702,57827:30716,57828:30732,57829:30738,57830:31014,57831:30752,57832:31018,57833:30789,57834:30862,57835:30836,57836:30854,57837:30844,57838:30874,57839:30860,57840:30883,57841:30901,57842:30890,57843:30895,57844:30929,57845:30918,57846:30923,57847:30932,57848:30910,57849:30908,57850:30917,57851:30922,57852:30956,57920:30951,57921:30938,57922:30973,57923:30964,57924:30983,57925:30994,57926:30993,57927:31001,57928:31020,57929:31019,57930:31040,57931:31072,57932:31063,57933:31071,57934:31066,57935:31061,57936:31059,57937:31098,57938:31103,57939:31114,57940:31133,57941:31143,57942:40779,57943:31146,57944:31150,57945:31155,57946:31161,57947:31162,57948:31177,57949:31189,57950:31207,57951:31212,57952:31201,57953:31203,57954:31240,57955:31245,57956:31256,57957:31257,57958:31264,57959:31263,57960:31104,57961:31281,57962:31291,57963:31294,57964:31287,57965:31299,57966:31319,57967:31305,57968:31329,57969:31330,57970:31337,57971:40861,57972:31344,57973:31353,57974:31357,57975:31368,57976:31383,57977:31381,57978:31384,57979:31382,57980:31401,57981:31432,57982:31408,57984:31414,57985:31429,57986:31428,57987:31423,57988:36995,57989:31431,57990:31434,57991:31437,57992:31439,57993:31445,57994:31443,57995:31449,57996:31450,57997:31453,57998:31457,57999:31458,58000:31462,58001:31469,58002:31472,58003:31490,58004:31503,58005:31498,58006:31494,58007:31539,58008:31512,58009:31513,58010:31518,58011:31541,58012:31528,58013:31542,58014:31568,58015:31610,58016:31492,58017:31565,58018:31499,58019:31564,58020:31557,58021:31605,58022:31589,58023:31604,58024:31591,58025:31600,58026:31601,58027:31596,58028:31598,58029:31645,58030:31640,58031:31647,58032:31629,58033:31644,58034:31642,58035:31627,58036:31634,58037:31631,58038:31581,58039:31641,58040:31691,58041:31681,58042:31692,58043:31695,58044:31668,58045:31686,58046:31709,58047:31721,58048:31761,58049:31764,58050:31718,58051:31717,58052:31840,58053:31744,58054:31751,58055:31763,58056:31731,58057:31735,58058:31767,58059:31757,58060:31734,58061:31779,58062:31783,58063:31786,58064:31775,58065:31799,58066:31787,58067:31805,58068:31820,58069:31811,58070:31828,58071:31823,58072:31808,58073:31824,58074:31832,58075:31839,58076:31844,58077:31830,58078:31845,58079:31852,58080:31861,58081:31875,58082:31888,58083:31908,58084:31917,58085:31906,58086:31915,58087:31905,58088:31912,58089:31923,58090:31922,58091:31921,58092:31918,58093:31929,58094:31933,58095:31936,58096:31941,58097:31938,58098:31960,58099:31954,58100:31964,58101:31970,58102:39739,58103:31983,58104:31986,58105:31988,58106:31990,58107:31994,58108:32006,58176:32002,58177:32028,58178:32021,58179:32010,58180:32069,58181:32075,58182:32046,58183:32050,58184:32063,58185:32053,58186:32070,58187:32115,58188:32086,58189:32078,58190:32114,58191:32104,58192:32110,58193:32079,58194:32099,58195:32147,58196:32137,58197:32091,58198:32143,58199:32125,58200:32155,58201:32186,58202:32174,58203:32163,58204:32181,58205:32199,58206:32189,58207:32171,58208:32317,58209:32162,58210:32175,58211:32220,58212:32184,58213:32159,58214:32176,58215:32216,58216:32221,58217:32228,58218:32222,58219:32251,58220:32242,58221:32225,58222:32261,58223:32266,58224:32291,58225:32289,58226:32274,58227:32305,58228:32287,58229:32265,58230:32267,58231:32290,58232:32326,58233:32358,58234:32315,58235:32309,58236:32313,58237:32323,58238:32311,58240:32306,58241:32314,58242:32359,58243:32349,58244:32342,58245:32350,58246:32345,58247:32346,58248:32377,58249:32362,58250:32361,58251:32380,58252:32379,58253:32387,58254:32213,58255:32381,58256:36782,58257:32383,58258:32392,58259:32393,58260:32396,58261:32402,58262:32400,58263:32403,58264:32404,58265:32406,58266:32398,58267:32411,58268:32412,58269:32568,58270:32570,58271:32581,58272:32588,58273:32589,58274:32590,58275:32592,58276:32593,58277:32597,58278:32596,58279:32600,58280:32607,58281:32608,58282:32616,58283:32617,58284:32615,58285:32632,58286:32642,58287:32646,58288:32643,58289:32648,58290:32647,58291:32652,58292:32660,58293:32670,58294:32669,58295:32666,58296:32675,58297:32687,58298:32690,58299:32697,58300:32686,58301:32694,58302:32696,58303:35697,58304:32709,58305:32710,58306:32714,58307:32725,58308:32724,58309:32737,58310:32742,58311:32745,58312:32755,58313:32761,58314:39132,58315:32774,58316:32772,58317:32779,58318:32786,58319:32792,58320:32793,58321:32796,58322:32801,58323:32808,58324:32831,58325:32827,58326:32842,58327:32838,58328:32850,58329:32856,58330:32858,58331:32863,58332:32866,58333:32872,58334:32883,58335:32882,58336:32880,58337:32886,58338:32889,58339:32893,58340:32895,58341:32900,58342:32902,58343:32901,58344:32923,58345:32915,58346:32922,58347:32941,58348:20880,58349:32940,58350:32987,58351:32997,58352:32985,58353:32989,58354:32964,58355:32986,58356:32982,58357:33033,58358:33007,58359:33009,58360:33051,58361:33065,58362:33059,58363:33071,58364:33099,58432:38539,58433:33094,58434:33086,58435:33107,58436:33105,58437:33020,58438:33137,58439:33134,58440:33125,58441:33126,58442:33140,58443:33155,58444:33160,58445:33162,58446:33152,58447:33154,58448:33184,58449:33173,58450:33188,58451:33187,58452:33119,58453:33171,58454:33193,58455:33200,58456:33205,58457:33214,58458:33208,58459:33213,58460:33216,58461:33218,58462:33210,58463:33225,58464:33229,58465:33233,58466:33241,58467:33240,58468:33224,58469:33242,58470:33247,58471:33248,58472:33255,58473:33274,58474:33275,58475:33278,58476:33281,58477:33282,58478:33285,58479:33287,58480:33290,58481:33293,58482:33296,58483:33302,58484:33321,58485:33323,58486:33336,58487:33331,58488:33344,58489:33369,58490:33368,58491:33373,58492:33370,58493:33375,58494:33380,58496:33378,58497:33384,58498:33386,58499:33387,58500:33326,58501:33393,58502:33399,58503:33400,58504:33406,58505:33421,58506:33426,58507:33451,58508:33439,58509:33467,58510:33452,58511:33505,58512:33507,58513:33503,58514:33490,58515:33524,58516:33523,58517:33530,58518:33683,58519:33539,58520:33531,58521:33529,58522:33502,58523:33542,58524:33500,58525:33545,58526:33497,58527:33589,58528:33588,58529:33558,58530:33586,58531:33585,58532:33600,58533:33593,58534:33616,58535:33605,58536:33583,58537:33579,58538:33559,58539:33560,58540:33669,58541:33690,58542:33706,58543:33695,58544:33698,58545:33686,58546:33571,58547:33678,58548:33671,58549:33674,58550:33660,58551:33717,58552:33651,58553:33653,58554:33696,58555:33673,58556:33704,58557:33780,58558:33811,58559:33771,58560:33742,58561:33789,58562:33795,58563:33752,58564:33803,58565:33729,58566:33783,58567:33799,58568:33760,58569:33778,58570:33805,58571:33826,58572:33824,58573:33725,58574:33848,58575:34054,58576:33787,58577:33901,58578:33834,58579:33852,58580:34138,58581:33924,58582:33911,58583:33899,58584:33965,58585:33902,58586:33922,58587:33897,58588:33862,58589:33836,58590:33903,58591:33913,58592:33845,58593:33994,58594:33890,58595:33977,58596:33983,58597:33951,58598:34009,58599:33997,58600:33979,58601:34010,58602:34e3,58603:33985,58604:33990,58605:34006,58606:33953,58607:34081,58608:34047,58609:34036,58610:34071,58611:34072,58612:34092,58613:34079,58614:34069,58615:34068,58616:34044,58617:34112,58618:34147,58619:34136,58620:34120,58688:34113,58689:34306,58690:34123,58691:34133,58692:34176,58693:34212,58694:34184,58695:34193,58696:34186,58697:34216,58698:34157,58699:34196,58700:34203,58701:34282,58702:34183,58703:34204,58704:34167,58705:34174,58706:34192,58707:34249,58708:34234,58709:34255,58710:34233,58711:34256,58712:34261,58713:34269,58714:34277,58715:34268,58716:34297,58717:34314,58718:34323,58719:34315,58720:34302,58721:34298,58722:34310,58723:34338,58724:34330,58725:34352,58726:34367,58727:34381,58728:20053,58729:34388,58730:34399,58731:34407,58732:34417,58733:34451,58734:34467,58735:34473,58736:34474,58737:34443,58738:34444,58739:34486,58740:34479,58741:34500,58742:34502,58743:34480,58744:34505,58745:34851,58746:34475,58747:34516,58748:34526,58749:34537,58750:34540,58752:34527,58753:34523,58754:34543,58755:34578,58756:34566,58757:34568,58758:34560,58759:34563,58760:34555,58761:34577,58762:34569,58763:34573,58764:34553,58765:34570,58766:34612,58767:34623,58768:34615,58769:34619,58770:34597,58771:34601,58772:34586,58773:34656,58774:34655,58775:34680,58776:34636,58777:34638,58778:34676,58779:34647,58780:34664,58781:34670,58782:34649,58783:34643,58784:34659,58785:34666,58786:34821,58787:34722,58788:34719,58789:34690,58790:34735,58791:34763,58792:34749,58793:34752,58794:34768,58795:38614,58796:34731,58797:34756,58798:34739,58799:34759,58800:34758,58801:34747,58802:34799,58803:34802,58804:34784,58805:34831,58806:34829,58807:34814,58808:34806,58809:34807,58810:34830,58811:34770,58812:34833,58813:34838,58814:34837,58815:34850,58816:34849,58817:34865,58818:34870,58819:34873,58820:34855,58821:34875,58822:34884,58823:34882,58824:34898,58825:34905,58826:34910,58827:34914,58828:34923,58829:34945,58830:34942,58831:34974,58832:34933,58833:34941,58834:34997,58835:34930,58836:34946,58837:34967,58838:34962,58839:34990,58840:34969,58841:34978,58842:34957,58843:34980,58844:34992,58845:35007,58846:34993,58847:35011,58848:35012,58849:35028,58850:35032,58851:35033,58852:35037,58853:35065,58854:35074,58855:35068,58856:35060,58857:35048,58858:35058,58859:35076,58860:35084,58861:35082,58862:35091,58863:35139,58864:35102,58865:35109,58866:35114,58867:35115,58868:35137,58869:35140,58870:35131,58871:35126,58872:35128,58873:35148,58874:35101,58875:35168,58876:35166,58944:35174,58945:35172,58946:35181,58947:35178,58948:35183,58949:35188,58950:35191,58951:35198,58952:35203,58953:35208,58954:35210,58955:35219,58956:35224,58957:35233,58958:35241,58959:35238,58960:35244,58961:35247,58962:35250,58963:35258,58964:35261,58965:35263,58966:35264,58967:35290,58968:35292,58969:35293,58970:35303,58971:35316,58972:35320,58973:35331,58974:35350,58975:35344,58976:35340,58977:35355,58978:35357,58979:35365,58980:35382,58981:35393,58982:35419,58983:35410,58984:35398,58985:35400,58986:35452,58987:35437,58988:35436,58989:35426,58990:35461,58991:35458,58992:35460,58993:35496,58994:35489,58995:35473,58996:35493,58997:35494,58998:35482,58999:35491,59000:35524,59001:35533,59002:35522,59003:35546,59004:35563,59005:35571,59006:35559,59008:35556,59009:35569,59010:35604,59011:35552,59012:35554,59013:35575,59014:35550,59015:35547,59016:35596,59017:35591,59018:35610,59019:35553,59020:35606,59021:35600,59022:35607,59023:35616,59024:35635,59025:38827,59026:35622,59027:35627,59028:35646,59029:35624,59030:35649,59031:35660,59032:35663,59033:35662,59034:35657,59035:35670,59036:35675,59037:35674,59038:35691,59039:35679,59040:35692,59041:35695,59042:35700,59043:35709,59044:35712,59045:35724,59046:35726,59047:35730,59048:35731,59049:35734,59050:35737,59051:35738,59052:35898,59053:35905,59054:35903,59055:35912,59056:35916,59057:35918,59058:35920,59059:35925,59060:35938,59061:35948,59062:35960,59063:35962,59064:35970,59065:35977,59066:35973,59067:35978,59068:35981,59069:35982,59070:35988,59071:35964,59072:35992,59073:25117,59074:36013,59075:36010,59076:36029,59077:36018,59078:36019,59079:36014,59080:36022,59081:36040,59082:36033,59083:36068,59084:36067,59085:36058,59086:36093,59087:36090,59088:36091,59089:36100,59090:36101,59091:36106,59092:36103,59093:36111,59094:36109,59095:36112,59096:40782,59097:36115,59098:36045,59099:36116,59100:36118,59101:36199,59102:36205,59103:36209,59104:36211,59105:36225,59106:36249,59107:36290,59108:36286,59109:36282,59110:36303,59111:36314,59112:36310,59113:36300,59114:36315,59115:36299,59116:36330,59117:36331,59118:36319,59119:36323,59120:36348,59121:36360,59122:36361,59123:36351,59124:36381,59125:36382,59126:36368,59127:36383,59128:36418,59129:36405,59130:36400,59131:36404,59132:36426,59200:36423,59201:36425,59202:36428,59203:36432,59204:36424,59205:36441,59206:36452,59207:36448,59208:36394,59209:36451,59210:36437,59211:36470,59212:36466,59213:36476,59214:36481,59215:36487,59216:36485,59217:36484,59218:36491,59219:36490,59220:36499,59221:36497,59222:36500,59223:36505,59224:36522,59225:36513,59226:36524,59227:36528,59228:36550,59229:36529,59230:36542,59231:36549,59232:36552,59233:36555,59234:36571,59235:36579,59236:36604,59237:36603,59238:36587,59239:36606,59240:36618,59241:36613,59242:36629,59243:36626,59244:36633,59245:36627,59246:36636,59247:36639,59248:36635,59249:36620,59250:36646,59251:36659,59252:36667,59253:36665,59254:36677,59255:36674,59256:36670,59257:36684,59258:36681,59259:36678,59260:36686,59261:36695,59262:36700,59264:36706,59265:36707,59266:36708,59267:36764,59268:36767,59269:36771,59270:36781,59271:36783,59272:36791,59273:36826,59274:36837,59275:36834,59276:36842,59277:36847,59278:36999,59279:36852,59280:36869,59281:36857,59282:36858,59283:36881,59284:36885,59285:36897,59286:36877,59287:36894,59288:36886,59289:36875,59290:36903,59291:36918,59292:36917,59293:36921,59294:36856,59295:36943,59296:36944,59297:36945,59298:36946,59299:36878,59300:36937,59301:36926,59302:36950,59303:36952,59304:36958,59305:36968,59306:36975,59307:36982,59308:38568,59309:36978,59310:36994,59311:36989,59312:36993,59313:36992,59314:37002,59315:37001,59316:37007,59317:37032,59318:37039,59319:37041,59320:37045,59321:37090,59322:37092,59323:25160,59324:37083,59325:37122,59326:37138,59327:37145,59328:37170,59329:37168,59330:37194,59331:37206,59332:37208,59333:37219,59334:37221,59335:37225,59336:37235,59337:37234,59338:37259,59339:37257,59340:37250,59341:37282,59342:37291,59343:37295,59344:37290,59345:37301,59346:37300,59347:37306,59348:37312,59349:37313,59350:37321,59351:37323,59352:37328,59353:37334,59354:37343,59355:37345,59356:37339,59357:37372,59358:37365,59359:37366,59360:37406,59361:37375,59362:37396,59363:37420,59364:37397,59365:37393,59366:37470,59367:37463,59368:37445,59369:37449,59370:37476,59371:37448,59372:37525,59373:37439,59374:37451,59375:37456,59376:37532,59377:37526,59378:37523,59379:37531,59380:37466,59381:37583,59382:37561,59383:37559,59384:37609,59385:37647,59386:37626,59387:37700,59388:37678,59456:37657,59457:37666,59458:37658,59459:37667,59460:37690,59461:37685,59462:37691,59463:37724,59464:37728,59465:37756,59466:37742,59467:37718,59468:37808,59469:37804,59470:37805,59471:37780,59472:37817,59473:37846,59474:37847,59475:37864,59476:37861,59477:37848,59478:37827,59479:37853,59480:37840,59481:37832,59482:37860,59483:37914,59484:37908,59485:37907,59486:37891,59487:37895,59488:37904,59489:37942,59490:37931,59491:37941,59492:37921,59493:37946,59494:37953,59495:37970,59496:37956,59497:37979,59498:37984,59499:37986,59500:37982,59501:37994,59502:37417,59503:38e3,59504:38005,59505:38007,59506:38013,59507:37978,59508:38012,59509:38014,59510:38017,59511:38015,59512:38274,59513:38279,59514:38282,59515:38292,59516:38294,59517:38296,59518:38297,59520:38304,59521:38312,59522:38311,59523:38317,59524:38332,59525:38331,59526:38329,59527:38334,59528:38346,59529:28662,59530:38339,59531:38349,59532:38348,59533:38357,59534:38356,59535:38358,59536:38364,59537:38369,59538:38373,59539:38370,59540:38433,59541:38440,59542:38446,59543:38447,59544:38466,59545:38476,59546:38479,59547:38475,59548:38519,59549:38492,59550:38494,59551:38493,59552:38495,59553:38502,59554:38514,59555:38508,59556:38541,59557:38552,59558:38549,59559:38551,59560:38570,59561:38567,59562:38577,59563:38578,59564:38576,59565:38580,59566:38582,59567:38584,59568:38585,59569:38606,59570:38603,59571:38601,59572:38605,59573:35149,59574:38620,59575:38669,59576:38613,59577:38649,59578:38660,59579:38662,59580:38664,59581:38675,59582:38670,59583:38673,59584:38671,59585:38678,59586:38681,59587:38692,59588:38698,59589:38704,59590:38713,59591:38717,59592:38718,59593:38724,59594:38726,59595:38728,59596:38722,59597:38729,59598:38748,59599:38752,59600:38756,59601:38758,59602:38760,59603:21202,59604:38763,59605:38769,59606:38777,59607:38789,59608:38780,59609:38785,59610:38778,59611:38790,59612:38795,59613:38799,59614:38800,59615:38812,59616:38824,59617:38822,59618:38819,59619:38835,59620:38836,59621:38851,59622:38854,59623:38856,59624:38859,59625:38876,59626:38893,59627:40783,59628:38898,59629:31455,59630:38902,59631:38901,59632:38927,59633:38924,59634:38968,59635:38948,59636:38945,59637:38967,59638:38973,59639:38982,59640:38991,59641:38987,59642:39019,59643:39023,59644:39024,59712:39025,59713:39028,59714:39027,59715:39082,59716:39087,59717:39089,59718:39094,59719:39108,59720:39107,59721:39110,59722:39145,59723:39147,59724:39171,59725:39177,59726:39186,59727:39188,59728:39192,59729:39201,59730:39197,59731:39198,59732:39204,59733:39200,59734:39212,59735:39214,59736:39229,59737:39230,59738:39234,59739:39241,59740:39237,59741:39248,59742:39243,59743:39249,59744:39250,59745:39244,59746:39253,59747:39319,59748:39320,59749:39333,59750:39341,59751:39342,59752:39356,59753:39391,59754:39387,59755:39389,59756:39384,59757:39377,59758:39405,59759:39406,59760:39409,59761:39410,59762:39419,59763:39416,59764:39425,59765:39439,59766:39429,59767:39394,59768:39449,59769:39467,59770:39479,59771:39493,59772:39490,59773:39488,59774:39491,59776:39486,59777:39509,59778:39501,59779:39515,59780:39511,59781:39519,59782:39522,59783:39525,59784:39524,59785:39529,59786:39531,59787:39530,59788:39597,59789:39600,59790:39612,59791:39616,59792:39631,59793:39633,59794:39635,59795:39636,59796:39646,59797:39647,59798:39650,59799:39651,59800:39654,59801:39663,59802:39659,59803:39662,59804:39668,59805:39665,59806:39671,59807:39675,59808:39686,59809:39704,59810:39706,59811:39711,59812:39714,59813:39715,59814:39717,59815:39719,59816:39720,59817:39721,59818:39722,59819:39726,59820:39727,59821:39730,59822:39748,59823:39747,59824:39759,59825:39757,59826:39758,59827:39761,59828:39768,59829:39796,59830:39827,59831:39811,59832:39825,59833:39830,59834:39831,59835:39839,59836:39840,59837:39848,59838:39860,59839:39872,59840:39882,59841:39865,59842:39878,59843:39887,59844:39889,59845:39890,59846:39907,59847:39906,59848:39908,59849:39892,59850:39905,59851:39994,59852:39922,59853:39921,59854:39920,59855:39957,59856:39956,59857:39945,59858:39955,59859:39948,59860:39942,59861:39944,59862:39954,59863:39946,59864:39940,59865:39982,59866:39963,59867:39973,59868:39972,59869:39969,59870:39984,59871:40007,59872:39986,59873:40006,59874:39998,59875:40026,59876:40032,59877:40039,59878:40054,59879:40056,59880:40167,59881:40172,59882:40176,59883:40201,59884:40200,59885:40171,59886:40195,59887:40198,59888:40234,59889:40230,59890:40367,59891:40227,59892:40223,59893:40260,59894:40213,59895:40210,59896:40257,59897:40255,59898:40254,59899:40262,59900:40264,59968:40285,59969:40286,59970:40292,59971:40273,59972:40272,59973:40281,59974:40306,59975:40329,59976:40327,59977:40363,59978:40303,59979:40314,59980:40346,59981:40356,59982:40361,59983:40370,59984:40388,59985:40385,59986:40379,59987:40376,59988:40378,59989:40390,59990:40399,59991:40386,59992:40409,59993:40403,59994:40440,59995:40422,59996:40429,59997:40431,59998:40445,59999:40474,60000:40475,60001:40478,60002:40565,60003:40569,60004:40573,60005:40577,60006:40584,60007:40587,60008:40588,60009:40594,60010:40597,60011:40593,60012:40605,60013:40613,60014:40617,60015:40632,60016:40618,60017:40621,60018:38753,60019:40652,60020:40654,60021:40655,60022:40656,60023:40660,60024:40668,60025:40670,60026:40669,60027:40672,60028:40677,60029:40680,60030:40687,60032:40692,60033:40694,60034:40695,60035:40697,60036:40699,60037:40700,60038:40701,60039:40711,60040:40712,60041:30391,60042:40725,60043:40737,60044:40748,60045:40766,60046:40778,60047:40786,60048:40788,60049:40803,60050:40799,60051:40800,60052:40801,60053:40806,60054:40807,60055:40812,60056:40810,60057:40823,60058:40818,60059:40822,60060:40853,60061:40860,60062:40864,60063:22575,60064:27079,60065:36953,60066:29796,60067:20956,60068:29081}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(1),i=r(2);e.decode=function(t,e){var r=new Uint8ClampedArray(t.length);r.set(t);for(var o=new n.default(285,256,0),a=new i.default(o,r),s=new Uint8ClampedArray(e),l=!1,u=0;u=n/2;){var l=i,u=a;if(a=s,(i=o).isZero())return null;o=l;for(var c=t.zero,f=i.getCoefficient(i.degree()),h=t.inverse(f);o.degree()>=i.degree()&&!o.isZero();){var p=o.degree()-i.degree(),d=t.multiply(o.getCoefficient(o.degree()),h);c=c.addOrSubtract(t.buildMonomial(p,d)),o=o.addOrSubtract(i.multiplyByMonomial(p,d))}if(s=c.multiplyPoly(a).addOrSubtract(u),o.degree()>=i.degree())return null}var m=s.getCoefficient(0);if(0===m)return null;var g,v=t.inverse(m);return[s.multiply(v),o.multiply(v)]}(o,o.buildMonomial(e,1),f,e);if(null===h)return null;var p=function(t,e){var r=e.degree();if(1===r)return[e.getCoefficient(1)];for(var n=new Array(r),i=0,o=1;oMath.abs(e.x-t.x);c?(i=Math.floor(t.y),o=Math.floor(t.x),s=Math.floor(e.y),l=Math.floor(e.x)):(i=Math.floor(t.x),o=Math.floor(t.y),s=Math.floor(e.x),l=Math.floor(e.y));for(var f=Math.abs(s-i),h=Math.abs(l-o),p=Math.floor(-f/2),d=i0){if(_===l)break;_+=m,p-=f}}for(var w=[],k=0;k=t.bottom.startX&&v<=t.bottom.endX||g>=t.bottom.startX&&v<=t.bottom.endX||v<=t.bottom.startX&&g>=t.bottom.endX&&f[2]/(t.bottom.endX-t.bottom.startX)i})).length>0?y[0].bottom=_:r.push({top:_,bottom:_})}if(m){var y,b=e-f[4],w=b-f[3];_={startX:w,y:n,endX:b},(y=c.filter(function(t){return w>=t.bottom.startX&&w<=t.bottom.endX||b>=t.bottom.startX&&w<=t.bottom.endX||w<=t.bottom.startX&&b>=t.bottom.endX&&f[2]/(t.bottom.endX-t.bottom.startX)i})).length>0?y[0].bottom=_:c.push({top:_,bottom:_})}}},p=-1;p<=t.width;p++)h(p);e.push.apply(e,r.filter(function(t){return t.bottom.y!==n&&t.bottom.y-t.top.y>=2})),r=r.filter(function(t){return t.bottom.y===n}),l.push.apply(l,c.filter(function(t){return t.bottom.y!==n})),c=c.filter(function(t){return t.bottom.y===n})},p=0;p<=t.height;p++)h(p);e.push.apply(e,r.filter(function(t){return t.bottom.y-t.top.y>=2})),l.push.apply(l,c);var d=e.filter(function(t){return t.bottom.y-t.top.y>=2}).map(function(e){var r=(e.top.startX+e.top.endX+e.bottom.startX+e.bottom.endX)/4,n=(e.top.y+e.bottom.y+1)/2;if(t.get(Math.round(r),Math.round(n))){var i=[e.top.endX-e.top.startX,e.bottom.endX-e.bottom.startX,e.bottom.y-e.top.y+1],o=s(i)/i.length;return{score:f({x:Math.round(r),y:Math.round(n)},[1,1,3,1,1],t),x:r,y:n,size:o}}}).filter(function(t){return!!t}).sort(function(t,e){return t.score-e.score}).map(function(t,e,r){if(e>n)return null;var i=r.filter(function(t,r){return e!==r}).map(function(e){return{x:e.x,y:e.y,score:e.score+Math.pow(e.size-t.size,2)/t.size,size:e.size}}).sort(function(t,e){return t.score-e.score});if(i.length<2)return null;var o=t.score+i[0].score+i[1].score;return{points:[t].concat(i.slice(0,2)),score:o}}).filter(function(t){return!!t}).sort(function(t,e){return t.score-e.score});if(0===d.length)return null;var m,g,v=function(t,e,r){var n,i,o,s,l,u,c,f=a(t,e),h=a(e,r),p=a(t,r);return h>=f&&h>=p?(n=(s=[e,t,r])[0],i=s[1],o=s[2]):p>=h&&p>=f?(n=(l=[t,e,r])[0],i=l[1],o=l[2]):(n=(u=[t,r,e])[0],i=u[1],o=u[2]),(o.x-i.x)*(n.y-i.y)-(o.y-i.y)*(n.x-i.x)<0&&(n=(c=[o,n])[0],o=c[1]),{bottomLeft:n,topLeft:i,topRight:o}}(d[0].points[0],d[0].points[1],d[0].points[2]),_=v.topRight,y=v.topLeft,b=v.bottomLeft;try{w=function(t,e,r,n){var i=(s(u(t,r,n,5))/7+s(u(t,e,n,5))/7+s(u(r,t,n,5))/7+s(u(e,t,n,5))/7)/4;if(i<1)throw new Error("Invalid module size");var o=Math.round(a(t,e)/i),l=Math.round(a(t,r)/i),c=Math.floor((o+l)/2)+7;switch(c%4){case 0:c++;break;case 2:c--}return{dimension:c,moduleSize:i}}(y,_,b,t),m=w.dimension,g=w.moduleSize}catch(t){return null}var w,k=_.x-y.x+b.x,x=_.y-y.y+b.y,B=(a(y,b)+a(y,_))/2/g,C=1-3/B,E={x:y.x+C*(k-y.x),y:y.y+C*(x-y.y)},P=l.map(function(e){var r=(e.top.startX+e.top.endX+e.bottom.startX+e.bottom.endX)/4,n=(e.top.y+e.bottom.y+1)/2;if(t.get(Math.floor(r),Math.floor(n))){var i=[e.top.endX-e.top.startX,e.bottom.endX-e.bottom.startX,e.bottom.y-e.top.y+1];return s(i),{x:r,y:n,score:f({x:Math.floor(r),y:Math.floor(n)},[1,1,1],t)+a({x:r,y:n},E)}}}).filter(function(t){return!!t}).sort(function(t,e){return t.score-e.score}),j=B>=15&&P.length?P[0]:E;return{alignmentPattern:{x:j.x,y:j.y},bottomLeft:{x:b.x,y:b.y},dimension:m,topLeft:{x:y.x,y:y.y},topRight:{x:_.x,y:_.y}}}}]).default},"object"==typeof r&&"object"==typeof e?e.exports=i():"function"==typeof define&&define.amd?define([],i):"object"==typeof r?r.jsQR=i():n.jsQR=i()},{}],76:[function(t,e,r){(function(t){(function(){var n,i=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",s="__lodash_hash_undefined__",l=500,u="__lodash_placeholder__",c=1,f=2,h=4,p=1,d=2,m=1,g=2,v=4,_=8,y=16,b=32,w=64,k=128,x=256,B=512,C=30,E="...",P=800,j=16,S=1,T=2,M=1/0,A=9007199254740991,I=1.7976931348623157e308,R=NaN,L=4294967295,F=L-1,O=L>>>1,D=[["ary",k],["bind",m],["bindKey",g],["curry",_],["curryRight",y],["flip",B],["partial",b],["partialRight",w],["rearg",x]],N="[object Arguments]",U="[object Array]",z="[object AsyncFunction]",q="[object Boolean]",V="[object Date]",H="[object DOMException]",G="[object Error]",W="[object Function]",Z="[object GeneratorFunction]",Y="[object Map]",X="[object Number]",$="[object Null]",J="[object Object]",K="[object Proxy]",Q="[object RegExp]",tt="[object Set]",et="[object String]",rt="[object Symbol]",nt="[object Undefined]",it="[object WeakMap]",ot="[object WeakSet]",at="[object ArrayBuffer]",st="[object DataView]",lt="[object Float32Array]",ut="[object Float64Array]",ct="[object Int8Array]",ft="[object Int16Array]",ht="[object Int32Array]",pt="[object Uint8Array]",dt="[object Uint8ClampedArray]",mt="[object Uint16Array]",gt="[object Uint32Array]",vt=/\b__p \+= '';/g,_t=/\b(__p \+=) '' \+/g,yt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,bt=/&(?:amp|lt|gt|quot|#39);/g,wt=/[&<>"']/g,kt=RegExp(bt.source),xt=RegExp(wt.source),Bt=/<%-([\s\S]+?)%>/g,Ct=/<%([\s\S]+?)%>/g,Et=/<%=([\s\S]+?)%>/g,Pt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,jt=/^\w*$/,St=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Tt=/[\\^$.*+?()[\]{}|]/g,Mt=RegExp(Tt.source),At=/^\s+|\s+$/g,It=/^\s+/,Rt=/\s+$/,Lt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ft=/\{\n\/\* \[wrapped with (.+)\] \*/,Ot=/,? & /,Dt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Nt=/\\(\\)?/g,Ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,zt=/\w*$/,qt=/^[-+]0x[0-9a-f]+$/i,Vt=/^0b[01]+$/i,Ht=/^\[object .+?Constructor\]$/,Gt=/^0o[0-7]+$/i,Wt=/^(?:0|[1-9]\d*)$/,Zt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Yt=/($^)/,Xt=/['\n\r\u2028\u2029\\]/g,$t="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Jt="\\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",Kt="[\\ud800-\\udfff]",Qt="["+Jt+"]",te="["+$t+"]",ee="\\d+",re="[\\u2700-\\u27bf]",ne="[a-z\\xdf-\\xf6\\xf8-\\xff]",ie="[^\\ud800-\\udfff"+Jt+ee+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",oe="\\ud83c[\\udffb-\\udfff]",ae="[^\\ud800-\\udfff]",se="(?:\\ud83c[\\udde6-\\uddff]){2}",le="[\\ud800-\\udbff][\\udc00-\\udfff]",ue="[A-Z\\xc0-\\xd6\\xd8-\\xde]",ce="(?:"+ne+"|"+ie+")",fe="(?:"+ue+"|"+ie+")",he="(?:"+te+"|"+oe+")"+"?",pe="[\\ufe0e\\ufe0f]?"+he+("(?:\\u200d(?:"+[ae,se,le].join("|")+")[\\ufe0e\\ufe0f]?"+he+")*"),de="(?:"+[re,se,le].join("|")+")"+pe,me="(?:"+[ae+te+"?",te,se,le,Kt].join("|")+")",ge=RegExp("['’]","g"),ve=RegExp(te,"g"),_e=RegExp(oe+"(?="+oe+")|"+me+pe,"g"),ye=RegExp([ue+"?"+ne+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[Qt,ue,"$"].join("|")+")",fe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[Qt,ue+ce,"$"].join("|")+")",ue+"?"+ce+"+(?:['’](?:d|ll|m|re|s|t|ve))?",ue+"+(?:['’](?: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_])",ee,de].join("|"),"g"),be=RegExp("[\\u200d\\ud800-\\udfff"+$t+"\\ufe0e\\ufe0f]"),we=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ke=["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"],xe=-1,Be={};Be[lt]=Be[ut]=Be[ct]=Be[ft]=Be[ht]=Be[pt]=Be[dt]=Be[mt]=Be[gt]=!0,Be[N]=Be[U]=Be[at]=Be[q]=Be[st]=Be[V]=Be[G]=Be[W]=Be[Y]=Be[X]=Be[J]=Be[Q]=Be[tt]=Be[et]=Be[it]=!1;var Ce={};Ce[N]=Ce[U]=Ce[at]=Ce[st]=Ce[q]=Ce[V]=Ce[lt]=Ce[ut]=Ce[ct]=Ce[ft]=Ce[ht]=Ce[Y]=Ce[X]=Ce[J]=Ce[Q]=Ce[tt]=Ce[et]=Ce[rt]=Ce[pt]=Ce[dt]=Ce[mt]=Ce[gt]=!0,Ce[G]=Ce[W]=Ce[it]=!1;var Ee={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Pe=parseFloat,je=parseInt,Se="object"==typeof t&&t&&t.Object===Object&&t,Te="object"==typeof self&&self&&self.Object===Object&&self,Me=Se||Te||Function("return this")(),Ae="object"==typeof r&&r&&!r.nodeType&&r,Ie=Ae&&"object"==typeof e&&e&&!e.nodeType&&e,Re=Ie&&Ie.exports===Ae,Le=Re&&Se.process,Fe=function(){try{var t=Ie&&Ie.require&&Ie.require("util").types;return t||Le&&Le.binding&&Le.binding("util")}catch(t){}}(),Oe=Fe&&Fe.isArrayBuffer,De=Fe&&Fe.isDate,Ne=Fe&&Fe.isMap,Ue=Fe&&Fe.isRegExp,ze=Fe&&Fe.isSet,qe=Fe&&Fe.isTypedArray;function Ve(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}function He(t,e,r,n){for(var i=-1,o=null==t?0:t.length;++i-1}function $e(t,e,r){for(var n=-1,i=null==t?0:t.length;++n-1;);return r}function _r(t,e){for(var r=t.length;r--&&or(e,t[r],0)>-1;);return r}var yr=cr({"À":"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"}),br=cr({"&":"&","<":"<",">":">",'"':""","'":"'"});function wr(t){return"\\"+Ee[t]}function kr(t){return be.test(t)}function xr(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function Br(t,e){return function(r){return t(e(r))}}function Cr(t,e){for(var r=-1,n=t.length,i=0,o=[];++r",""":'"',"'":"'"});var Mr=function t(e){var r,$t=(e=null==e?Me:Mr.defaults(Me.Object(),e,Mr.pick(Me,ke))).Array,Jt=e.Date,Kt=e.Error,Qt=e.Function,te=e.Math,ee=e.Object,re=e.RegExp,ne=e.String,ie=e.TypeError,oe=$t.prototype,ae=Qt.prototype,se=ee.prototype,le=e["__core-js_shared__"],ue=ae.toString,ce=se.hasOwnProperty,fe=0,he=(r=/[^.]+$/.exec(le&&le.keys&&le.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",pe=se.toString,de=ue.call(ee),me=Me._,_e=re("^"+ue.call(ce).replace(Tt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),be=Re?e.Buffer:n,Ee=e.Symbol,Se=e.Uint8Array,Te=be?be.allocUnsafe:n,Ae=Br(ee.getPrototypeOf,ee),Ie=ee.create,Le=se.propertyIsEnumerable,Fe=oe.splice,rr=Ee?Ee.isConcatSpreadable:n,cr=Ee?Ee.iterator:n,Ar=Ee?Ee.toStringTag:n,Ir=function(){try{var t=No(ee,"defineProperty");return t({},"",{}),t}catch(t){}}(),Rr=e.clearTimeout!==Me.clearTimeout&&e.clearTimeout,Lr=Jt&&Jt.now!==Me.Date.now&&Jt.now,Fr=e.setTimeout!==Me.setTimeout&&e.setTimeout,Or=te.ceil,Dr=te.floor,Nr=ee.getOwnPropertySymbols,Ur=be?be.isBuffer:n,zr=e.isFinite,qr=oe.join,Vr=Br(ee.keys,ee),Hr=te.max,Gr=te.min,Wr=Jt.now,Zr=e.parseInt,Yr=te.random,Xr=oe.reverse,$r=No(e,"DataView"),Jr=No(e,"Map"),Kr=No(e,"Promise"),Qr=No(e,"Set"),tn=No(e,"WeakMap"),en=No(ee,"create"),rn=tn&&new tn,nn={},on=fa($r),an=fa(Jr),sn=fa(Kr),ln=fa(Qr),un=fa(tn),cn=Ee?Ee.prototype:n,fn=cn?cn.valueOf:n,hn=cn?cn.toString:n;function pn(t){if(js(t)&&!vs(t)&&!(t instanceof vn)){if(t instanceof gn)return t;if(ce.call(t,"__wrapped__"))return ha(t)}return new gn(t)}var dn=function(){function t(){}return function(e){if(!Ps(e))return{};if(Ie)return Ie(e);t.prototype=e;var r=new t;return t.prototype=n,r}}();function mn(){}function gn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=n}function vn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=L,this.__views__=[]}function _n(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function Ln(t,e,r,i,o,a){var s,l=e&c,u=e&f,p=e&h;if(r&&(s=o?r(t,i,o,a):r(t)),s!==n)return s;if(!Ps(t))return t;var d=vs(t);if(d){if(s=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&ce.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!l)return ro(t,s)}else{var m=qo(t),g=m==W||m==Z;if(ws(t))return $i(t,l);if(m==J||m==N||g&&!o){if(s=u||g?{}:Ho(t),!l)return u?function(t,e){return no(t,zo(t),e)}(t,function(t,e){return t&&no(e,ol(e),t)}(s,t)):function(t,e){return no(t,Uo(t),e)}(t,Mn(s,t))}else{if(!Ce[m])return o?t:{};s=function(t,e,r){var n,i,o,a=t.constructor;switch(e){case at:return Ji(t);case q:case V:return new a(+t);case st:return function(t,e){var r=e?Ji(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case lt:case ut:case ct:case ft:case ht:case pt:case dt:case mt:case gt:return Ki(t,r);case Y:return new a;case X:case et:return new a(t);case Q:return(o=new(i=t).constructor(i.source,zt.exec(i))).lastIndex=i.lastIndex,o;case tt:return new a;case rt:return n=t,fn?ee(fn.call(n)):{}}}(t,m,l)}}a||(a=new kn);var v=a.get(t);if(v)return v;if(a.set(t,s),Is(t))return t.forEach(function(n){s.add(Ln(n,e,r,n,t,a))}),s;if(Ss(t))return t.forEach(function(n,i){s.set(i,Ln(n,e,r,i,t,a))}),s;var _=d?n:(p?u?Ao:Mo:u?ol:il)(t);return Ge(_||t,function(n,i){_&&(n=t[i=n]),jn(s,i,Ln(n,e,r,i,t,a))}),s}function Fn(t,e,r){var i=r.length;if(null==t)return!i;for(t=ee(t);i--;){var o=r[i],a=e[o],s=t[o];if(s===n&&!(o in t)||!a(s))return!1}return!0}function On(t,e,r){if("function"!=typeof t)throw new ie(a);return ia(function(){t.apply(n,r)},e)}function Dn(t,e,r,n){var o=-1,a=Xe,s=!0,l=t.length,u=[],c=e.length;if(!l)return u;r&&(e=Je(e,dr(r))),n?(a=$e,s=!1):e.length>=i&&(a=gr,s=!1,e=new wn(e));t:for(;++o-1},yn.prototype.set=function(t,e){var r=this.__data__,n=Sn(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this},bn.prototype.clear=function(){this.size=0,this.__data__={hash:new _n,map:new(Jr||yn),string:new _n}},bn.prototype.delete=function(t){var e=Oo(this,t).delete(t);return this.size-=e?1:0,e},bn.prototype.get=function(t){return Oo(this,t).get(t)},bn.prototype.has=function(t){return Oo(this,t).has(t)},bn.prototype.set=function(t,e){var r=Oo(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this},wn.prototype.add=wn.prototype.push=function(t){return this.__data__.set(t,s),this},wn.prototype.has=function(t){return this.__data__.has(t)},kn.prototype.clear=function(){this.__data__=new yn,this.size=0},kn.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},kn.prototype.get=function(t){return this.__data__.get(t)},kn.prototype.has=function(t){return this.__data__.has(t)},kn.prototype.set=function(t,e){var r=this.__data__;if(r instanceof yn){var n=r.__data__;if(!Jr||n.length0&&r(s)?e>1?Hn(s,e-1,r,n,i):Ke(i,s):n||(i[i.length]=s)}return i}var Gn=so(),Wn=so(!0);function Zn(t,e){return t&&Gn(t,e,il)}function Yn(t,e){return t&&Wn(t,e,il)}function Xn(t,e){return Ye(e,function(e){return Bs(t[e])})}function $n(t,e){for(var r=0,i=(e=Wi(e,t)).length;null!=t&&re}function ti(t,e){return null!=t&&ce.call(t,e)}function ei(t,e){return null!=t&&e in ee(t)}function ri(t,e,r){for(var i=r?$e:Xe,o=t[0].length,a=t.length,s=a,l=$t(a),u=1/0,c=[];s--;){var f=t[s];s&&e&&(f=Je(f,dr(e))),u=Gr(f.length,u),l[s]=!r&&(e||o>=120&&f.length>=120)?new wn(s&&f):n}f=t[0];var h=-1,p=l[0];t:for(;++h=s)return l;var u=r[n];return l*("desc"==u?-1:1)}}return t.index-e.index}(t,e,r)})}function _i(t,e,r){for(var n=-1,i=e.length,o={};++n-1;)s!==t&&Fe.call(s,l,1),Fe.call(t,l,1);return t}function bi(t,e){for(var r=t?e.length:0,n=r-1;r--;){var i=e[r];if(r==n||i!==o){var o=i;Wo(i)?Fe.call(t,i,1):Di(t,i)}}return t}function wi(t,e){return t+Dr(Yr()*(e-t+1))}function ki(t,e){var r="";if(!t||e<1||e>A)return r;do{e%2&&(r+=t),(e=Dr(e/2))&&(t+=t)}while(e);return r}function xi(t,e){return oa(ta(t,e,Tl),t+"")}function Bi(t){return Bn(pl(t))}function Ci(t,e){var r=pl(t);return la(r,Rn(e,0,r.length))}function Ei(t,e,r,i){if(!Ps(t))return t;for(var o=-1,a=(e=Wi(e,t)).length,s=a-1,l=t;null!=l&&++oi?0:i+e),(r=r>i?i:r)<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var o=$t(i);++n>>1,a=t[o];null!==a&&!Ls(a)&&(r?a<=e:a=i){var c=e?null:xo(t);if(c)return Er(c);s=!1,o=gr,u=new wn}else u=e?[]:l;t:for(;++n=i?t:Ti(t,e,r)}var Xi=Rr||function(t){return Me.clearTimeout(t)};function $i(t,e){if(e)return t.slice();var r=t.length,n=Te?Te(r):new t.constructor(r);return t.copy(n),n}function Ji(t){var e=new t.constructor(t.byteLength);return new Se(e).set(new Se(t)),e}function Ki(t,e){var r=e?Ji(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}function Qi(t,e){if(t!==e){var r=t!==n,i=null===t,o=t==t,a=Ls(t),s=e!==n,l=null===e,u=e==e,c=Ls(e);if(!l&&!c&&!a&&t>e||a&&s&&u&&!l&&!c||i&&s&&u||!r&&u||!o)return 1;if(!i&&!a&&!c&&t1?r[o-1]:n,s=o>2?r[2]:n;for(a=t.length>3&&"function"==typeof a?(o--,a):n,s&&Zo(r[0],r[1],s)&&(a=o<3?n:a,o=1),e=ee(e);++i-1?o[a?e[s]:s]:n}}function ho(t){return To(function(e){var r=e.length,i=r,o=gn.prototype.thru;for(t&&e.reverse();i--;){var s=e[i];if("function"!=typeof s)throw new ie(a);if(o&&!l&&"wrapper"==Ro(s))var l=new gn([],!0)}for(i=l?i:r;++i1&&_.reverse(),f&&ul))return!1;var c=a.get(t);if(c&&a.get(e))return c==e;var f=-1,h=!0,m=r&d?new wn:n;for(a.set(t,e),a.set(e,t);++f-1&&t%1==0&&t1?"& ":"")+e[n],e=e.join(r>2?", ":" "),t.replace(Lt,"{\n/* [wrapped with "+e+"] */\n")}(n,function(t,e){return Ge(D,function(r){var n="_."+r[0];e&r[1]&&!Xe(t,n)&&t.push(n)}),t.sort()}(function(t){var e=t.match(Ft);return e?e[1].split(Ot):[]}(n),r)))}function sa(t){var e=0,r=0;return function(){var i=Wr(),o=j-(i-r);if(r=i,o>0){if(++e>=P)return arguments[0]}else e=0;return t.apply(n,arguments)}}function la(t,e){var r=-1,i=t.length,o=i-1;for(e=e===n?i:e;++r1?t[e-1]:n;return Aa(t,r="function"==typeof r?(t.pop(),r):n)});function Na(t){var e=pn(t);return e.__chain__=!0,e}function Ua(t,e){return e(t)}var za=To(function(t){var e=t.length,r=e?t[0]:0,i=this.__wrapped__,o=function(e){return In(e,t)};return!(e>1||this.__actions__.length)&&i instanceof vn&&Wo(r)?((i=i.slice(r,+r+(e?1:0))).__actions__.push({func:Ua,args:[o],thisArg:n}),new gn(i,this.__chain__).thru(function(t){return e&&!t.length&&t.push(n),t})):this.thru(o)});var qa=io(function(t,e,r){ce.call(t,r)?++t[r]:An(t,r,1)});var Va=fo(ga),Ha=fo(va);function Ga(t,e){return(vs(t)?Ge:Nn)(t,Fo(e,3))}function Wa(t,e){return(vs(t)?We:Un)(t,Fo(e,3))}var Za=io(function(t,e,r){ce.call(t,r)?t[r].push(e):An(t,r,[e])});var Ya=xi(function(t,e,r){var n=-1,i="function"==typeof e,o=ys(t)?$t(t.length):[];return Nn(t,function(t){o[++n]=i?Ve(e,t,r):ni(t,e,r)}),o}),Xa=io(function(t,e,r){An(t,r,e)});function $a(t,e){return(vs(t)?Je:hi)(t,Fo(e,3))}var Ja=io(function(t,e,r){t[r?0:1].push(e)},function(){return[[],[]]});var Ka=xi(function(t,e){if(null==t)return[];var r=e.length;return r>1&&Zo(t,e[0],e[1])?e=[]:r>2&&Zo(e[0],e[1],e[2])&&(e=[e[0]]),vi(t,Hn(e,1),[])}),Qa=Lr||function(){return Me.Date.now()};function ts(t,e,r){return e=r?n:e,e=t&&null==e?t.length:e,Co(t,k,n,n,n,n,e)}function es(t,e){var r;if("function"!=typeof e)throw new ie(a);return t=zs(t),function(){return--t>0&&(r=e.apply(this,arguments)),t<=1&&(e=n),r}}var rs=xi(function(t,e,r){var n=m;if(r.length){var i=Cr(r,Lo(rs));n|=b}return Co(t,n,e,r,i)}),ns=xi(function(t,e,r){var n=m|g;if(r.length){var i=Cr(r,Lo(ns));n|=b}return Co(e,n,t,r,i)});function is(t,e,r){var i,o,s,l,u,c,f=0,h=!1,p=!1,d=!0;if("function"!=typeof t)throw new ie(a);function m(e){var r=i,a=o;return i=o=n,f=e,l=t.apply(a,r)}function g(t){var r=t-c;return c===n||r>=e||r<0||p&&t-f>=s}function v(){var t=Qa();if(g(t))return _(t);u=ia(v,function(t){var r=e-(t-c);return p?Gr(r,s-(t-f)):r}(t))}function _(t){return u=n,d&&i?m(t):(i=o=n,l)}function y(){var t=Qa(),r=g(t);if(i=arguments,o=this,c=t,r){if(u===n)return function(t){return f=t,u=ia(v,e),h?m(t):l}(c);if(p)return u=ia(v,e),m(c)}return u===n&&(u=ia(v,e)),l}return e=Vs(e)||0,Ps(r)&&(h=!!r.leading,s=(p="maxWait"in r)?Hr(Vs(r.maxWait)||0,e):s,d="trailing"in r?!!r.trailing:d),y.cancel=function(){u!==n&&Xi(u),f=0,i=c=o=u=n},y.flush=function(){return u===n?l:_(Qa())},y}var os=xi(function(t,e){return On(t,1,e)}),as=xi(function(t,e,r){return On(t,Vs(e)||0,r)});function ss(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new ie(a);var r=function(){var n=arguments,i=e?e.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var a=t.apply(this,n);return r.cache=o.set(i,a)||o,a};return r.cache=new(ss.Cache||bn),r}function ls(t){if("function"!=typeof t)throw new ie(a);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ss.Cache=bn;var us=Zi(function(t,e){var r=(e=1==e.length&&vs(e[0])?Je(e[0],dr(Fo())):Je(Hn(e,1),dr(Fo()))).length;return xi(function(n){for(var i=-1,o=Gr(n.length,r);++i=e}),gs=ii(function(){return arguments}())?ii:function(t){return js(t)&&ce.call(t,"callee")&&!Le.call(t,"callee")},vs=$t.isArray,_s=Oe?dr(Oe):function(t){return js(t)&&Kn(t)==at};function ys(t){return null!=t&&Es(t.length)&&!Bs(t)}function bs(t){return js(t)&&ys(t)}var ws=Ur||Vl,ks=De?dr(De):function(t){return js(t)&&Kn(t)==V};function xs(t){if(!js(t))return!1;var e=Kn(t);return e==G||e==H||"string"==typeof t.message&&"string"==typeof t.name&&!Ms(t)}function Bs(t){if(!Ps(t))return!1;var e=Kn(t);return e==W||e==Z||e==z||e==K}function Cs(t){return"number"==typeof t&&t==zs(t)}function Es(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=A}function Ps(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function js(t){return null!=t&&"object"==typeof t}var Ss=Ne?dr(Ne):function(t){return js(t)&&qo(t)==Y};function Ts(t){return"number"==typeof t||js(t)&&Kn(t)==X}function Ms(t){if(!js(t)||Kn(t)!=J)return!1;var e=Ae(t);if(null===e)return!0;var r=ce.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&ue.call(r)==de}var As=Ue?dr(Ue):function(t){return js(t)&&Kn(t)==Q};var Is=ze?dr(ze):function(t){return js(t)&&qo(t)==tt};function Rs(t){return"string"==typeof t||!vs(t)&&js(t)&&Kn(t)==et}function Ls(t){return"symbol"==typeof t||js(t)&&Kn(t)==rt}var Fs=qe?dr(qe):function(t){return js(t)&&Es(t.length)&&!!Be[Kn(t)]};var Os=bo(fi),Ds=bo(function(t,e){return t<=e});function Ns(t){if(!t)return[];if(ys(t))return Rs(t)?Sr(t):ro(t);if(cr&&t[cr])return function(t){for(var e,r=[];!(e=t.next()).done;)r.push(e.value);return r}(t[cr]());var e=qo(t);return(e==Y?xr:e==tt?Er:pl)(t)}function Us(t){return t?(t=Vs(t))===M||t===-M?(t<0?-1:1)*I:t==t?t:0:0===t?t:0}function zs(t){var e=Us(t),r=e%1;return e==e?r?e-r:e:0}function qs(t){return t?Rn(zs(t),0,L):0}function Vs(t){if("number"==typeof t)return t;if(Ls(t))return R;if(Ps(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ps(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(At,"");var r=Vt.test(t);return r||Gt.test(t)?je(t.slice(2),r?2:8):qt.test(t)?R:+t}function Hs(t){return no(t,ol(t))}function Gs(t){return null==t?"":Fi(t)}var Ws=oo(function(t,e){if(Jo(e)||ys(e))no(e,il(e),t);else for(var r in e)ce.call(e,r)&&jn(t,r,e[r])}),Zs=oo(function(t,e){no(e,ol(e),t)}),Ys=oo(function(t,e,r,n){no(e,ol(e),t,n)}),Xs=oo(function(t,e,r,n){no(e,il(e),t,n)}),$s=To(In);var Js=xi(function(t,e){t=ee(t);var r=-1,i=e.length,o=i>2?e[2]:n;for(o&&Zo(e[0],e[1],o)&&(i=1);++r1),e}),no(t,Ao(t),r),n&&(r=Ln(r,c|f|h,jo));for(var i=e.length;i--;)Di(r,e[i]);return r});var ul=To(function(t,e){return null==t?{}:function(t,e){return _i(t,e,function(e,r){return tl(t,r)})}(t,e)});function cl(t,e){if(null==t)return{};var r=Je(Ao(t),function(t){return[t]});return e=Fo(e),_i(t,r,function(t,r){return e(t,r[0])})}var fl=Bo(il),hl=Bo(ol);function pl(t){return null==t?[]:mr(t,il(t))}var dl=uo(function(t,e,r){return e=e.toLowerCase(),t+(r?ml(e):e)});function ml(t){return xl(Gs(t).toLowerCase())}function gl(t){return(t=Gs(t))&&t.replace(Zt,yr).replace(ve,"")}var vl=uo(function(t,e,r){return t+(r?"-":"")+e.toLowerCase()}),_l=uo(function(t,e,r){return t+(r?" ":"")+e.toLowerCase()}),yl=lo("toLowerCase");var bl=uo(function(t,e,r){return t+(r?"_":"")+e.toLowerCase()});var wl=uo(function(t,e,r){return t+(r?" ":"")+xl(e)});var kl=uo(function(t,e,r){return t+(r?" ":"")+e.toUpperCase()}),xl=lo("toUpperCase");function Bl(t,e,r){return t=Gs(t),(e=r?n:e)===n?function(t){return we.test(t)}(t)?function(t){return t.match(ye)||[]}(t):function(t){return t.match(Dt)||[]}(t):t.match(e)||[]}var Cl=xi(function(t,e){try{return Ve(t,n,e)}catch(t){return xs(t)?t:new Kt(t)}}),El=To(function(t,e){return Ge(e,function(e){e=ca(e),An(t,e,rs(t[e],t))}),t});function Pl(t){return function(){return t}}var jl=ho(),Sl=ho(!0);function Tl(t){return t}function Ml(t){return li("function"==typeof t?t:Ln(t,c))}var Al=xi(function(t,e){return function(r){return ni(r,t,e)}}),Il=xi(function(t,e){return function(r){return ni(t,r,e)}});function Rl(t,e,r){var n=il(e),i=Xn(e,n);null!=r||Ps(e)&&(i.length||!n.length)||(r=e,e=t,t=this,i=Xn(e,il(e)));var o=!(Ps(r)&&"chain"in r&&!r.chain),a=Bs(t);return Ge(i,function(r){var n=e[r];t[r]=n,a&&(t.prototype[r]=function(){var e=this.__chain__;if(o||e){var r=t(this.__wrapped__);return(r.__actions__=ro(this.__actions__)).push({func:n,args:arguments,thisArg:t}),r.__chain__=e,r}return n.apply(t,Ke([this.value()],arguments))})}),t}function Ll(){}var Fl=vo(Je),Ol=vo(Ze),Dl=vo(er);function Nl(t){return Yo(t)?ur(ca(t)):function(t){return function(e){return $n(e,t)}}(t)}var Ul=yo(),zl=yo(!0);function ql(){return[]}function Vl(){return!1}var Hl=go(function(t,e){return t+e},0),Gl=ko("ceil"),Wl=go(function(t,e){return t/e},1),Zl=ko("floor");var Yl,Xl=go(function(t,e){return t*e},1),$l=ko("round"),Jl=go(function(t,e){return t-e},0);return pn.after=function(t,e){if("function"!=typeof e)throw new ie(a);return t=zs(t),function(){if(--t<1)return e.apply(this,arguments)}},pn.ary=ts,pn.assign=Ws,pn.assignIn=Zs,pn.assignInWith=Ys,pn.assignWith=Xs,pn.at=$s,pn.before=es,pn.bind=rs,pn.bindAll=El,pn.bindKey=ns,pn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return vs(t)?t:[t]},pn.chain=Na,pn.chunk=function(t,e,r){e=(r?Zo(t,e,r):e===n)?1:Hr(zs(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var o=0,a=0,s=$t(Or(i/e));oo?0:o+r),(i=i===n||i>o?o:zs(i))<0&&(i+=o),i=r>i?0:qs(i);r>>0)?(t=Gs(t))&&("string"==typeof e||null!=e&&!As(e))&&!(e=Fi(e))&&kr(t)?Yi(Sr(t),0,r):t.split(e,r):[]},pn.spread=function(t,e){if("function"!=typeof t)throw new ie(a);return e=null==e?0:Hr(zs(e),0),xi(function(r){var n=r[e],i=Yi(r,0,e);return n&&Ke(i,n),Ve(t,this,i)})},pn.tail=function(t){var e=null==t?0:t.length;return e?Ti(t,1,e):[]},pn.take=function(t,e,r){return t&&t.length?Ti(t,0,(e=r||e===n?1:zs(e))<0?0:e):[]},pn.takeRight=function(t,e,r){var i=null==t?0:t.length;return i?Ti(t,(e=i-(e=r||e===n?1:zs(e)))<0?0:e,i):[]},pn.takeRightWhile=function(t,e){return t&&t.length?Ui(t,Fo(e,3),!1,!0):[]},pn.takeWhile=function(t,e){return t&&t.length?Ui(t,Fo(e,3)):[]},pn.tap=function(t,e){return e(t),t},pn.throttle=function(t,e,r){var n=!0,i=!0;if("function"!=typeof t)throw new ie(a);return Ps(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),is(t,e,{leading:n,maxWait:e,trailing:i})},pn.thru=Ua,pn.toArray=Ns,pn.toPairs=fl,pn.toPairsIn=hl,pn.toPath=function(t){return vs(t)?Je(t,ca):Ls(t)?[t]:ro(ua(Gs(t)))},pn.toPlainObject=Hs,pn.transform=function(t,e,r){var n=vs(t),i=n||ws(t)||Fs(t);if(e=Fo(e,4),null==r){var o=t&&t.constructor;r=i?n?new o:[]:Ps(t)&&Bs(o)?dn(Ae(t)):{}}return(i?Ge:Zn)(t,function(t,n,i){return e(r,t,n,i)}),r},pn.unary=function(t){return ts(t,1)},pn.union=ja,pn.unionBy=Sa,pn.unionWith=Ta,pn.uniq=function(t){return t&&t.length?Oi(t):[]},pn.uniqBy=function(t,e){return t&&t.length?Oi(t,Fo(e,2)):[]},pn.uniqWith=function(t,e){return e="function"==typeof e?e:n,t&&t.length?Oi(t,n,e):[]},pn.unset=function(t,e){return null==t||Di(t,e)},pn.unzip=Ma,pn.unzipWith=Aa,pn.update=function(t,e,r){return null==t?t:Ni(t,e,Gi(r))},pn.updateWith=function(t,e,r,i){return i="function"==typeof i?i:n,null==t?t:Ni(t,e,Gi(r),i)},pn.values=pl,pn.valuesIn=function(t){return null==t?[]:mr(t,ol(t))},pn.without=Ia,pn.words=Bl,pn.wrap=function(t,e){return cs(Gi(e),t)},pn.xor=Ra,pn.xorBy=La,pn.xorWith=Fa,pn.zip=Oa,pn.zipObject=function(t,e){return Vi(t||[],e||[],jn)},pn.zipObjectDeep=function(t,e){return Vi(t||[],e||[],Ei)},pn.zipWith=Da,pn.entries=fl,pn.entriesIn=hl,pn.extend=Zs,pn.extendWith=Ys,Rl(pn,pn),pn.add=Hl,pn.attempt=Cl,pn.camelCase=dl,pn.capitalize=ml,pn.ceil=Gl,pn.clamp=function(t,e,r){return r===n&&(r=e,e=n),r!==n&&(r=(r=Vs(r))==r?r:0),e!==n&&(e=(e=Vs(e))==e?e:0),Rn(Vs(t),e,r)},pn.clone=function(t){return Ln(t,h)},pn.cloneDeep=function(t){return Ln(t,c|h)},pn.cloneDeepWith=function(t,e){return Ln(t,c|h,e="function"==typeof e?e:n)},pn.cloneWith=function(t,e){return Ln(t,h,e="function"==typeof e?e:n)},pn.conformsTo=function(t,e){return null==e||Fn(t,e,il(e))},pn.deburr=gl,pn.defaultTo=function(t,e){return null==t||t!=t?e:t},pn.divide=Wl,pn.endsWith=function(t,e,r){t=Gs(t),e=Fi(e);var i=t.length,o=r=r===n?i:Rn(zs(r),0,i);return(r-=e.length)>=0&&t.slice(r,o)==e},pn.eq=ps,pn.escape=function(t){return(t=Gs(t))&&xt.test(t)?t.replace(wt,br):t},pn.escapeRegExp=function(t){return(t=Gs(t))&&Mt.test(t)?t.replace(Tt,"\\$&"):t},pn.every=function(t,e,r){var i=vs(t)?Ze:zn;return r&&Zo(t,e,r)&&(e=n),i(t,Fo(e,3))},pn.find=Va,pn.findIndex=ga,pn.findKey=function(t,e){return nr(t,Fo(e,3),Zn)},pn.findLast=Ha,pn.findLastIndex=va,pn.findLastKey=function(t,e){return nr(t,Fo(e,3),Yn)},pn.floor=Zl,pn.forEach=Ga,pn.forEachRight=Wa,pn.forIn=function(t,e){return null==t?t:Gn(t,Fo(e,3),ol)},pn.forInRight=function(t,e){return null==t?t:Wn(t,Fo(e,3),ol)},pn.forOwn=function(t,e){return t&&Zn(t,Fo(e,3))},pn.forOwnRight=function(t,e){return t&&Yn(t,Fo(e,3))},pn.get=Qs,pn.gt=ds,pn.gte=ms,pn.has=function(t,e){return null!=t&&Vo(t,e,ti)},pn.hasIn=tl,pn.head=ya,pn.identity=Tl,pn.includes=function(t,e,r,n){t=ys(t)?t:pl(t),r=r&&!n?zs(r):0;var i=t.length;return r<0&&(r=Hr(i+r,0)),Rs(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&or(t,e,r)>-1},pn.indexOf=function(t,e,r){var n=null==t?0:t.length;if(!n)return-1;var i=null==r?0:zs(r);return i<0&&(i=Hr(n+i,0)),or(t,e,i)},pn.inRange=function(t,e,r){return e=Us(e),r===n?(r=e,e=0):r=Us(r),function(t,e,r){return t>=Gr(e,r)&&t=-A&&t<=A},pn.isSet=Is,pn.isString=Rs,pn.isSymbol=Ls,pn.isTypedArray=Fs,pn.isUndefined=function(t){return t===n},pn.isWeakMap=function(t){return js(t)&&qo(t)==it},pn.isWeakSet=function(t){return js(t)&&Kn(t)==ot},pn.join=function(t,e){return null==t?"":qr.call(t,e)},pn.kebabCase=vl,pn.last=xa,pn.lastIndexOf=function(t,e,r){var i=null==t?0:t.length;if(!i)return-1;var o=i;return r!==n&&(o=(o=zs(r))<0?Hr(i+o,0):Gr(o,i-1)),e==e?function(t,e,r){for(var n=r+1;n--;)if(t[n]===e)return n;return n}(t,e,o):ir(t,sr,o,!0)},pn.lowerCase=_l,pn.lowerFirst=yl,pn.lt=Os,pn.lte=Ds,pn.max=function(t){return t&&t.length?qn(t,Tl,Qn):n},pn.maxBy=function(t,e){return t&&t.length?qn(t,Fo(e,2),Qn):n},pn.mean=function(t){return lr(t,Tl)},pn.meanBy=function(t,e){return lr(t,Fo(e,2))},pn.min=function(t){return t&&t.length?qn(t,Tl,fi):n},pn.minBy=function(t,e){return t&&t.length?qn(t,Fo(e,2),fi):n},pn.stubArray=ql,pn.stubFalse=Vl,pn.stubObject=function(){return{}},pn.stubString=function(){return""},pn.stubTrue=function(){return!0},pn.multiply=Xl,pn.nth=function(t,e){return t&&t.length?gi(t,zs(e)):n},pn.noConflict=function(){return Me._===this&&(Me._=me),this},pn.noop=Ll,pn.now=Qa,pn.pad=function(t,e,r){t=Gs(t);var n=(e=zs(e))?jr(t):0;if(!e||n>=e)return t;var i=(e-n)/2;return _o(Dr(i),r)+t+_o(Or(i),r)},pn.padEnd=function(t,e,r){t=Gs(t);var n=(e=zs(e))?jr(t):0;return e&&ne){var i=t;t=e,e=i}if(r||t%1||e%1){var o=Yr();return Gr(t+o*(e-t+Pe("1e-"+((o+"").length-1))),e)}return wi(t,e)},pn.reduce=function(t,e,r){var n=vs(t)?Qe:fr,i=arguments.length<3;return n(t,Fo(e,4),r,i,Nn)},pn.reduceRight=function(t,e,r){var n=vs(t)?tr:fr,i=arguments.length<3;return n(t,Fo(e,4),r,i,Un)},pn.repeat=function(t,e,r){return e=(r?Zo(t,e,r):e===n)?1:zs(e),ki(Gs(t),e)},pn.replace=function(){var t=arguments,e=Gs(t[0]);return t.length<3?e:e.replace(t[1],t[2])},pn.result=function(t,e,r){var i=-1,o=(e=Wi(e,t)).length;for(o||(o=1,t=n);++iA)return[];var r=L,n=Gr(t,L);e=Fo(e),t-=L;for(var i=pr(n,e);++r=a)return t;var l=r-jr(i);if(l<1)return i;var u=s?Yi(s,0,l).join(""):t.slice(0,l);if(o===n)return u+i;if(s&&(l+=u.length-l),As(o)){if(t.slice(l).search(o)){var c,f=u;for(o.global||(o=re(o.source,Gs(zt.exec(o))+"g")),o.lastIndex=0;c=o.exec(f);)var h=c.index;u=u.slice(0,h===n?l:h)}}else if(t.indexOf(Fi(o),l)!=l){var p=u.lastIndexOf(o);p>-1&&(u=u.slice(0,p))}return u+i},pn.unescape=function(t){return(t=Gs(t))&&kt.test(t)?t.replace(bt,Tr):t},pn.uniqueId=function(t){var e=++fe;return Gs(t)+e},pn.upperCase=kl,pn.upperFirst=xl,pn.each=Ga,pn.eachRight=Wa,pn.first=ya,Rl(pn,(Yl={},Zn(pn,function(t,e){ce.call(pn.prototype,e)||(Yl[e]=t)}),Yl),{chain:!1}),pn.VERSION="4.17.11",Ge(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){pn[t].placeholder=pn}),Ge(["drop","take"],function(t,e){vn.prototype[t]=function(r){r=r===n?1:Hr(zs(r),0);var i=this.__filtered__&&!e?new vn(this):this.clone();return i.__filtered__?i.__takeCount__=Gr(r,i.__takeCount__):i.__views__.push({size:Gr(r,L),type:t+(i.__dir__<0?"Right":"")}),i},vn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Ge(["filter","map","takeWhile"],function(t,e){var r=e+1,n=r==S||3==r;vn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Fo(t,3),type:r}),e.__filtered__=e.__filtered__||n,e}}),Ge(["head","last"],function(t,e){var r="take"+(e?"Right":"");vn.prototype[t]=function(){return this[r](1).value()[0]}}),Ge(["initial","tail"],function(t,e){var r="drop"+(e?"":"Right");vn.prototype[t]=function(){return this.__filtered__?new vn(this):this[r](1)}}),vn.prototype.compact=function(){return this.filter(Tl)},vn.prototype.find=function(t){return this.filter(t).head()},vn.prototype.findLast=function(t){return this.reverse().find(t)},vn.prototype.invokeMap=xi(function(t,e){return"function"==typeof t?new vn(this):this.map(function(r){return ni(r,t,e)})}),vn.prototype.reject=function(t){return this.filter(ls(Fo(t)))},vn.prototype.slice=function(t,e){t=zs(t);var r=this;return r.__filtered__&&(t>0||e<0)?new vn(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),e!==n&&(r=(e=zs(e))<0?r.dropRight(-e):r.take(e-t)),r)},vn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},vn.prototype.toArray=function(){return this.take(L)},Zn(vn.prototype,function(t,e){var r=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),o=pn[i?"take"+("last"==e?"Right":""):e],a=i||/^find/.test(e);o&&(pn.prototype[e]=function(){var e=this.__wrapped__,s=i?[1]:arguments,l=e instanceof vn,u=s[0],c=l||vs(e),f=function(t){var e=o.apply(pn,Ke([t],s));return i&&h?e[0]:e};c&&r&&"function"==typeof u&&1!=u.length&&(l=c=!1);var h=this.__chain__,p=!!this.__actions__.length,d=a&&!h,m=l&&!p;if(!a&&c){e=m?e:new vn(this);var g=t.apply(e,s);return g.__actions__.push({func:Ua,args:[f],thisArg:n}),new gn(g,h)}return d&&m?t.apply(this,s):(g=this.thru(f),d?i?g.value()[0]:g.value():g)})}),Ge(["pop","push","shift","sort","splice","unshift"],function(t){var e=oe[t],r=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",n=/^(?:pop|shift)$/.test(t);pn.prototype[t]=function(){var t=arguments;if(n&&!this.__chain__){var i=this.value();return e.apply(vs(i)?i:[],t)}return this[r](function(r){return e.apply(vs(r)?r:[],t)})}}),Zn(vn.prototype,function(t,e){var r=pn[e];if(r){var n=r.name+"";(nn[n]||(nn[n]=[])).push({name:e,func:r})}}),nn[po(n,g).name]=[{name:"wrapper",func:n}],vn.prototype.clone=function(){var t=new vn(this.__wrapped__);return t.__actions__=ro(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=ro(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=ro(this.__views__),t},vn.prototype.reverse=function(){if(this.__filtered__){var t=new vn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},vn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,r=vs(t),n=e<0,i=r?t.length:0,o=function(t,e,r){for(var n=-1,i=r.length;++n=this.__values__.length;return{done:t,value:t?n:this.__values__[this.__index__++]}},pn.prototype.plant=function(t){for(var e,r=this;r instanceof mn;){var i=ha(r);i.__index__=0,i.__values__=n,e?o.__wrapped__=i:e=i;var o=i;r=r.__wrapped__}return o.__wrapped__=t,e},pn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof vn){var e=t;return this.__actions__.length&&(e=new vn(this)),(e=e.reverse()).__actions__.push({func:Ua,args:[Pa],thisArg:n}),new gn(e,this.__chain__)}return this.thru(Pa)},pn.prototype.toJSON=pn.prototype.valueOf=pn.prototype.value=function(){return zi(this.__wrapped__,this.__actions__)},pn.prototype.first=pn.prototype.head,cr&&(pn.prototype[cr]=function(){return this}),pn}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Me._=Mr,define(function(){return Mr})):Ie?((Ie.exports=Mr)._=Mr,Ae._=Mr):Me._=Mr}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],77:[function(t,e,r){(function(r){t("path");var n=t("fs");function i(){this.types=Object.create(null),this.extensions=Object.create(null)}i.prototype.define=function(t){for(var e in t){for(var n=t[e],i=0;i=0;--s)if(h[s]=f,f*=u[s],p=Math.max(p,a.scratchMemory(u[s])),e.shape[s]!==r.shape[s])throw new Error("Shape mismatch, real and imaginary arrays must have same size");var d,m=4*f+p;d="array"===e.dtype||"float64"===e.dtype||"custom"===e.dtype?o.mallocDouble(m):o.mallocFloat(m);var g,v,_,y,b=i(d,u.slice(0),h,0),w=i(d,u.slice(0),h.slice(0),f),k=i(d,u.slice(0),h.slice(0),2*f),x=i(d,u.slice(0),h.slice(0),3*f),B=4*f;for(n.assign(b,e),n.assign(w,r),s=c-1;s>=0&&(a(t,f/u[s],u[s],d,b.offset,w.offset,B),0!==s);--s){for(v=1,_=k.stride,y=x.stride,l=s-1;l=0;--l)y[l]=_[l]=v,v*=u[l];n.assign(k,b),n.assign(x,w),g=b,b=k,k=g,g=w,w=x,x=g}n.assign(e,b),n.assign(r,w),o.free(d)}},{"./lib/fft-matrix.js":80,ndarray:85,"ndarray-ops":82,"typedarray-pool":174}],80:[function(t,e,r){var n=t("bit-twiddle");function i(t,e,r,i,o,a){var s,l,u,c,f,h,p,d,m,g,v,_,y,b,w,k,x,B,C,E,P,j,S,T;for(t|=0,e|=0,o|=0,a|=0,s=r|=0,l=n.log2(s),B=0;B>1,f=0,u=0;u>=1;f+=h}for(v=-1,_=0,g=1,d=0;d>",rrshift:">>>"};!function(){for(var t in s){var e=s[t];r[t]=a({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+e+"c"},funcName:t}),r[t+"eq"]=a({args:["array","array"],body:{args:["a","b"],body:"a"+e+"=b"},rvalue:!0,funcName:t+"eq"}),r[t+"s"]=a({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+e+"s"},funcName:t+"s"}),r[t+"seq"]=a({args:["array","scalar"],body:{args:["a","s"],body:"a"+e+"=s"},rvalue:!0,funcName:t+"seq"})}}();var l={not:"!",bnot:"~",neg:"-",recip:"1.0/"};!function(){for(var t in l){var e=l[t];r[t]=a({args:["array","array"],body:{args:["a","b"],body:"a="+e+"b"},funcName:t}),r[t+"eq"]=a({args:["array"],body:{args:["a"],body:"a="+e+"a"},rvalue:!0,count:2,funcName:t+"eq"})}}();var u={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};!function(){for(var t in u){var e=u[t];r[t]=a({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+e+"c"},funcName:t}),r[t+"s"]=a({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+e+"s"},funcName:t+"s"}),r[t+"eq"]=a({args:["array","array"],body:{args:["a","b"],body:"a=a"+e+"b"},rvalue:!0,count:2,funcName:t+"eq"}),r[t+"seq"]=a({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+e+"s"},rvalue:!0,count:2,funcName:t+"seq"})}}();var c=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];!function(){for(var t=0;tthis_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"}),r.norm1=n({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"}),r.sup=n({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:[]}}),r.inf=n({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:[]}}),r.random=a({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"}),r.assign=a({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"}),r.assigns=a({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"}),r.equals=n({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":15}],83:[function(t,e,r){"use strict";var n=t("ndarray"),i=t("./doConvert.js");e.exports=function(t,e){for(var r=[],o=t,a=1;Array.isArray(o);)r.push(o.length),a*=o.length,o=o[0];return 0===r.length?n():(e||(e=n(new Float64Array(a),r)),i(e,t),e)}},{"./doConvert.js":84,ndarray:85}],84:[function(t,e,r){e.exports=t("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":15}],85:[function(t,e,r){var n=t("iota-array"),i=t("is-buffer"),o="undefined"!=typeof Float64Array;function a(t,e){return t[0]-e[0]}function s(){var t,e=this.stride,r=new Array(e.length);for(t=0;tMath.abs(this.stride[1]))?[1,0]:[0,1]}})"):3===e&&o.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];}}})")):o.push("ORDER})")),o.push("proto.set=function "+r+"_set("+l.join(",")+",v){"),i?o.push("return this.data.set("+c+",v)}"):o.push("return this.data["+c+"]=v}"),o.push("proto.get=function "+r+"_get("+l.join(",")+"){"),i?o.push("return this.data.get("+c+")}"):o.push("return this.data["+c+"]}"),o.push("proto.index=function "+r+"_index(",l.join(),"){return "+c+"}"),o.push("proto.hi=function "+r+"_hi("+l.join(",")+"){return new "+r+"(this.data,"+a.map(function(t){return["(typeof i",t,"!=='number'||i",t,"<0)?this.shape[",t,"]:i",t,"|0"].join("")}).join(",")+","+a.map(function(t){return"this.stride["+t+"]"}).join(",")+",this.offset)}");var p=a.map(function(t){return"a"+t+"=this.shape["+t+"]"}),d=a.map(function(t){return"c"+t+"=this.stride["+t+"]"});o.push("proto.lo=function "+r+"_lo("+l.join(",")+"){var b=this.offset,d=0,"+p.join(",")+","+d.join(","));for(var m=0;m=0){d=i"+m+"|0;b+=c"+m+"*d;a"+m+"-=d}");o.push("return new "+r+"(this.data,"+a.map(function(t){return"a"+t}).join(",")+","+a.map(function(t){return"c"+t}).join(",")+",b)}"),o.push("proto.step=function "+r+"_step("+l.join(",")+"){var "+a.map(function(t){return"a"+t+"=this.shape["+t+"]"}).join(",")+","+a.map(function(t){return"b"+t+"=this.stride["+t+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(m=0;m=0){c=(c+this.stride["+m+"]*i"+m+")|0}else{a.push(this.shape["+m+"]);b.push(this.stride["+m+"])}");return o.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),o.push("return function construct_"+r+"(data,shape,stride,offset){return new "+r+"(data,"+a.map(function(t){return"shape["+t+"]"}).join(",")+","+a.map(function(t){return"stride["+t+"]"}).join(",")+",offset)}"),new Function("CTOR_LIST","ORDER",o.join("\n"))(u[t],s)}var u={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],buffer:[],generic:[]};e.exports=function(t,e,r,n){if(void 0===t)return(0,u.array[0])([]);"number"==typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var a=e.length;if(void 0===r){r=new Array(a);for(var s=a-1,c=1;s>=0;--s)r[s]=c,c*=e[s]}if(void 0===n)for(n=0,s=0;s>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1}},{}],87:[function(t,e,r){(function(r,n){"use strict";var i=t("util"),o=t("stream"),a=e.exports=function(){o.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};i.inherits(a,o),a.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),r.nextTick(function(){this._process(),this._paused&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))},a.prototype.write=function(t,e){return this.writable?(n.isBuffer(t)||(t=new n(t,e||this._encoding)),this._buffers.push(t),this._buffered+=t.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)},a.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(0==this._buffers.length?this._end():(this._buffers.push(null),this._process()))},a.prototype.destroySoon=a.prototype.end,a.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("There are some read requests waitng on finished stream")),this.destroy()},a.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},a.prototype._process=function(){for(;this._buffered>0&&this._reads&&this._reads.length>0;){var t=this._reads[0];if(t.allowLess){this._reads.shift(),(o=this._buffers[0]).length>t.length?(this._buffered-=t.length,this._buffers[0]=o.slice(t.length),t.func.call(this,o.slice(0,t.length))):(this._buffered-=o.length,this._buffers.shift(),t.func.call(this,o))}else{if(!(this._buffered>=t.length))break;this._reads.shift();for(var e=0,r=0,i=new n(t.length);e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,i)}}this._buffers&&this._buffers.length>0&&null==this._buffers[0]&&this._end()}}).call(this,t("_process"),t("buffer").Buffer)},{_process:118,buffer:48,stream:169,util:180}],88:[function(t,e,r){"use strict";e.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,COLOR_PALETTE:1,COLOR_COLOR:2,COLOR_ALPHA:4}},{}],89:[function(t,e,r){"use strict";var n=t("util"),i=t("stream"),o=e.exports=function(){i.call(this),this._crc=-1,this.writable=!0};n.inherits(o,i),o.prototype.write=function(t){for(var e=0;e>>8;return!0},o.prototype.end=function(t){t&&this.write(t),this.emit("crc",this.crc32())},o.prototype.crc32=function(){return-1^this._crc},o.crc32=function(t){for(var e=-1,r=0;r>>8;return-1^e};for(var a=[],s=0;s<256;s++){for(var l=s,u=0;u<8;u++)1&l?l=3988292384^l>>>1:l>>>=1;a[s]=l}},{stream:169,util:180}],90:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=(t("zlib"),t("./chunkstream")),o=e.exports=function(t,e,r,n,o){i.call(this),this._width=t,this._height=e,this._Bpp=r,this._data=n,this._options=o,this._line=0,"filterType"in o&&-1!=o.filterType?"number"==typeof o.filterType&&(o.filterType=[o.filterType]):o.filterType=[0,1,2,3,4],this._filters={0:this._filterNone.bind(this),1:this._filterSub.bind(this),2:this._filterUp.bind(this),3:this._filterAvg.bind(this),4:this._filterPaeth.bind(this)},this.read(this._width*r+1,this._reverseFilterLine.bind(this))};n.inherits(o,i);var a={1:{0:0,1:0,2:0,3:255},2:{0:0,1:0,2:0,3:1},3:{0:0,1:1,2:2,3:255},4:{0:0,1:1,2:2,3:3}};o.prototype._reverseFilterLine=function(t){var e=this._data,r=this._width<<2,n=this._line*r,i=t[0];if(0==i)for(var o=0;o0?e[l+c-4]:0;e[l+c]=255!=f?t[u+f]+h:255}else if(2==i)for(o=0;o0?e[l-r+c]:0;e[l+c]=255!=f?t[u+f]+p:255}else if(3==i)for(o=0;o0?e[l+c-4]:0,p=this._line>0?e[l-r+c]:0;var d=Math.floor((h+p)/2);e[l+c]=255!=f?t[u+f]+d:255}else if(4==i)for(o=0;o0?e[l+c-4]:0,p=this._line>0?e[l-r+c]:0;var m=o>0&&this._line>0?e[l-r+c-4]:0;d=s(h,p,m);e[l+c]=255!=f?t[u+f]+d:255}this._line++,this._line=4?t[e*n+a-4]:0,l=t[e*n+a]-s;r?r[e*i+1+a]=l:o+=Math.abs(l)}return o},o.prototype._filterUp=function(t,e,r){var n=this._width<<2,i=n+1,o=0;r&&(r[e*i]=2);for(var a=0;a0?t[(e-1)*n+a]:0,l=t[e*n+a]-s;r?r[e*i+1+a]=l:o+=Math.abs(l)}return o},o.prototype._filterAvg=function(t,e,r){var n=this._width<<2,i=n+1,o=0;r&&(r[e*i]=3);for(var a=0;a=4?t[e*n+a-4]:0,l=e>0?t[(e-1)*n+a]:0,u=t[e*n+a]-(s+l>>1);r?r[e*i+1+a]=u:o+=Math.abs(u)}return o},o.prototype._filterPaeth=function(t,e,r){var n=this._width<<2,i=n+1,o=0;r&&(r[e*i]=4);for(var a=0;a=4?t[e*n+a-4]:0,u=e>0?t[(e-1)*n+a]:0,c=a>=4&&e>0?t[(e-1)*n+a-4]:0,f=t[e*n+a]-s(l,u,c);r?r[e*i+1+a]=f:o+=Math.abs(f)}return o};var s=function(t,e,r){var n=t+e-r,i=Math.abs(n-t),o=Math.abs(n-e),a=Math.abs(n-r);return i<=o&&i<=a?t:o<=a?e:r}}).call(this,t("buffer").Buffer)},{"./chunkstream":87,buffer:48,util:180,zlib:46}],91:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=t("stream"),o=t("zlib"),a=t("./filter"),s=t("./crc"),l=t("./constants"),u=e.exports=function(t){i.call(this),this._options=t,t.deflateChunkSize=t.deflateChunkSize||32768,t.deflateLevel=t.deflateLevel||9,t.deflateStrategy=t.deflateStrategy||3,this.readable=!0};n.inherits(u,i),u.prototype.pack=function(t,e,n){this.emit("data",new r(l.PNG_SIGNATURE)),this.emit("data",this._packIHDR(e,n));t=new a(e,n,4,t,this._options).filter();var i=o.createDeflate({chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy});i.on("error",this.emit.bind(this,"error")),i.on("data",function(t){this.emit("data",this._packIDAT(t))}.bind(this)),i.on("end",function(){this.emit("data",this._packIEND()),this.emit("end")}.bind(this)),i.end(t)},u.prototype._packChunk=function(t,e){var n=e?e.length:0,i=new r(n+12);return i.writeUInt32BE(n,0),i.writeUInt32BE(t,4),e&&e.copy(i,8),i.writeInt32BE(s.crc32(i.slice(4,i.length-4)),i.length-4),i},u.prototype._packIHDR=function(t,e){var n=new r(13);return n.writeUInt32BE(t,0),n.writeUInt32BE(e,4),n[8]=8,n[9]=6,n[10]=0,n[11]=0,n[12]=0,this._packChunk(l.TYPE_IHDR,n)},u.prototype._packIDAT=function(t){return this._packChunk(l.TYPE_IDAT,t)},u.prototype._packIEND=function(){return this._packChunk(l.TYPE_IEND,null)}}).call(this,t("buffer").Buffer)},{"./constants":88,"./crc":89,"./filter":90,buffer:48,stream:169,util:180,zlib:46}],92:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=t("zlib"),o=t("./crc"),a=t("./chunkstream"),s=t("./constants"),l=t("./filter"),u=e.exports=function(t){a.call(this),this._options=t,t.checkCRC=!1!==t.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._inflate=null,this._filter=null,this._crc=null,this._palette=[],this._colorType=0,this._chunks={},this._chunks[s.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[s.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[s.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[s.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[s.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[s.TYPE_gAMA]=this._handleGAMA.bind(this),this.writable=!0,this.on("error",this._handleError.bind(this)),this._handleSignature()};n.inherits(u,a),u.prototype._handleError=function(){this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy()},u.prototype._handleSignature=function(){this.read(s.PNG_SIGNATURE.length,this._parseSignature.bind(this))},u.prototype._parseSignature=function(t){for(var e=s.PNG_SIGNATURE,r=0;rthis._palette.length)return void this.emit("error",new Error("More transparent colors than palette size"));for(var e=0;e0?this._handleIDAT(t):this._handleChunkEnd()},u.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))},u.prototype._parseIEND=function(t){this._crc.write(t),this._inflate.end(),this._hasIEND=!0,this._handleChunkEnd()};var c={0:1,2:3,3:1,4:2,6:4};u.prototype._reverseFiltered=function(t,e,r){if(3==this._colorType)for(var n=e<<2,i=0;i0&&this.height>0?new n(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new a(t||{}),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(t){this.data=t,this.emit("parsed",t)}.bind(this)),this._packer=new s(t),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,o),l.prototype.pack=function(){return e.nextTick(function(){this._packer.pack(this.data,this.width,this.height)}.bind(this)),this},l.prototype.parse=function(t,e){if(e){var r,n=null;this.once("parsed",r=function(t){this.removeListener("error",n),this.data=t,e(null,this)}.bind(this)),this.once("error",n=function(t){this.removeListener("parsed",r),e(t,null)}.bind(this))}return this.end(t),this},l.prototype.write=function(t){return this._parser.write(t),!0},l.prototype.end=function(t){this._parser.end(t)},l.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.data=t.data,delete t.data,this.emit("metadata",t)},l.prototype._gamma=function(t){this.gamma=t},l.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},l.prototype.bitblt=function(t,e,r,n,i,o,a){if(e>this.width||r>this.height||e+n>this.width||r+i>this.height)throw new Error("bitblt reading outside image");if(o>t.width||a>t.height||o+n>t.width||a+i>t.height)throw new Error("bitblt writing outside image");for(var s=0;s>=l,c-=l,g!==o){if(g===a)break;for(var v=go;)y=d[y]>>8,++_;var b=y;if(h+_+(v!==g?1:0)>n)return void console.log("Warning, gif stream longer than expected.");r[h++]=b;var w=h+=_;for(v!==g&&(r[h++]=b),y=v;_--;)y=d[y],r[--w]=255&y,y>>=8;null!==m&&s<4096&&(d[s++]=m<<8|b,s>=u+1&&l<12&&(++l,u=u<<1|1)),m=g}else s=a+1,u=(1<<(l=i+1))-1,m=null}return h!==n&&console.log("Warning, gif stream shorter than expected."),r}try{r.GifWriter=function(t,e,r,n){var i=0,o=void 0===(n=void 0===n?{}:n).loop?null:n.loop,a=void 0===n.palette?null:n.palette;if(e<=0||r<=0||e>65535||r>65535)throw new Error("Width/Height invalid.");function s(t){var e=t.length;if(e<2||e>256||e&e-1)throw new Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return e}t[i++]=71,t[i++]=73,t[i++]=70,t[i++]=56,t[i++]=57,t[i++]=97;var l=0,u=0;if(null!==a){for(var c=s(a);c>>=1;)++l;if(c=1<=c)throw new Error("Background index out of range.");if(0===u)throw new Error("Background index explicitly passed as 0.")}}if(t[i++]=255&e,t[i++]=e>>8&255,t[i++]=255&r,t[i++]=r>>8&255,t[i++]=(null!==a?128:0)|l,t[i++]=u,t[i++]=0,null!==a)for(var f=0,h=a.length;f>16&255,t[i++]=p>>8&255,t[i++]=255&p}if(null!==o){if(o<0||o>65535)throw new Error("Loop count invalid.");t[i++]=33,t[i++]=255,t[i++]=11,t[i++]=78,t[i++]=69,t[i++]=84,t[i++]=83,t[i++]=67,t[i++]=65,t[i++]=80,t[i++]=69,t[i++]=50,t[i++]=46,t[i++]=48,t[i++]=3,t[i++]=1,t[i++]=255&o,t[i++]=o>>8&255,t[i++]=0}var d=!1;this.addFrame=function(e,r,n,o,l,u){if(!0===d&&(--i,d=!1),u=void 0===u?{}:u,e<0||r<0||e>65535||r>65535)throw new Error("x/y invalid.");if(n<=0||o<=0||n>65535||o>65535)throw new Error("Width/Height invalid.");if(l.length>=1;)++p;h=1<3)throw new Error("Disposal out of range.");var v=!1,_=0;if(void 0!==u.transparent&&null!==u.transparent&&(v=!0,(_=u.transparent)<0||_>=h))throw new Error("Transparent color index.");if((0!==g||v||0!==m)&&(t[i++]=33,t[i++]=249,t[i++]=4,t[i++]=g<<2|(!0===v?1:0),t[i++]=255&m,t[i++]=m>>8&255,t[i++]=_,t[i++]=0),t[i++]=44,t[i++]=255&e,t[i++]=e>>8&255,t[i++]=255&r,t[i++]=r>>8&255,t[i++]=255&n,t[i++]=n>>8&255,t[i++]=255&o,t[i++]=o>>8&255,t[i++]=!0===c?128|p-1:0,!0===c)for(var y=0,b=f.length;y>16&255,t[i++]=w>>8&255,t[i++]=255&w}return i=function(t,e,r,n){t[e++]=r;var i=e++,o=1<=r;)t[e++]=255&f,f>>=8,c-=8,e===i+256&&(t[i]=255,i=e++)}function p(t){f|=t<=8;)t[e++]=255&f,f>>=8,c-=8,e===i+256&&(t[i]=255,i=e++);4096===l?(p(o),l=s+1,u=r+1,m={}):(l>=1<>7,s=1<<1+(7&o);t[e++],t[e++];var l=null,u=null;a&&(l=e,u=s,e+=3*s);var c=!0,f=[],h=0,p=null,d=0,m=null;for(this.width=r,this.height=i;c&&e=0))throw Error("Invalid block size");if(0===j)break;e+=j}break;case 249:if(4!==t[e++]||0!==t[e+4])throw new Error("Invalid graphics extension block.");var g=t[e++];h=t[e++]|t[e++]<<8,p=t[e++],0==(1&g)&&(p=null),d=g>>2&7,e++;break;case 254:for(;;){if(!((j=t[e++])>=0))throw Error("Invalid block size");if(0===j)break;e+=j}break;default:throw new Error("Unknown graphic control label: 0x"+t[e-1].toString(16))}break;case 44:var v=t[e++]|t[e++]<<8,_=t[e++]|t[e++]<<8,y=t[e++]|t[e++]<<8,b=t[e++]|t[e++]<<8,w=t[e++],k=w>>6&1,x=1<<1+(7&w),B=l,C=u,E=!1;w>>7&&(E=!0,B=e,C=x,e+=3*x);var P=e;for(e++;;){var j;if(!((j=t[e++])>=0))throw Error("Invalid block size");if(0===j)break;e+=j}f.push({x:v,y:_,width:y,height:b,has_local_palette:E,palette_offset:B,palette_size:C,data_offset:P,data_length:e-P,transparent_index:p,interlaced:!!k,delay:h,disposal:d});break;case 59:c=!1;break;default:throw new Error("Unknown gif block: 0x"+t[e-1].toString(16))}this.numFrames=function(){return f.length},this.loopCount=function(){return m},this.frameInfo=function(t){if(t<0||t>=f.length)throw new Error("Frame index out of range.");return f[t]},this.decodeAndBlitFrameBGRA=function(e,i){var o=this.frameInfo(e),a=o.width*o.height,s=new Uint8Array(a);n(t,o.data_offset,s,a);var l=o.palette_offset,u=o.transparent_index;null===u&&(u=256);var c=o.width,f=r-c,h=c,p=4*(o.y*r+o.x),d=4*((o.y+o.height)*r+o.x),m=p,g=4*f;!0===o.interlaced&&(g+=4*r*7);for(var v=8,_=0,y=s.length;_=d&&(g=4*f+4*r*(v-1),m=p+(c+f)*(v<<1),v>>=1)),b===u)m+=4;else{var w=t[l+3*b],k=t[l+3*b+1],x=t[l+3*b+2];i[m++]=x,i[m++]=k,i[m++]=w,i[m++]=255}--h}},this.decodeAndBlitFrameRGBA=function(e,i){var o=this.frameInfo(e),a=o.width*o.height,s=new Uint8Array(a);n(t,o.data_offset,s,a);var l=o.palette_offset,u=o.transparent_index;null===u&&(u=256);var c=o.width,f=r-c,h=c,p=4*(o.y*r+o.x),d=4*((o.y+o.height)*r+o.x),m=p,g=4*f;!0===o.interlaced&&(g+=4*r*7);for(var v=8,_=0,y=s.length;_=d&&(g=4*f+4*r*(v-1),m=p+(c+f)*(v<<1),v>>=1)),b===u)m+=4;else{var w=t[l+3*b],k=t[l+3*b+1],x=t[l+3*b+2];i[m++]=w,i[m++]=k,i[m++]=x,i[m++]=255}--h}}}}catch(t){}},{}],95:[function(t,e,r){(function(r){var n=t("charm");function i(t){if(!(t=t||{}).total)throw new Error("You MUST specify the total number of operations that will be processed.");this.total=t.total,this.current=0,this.max_burden=t.maxBurden||.5,this.show_burden=t.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=n(),this.charm.pipe(r.stdout),this.charm.write("\n\n\n")}function o(t,e,r){for(r=r||" ";t.length3&&(l[0]=l[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,a)),(l[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=0;n--){var i=t[n];"."===i?t.splice(n,1):".."===i?(t.splice(n,1),r++):r&&(t.splice(n,1),r--)}if(e)for(;r--;r)t.unshift("..");return t}function n(t,e){if(t.filter)return t.filter(e);for(var r=[],n=0;n=-1&&!i;o--){var a=o>=0?arguments[o]:t.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(r=a+"/"+r,i="/"===a.charAt(0))}return r=e(n(r.split("/"),function(t){return!!t}),!i).join("/"),(i?"/":"")+r||"."},r.normalize=function(t){var o=r.isAbsolute(t),a="/"===i(t,-1);return(t=e(n(t.split("/"),function(t){return!!t}),!o).join("/"))||o||(t="."),t&&a&&(t+="/"),(o?"/":"")+t},r.isAbsolute=function(t){return"/"===t.charAt(0)},r.join=function(){var t=Array.prototype.slice.call(arguments,0);return r.normalize(n(t,function(t,e){if("string"!=typeof t)throw new TypeError("Arguments to path.join must be strings");return t}).join("/"))},r.relative=function(t,e){function n(t){for(var e=0;e=0&&""===t[r];r--);return e>r?[]:t.slice(e,r-e+1)}t=r.resolve(t).substr(1),e=r.resolve(e).substr(1);for(var i=n(t.split("/")),o=n(e.split("/")),a=Math.min(i.length,o.length),s=a,l=0;l=1;--o)if(47===(e=t.charCodeAt(o))){if(!i){n=o;break}}else i=!1;return-1===n?r?"/":".":r&&1===n?"/":t.slice(0,n)},r.basename=function(t,e){var r=function(t){"string"!=typeof t&&(t+="");var e,r=0,n=-1,i=!0;for(e=t.length-1;e>=0;--e)if(47===t.charCodeAt(e)){if(!i){r=e+1;break}}else-1===n&&(i=!1,n=e+1);return-1===n?"":t.slice(r,n)}(t);return e&&r.substr(-1*e.length)===e&&(r=r.substr(0,r.length-e.length)),r},r.extname=function(t){"string"!=typeof t&&(t+="");for(var e=-1,r=0,n=-1,i=!0,o=0,a=t.length-1;a>=0;--a){var s=t.charCodeAt(a);if(47!==s)-1===n&&(i=!1,n=a+1),46===s?-1===e?e=a:1!==o&&(o=1):-1!==e&&(o=-1);else if(!i){r=a+1;break}}return-1===e||-1===n||0===o||1===o&&e===n-1&&e===r+1?"":t.slice(e,n)};var i="b"==="ab".substr(-1)?function(t,e,r){return t.substr(e,r)}:function(t,e,r){return e<0&&(e=t.length+e),t.substr(e,r)}}).call(this,t("_process"))},{_process:118}],97:[function(t,e,r){(function(e){"use strict";var n=t("./interlace"),i={1:{0:0,1:0,2:0,3:255},2:{0:0,1:0,2:0,3:1},3:{0:0,1:1,2:2,3:255},4:{0:0,1:1,2:2,3:3}};function o(t,e,r,n,o,a){for(var s=t.width,l=t.height,u=t.index,c=0;c>4,r.push(f,c);break;case 2:l=3&h,u=h>>2&3,c=h>>4&3,f=h>>6&3,r.push(f,c,u,l);break;case 1:i=1&h,o=h>>1&1,a=h>>2&1,s=h>>3&1,l=h>>4&1,u=h>>5&1,c=h>>6&1,f=h>>7&1,r.push(f,c,u,l,s,a,o,i)}}return{get:function(t){for(;r.length0&&(this._paused=!1,this.emit("drain"))}.bind(this))},a.prototype.write=function(t,e){return this.writable?(r=n.isBuffer(t)?t:new n(t,e||this._encoding),this._buffers.push(r),this._buffered+=r.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 r},a.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(0===this._buffers.length?this._end():(this._buffers.push(null),this._process()))},a.prototype.destroySoon=a.prototype.end,a.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("There are some read requests waitng on finished stream")),this.destroy()},a.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},a.prototype._processReadAllowingLess=function(t){this._reads.shift();var e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))},a.prototype._processRead=function(t){this._reads.shift();for(var e=0,r=0,i=new n(t.length);e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,i)},a.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){var t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else{if(!(this._buffered>=t.length))break;this._processRead(t)}}this._buffers&&this._buffers.length>0&&null===this._buffers[0]&&this._end()}catch(t){this.emit("error",t)}}}).call(this,t("_process"),t("buffer").Buffer)},{_process:118,buffer:48,stream:169,util:180}],100:[function(t,e,r){"use strict";e.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}},{}],101:[function(t,e,r){"use strict";var n=[];!function(){for(var t=0;t<256;t++){for(var e=t,r=0;r<8;r++)1&e?e=3988292384^e>>>1:e>>>=1;n[t]=e}}();var i=e.exports=function(){this._crc=-1};i.prototype.write=function(t){for(var e=0;e>>8;return!0},i.prototype.crc32=function(){return-1^this._crc},i.crc32=function(t){for(var e=-1,r=0;r>>8;return-1^e}},{}],102:[function(t,e,r){(function(r){"use strict";var n=t("./paeth-predictor");var i={0:function(t,e,r,n,i){t.copy(n,i,e,e+r)},1:function(t,e,r,n,i,o){for(var a=0;a=o?t[e+a-o]:0,l=t[e+a]-s;n[i+a]=l}},2:function(t,e,r,n,i){for(var o=0;o0?t[e+o-r]:0,s=t[e+o]-a;n[i+o]=s}},3:function(t,e,r,n,i,o){for(var a=0;a=o?t[e+a-o]:0,l=e>0?t[e+a-r]:0,u=t[e+a]-(s+l>>1);n[i+a]=u}},4:function(t,e,r,i,o,a){for(var s=0;s=a?t[e+s-a]:0,u=e>0?t[e+s-r]:0,c=e>0&&s>=a?t[e+s-(r+a)]:0,f=t[e+s]-n(l,u,c);i[o+s]=f}}},o={0:function(t,e,r){for(var n=0,i=e+r,o=e;o=n?t[e+o-n]:0,s=t[e+o]-a;i+=Math.abs(s)}return i},2:function(t,e,r){for(var n=0,i=e+r,o=e;o0?t[o-r]:0,s=t[o]-a;n+=Math.abs(s)}return n},3:function(t,e,r,n){for(var i=0,o=0;o=n?t[e+o-n]:0,s=e>0?t[e+o-r]:0,l=t[e+o]-(a+s>>1);i+=Math.abs(l)}return i},4:function(t,e,r,i){for(var o=0,a=0;a=i?t[e+a-i]:0,l=e>0?t[e+a-r]:0,u=e>0&&a>=i?t[e+a-(r+i)]:0,c=t[e+a]-n(s,l,u);o+=Math.abs(c)}return o}};e.exports=function(t,e,n,a,s){var l;if("filterType"in a&&-1!==a.filterType){if("number"!=typeof a.filterType)throw new Error("unrecognised filter types");l=[a.filterType]}else l=[0,1,2,3,4];for(var u=e*s,c=0,f=0,h=new r((u+1)*n),p=l[0],d=0;d1)for(var m=1/0,g=0;gi?e[o-n]:0;e[o]=a+s}},a.prototype._unFilterType2=function(t,e,r){for(var n=this._lastLine,i=0;ii?e[a-n]:0,c=Math.floor((u+l)/2);e[a]=s+c}},a.prototype._unFilterType4=function(t,e,r){for(var n=this._xComparison,o=n-1,a=this._lastLine,s=0;so?e[s-n]:0,f=s>o&&a?a[s-n]:0,h=i(c,u,f);e[s]=l+h}},a.prototype._reverseFilterLine=function(t){var e,n=t[0],i=this._images[this._imageIndex],o=i.byteWidth;if(0===n)e=t.slice(1,o+1);else switch(e=new r(o),n){case 1:this._unFilterType1(t,e,o);break;case 2:this._unFilterType2(t,e,o);break;case 3:this._unFilterType3(t,e,o);break;case 4:this._unFilterType4(t,e,o);break;default:throw new Error("Unrecognised filter type - "+n)}this.write(e),i.lineIndex++,i.lineIndex>=i.height?(this._lastLine=null,this._imageIndex++,i=this._images[this._imageIndex]):this._lastLine=e,i?this.read(i.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}}).call(this,t("buffer").Buffer)},{"./interlace":107,"./paeth-predictor":111,buffer:48}],106:[function(t,e,r){(function(t){"use strict";e.exports=function(e,r){var n=r.depth,i=r.width,o=r.height,a=r.colorType,s=r.transColor,l=r.palette,u=e;return 3===a?function(t,e,r,n,i){for(var o=0,a=0;a0&&f>0&&r.push({width:c,height:f,index:l})}return r},r.getInterlaceIterator=function(t){return function(e,r,i){var o=e%n[i].x.length,a=(e-o)/n[i].x.length*8+n[i].x[o],s=r%n[i].y.length;return 4*a+((r-s)/n[i].y.length*8+n[i].y[s])*t*4}}},{}],108:[function(t,e,r){(function(r){"use strict";var n=t("util"),i=t("stream"),o=t("./constants"),a=t("./packer"),s=e.exports=function(t){i.call(this);var e=t||{};this._packer=new a(e),this._deflate=this._packer.createDeflate(),this.readable=!0};n.inherits(s,i),s.prototype.pack=function(t,e,n,i){this.emit("data",new r(o.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,n)),i&&this.emit("data",this._packer.packGAMA(i));var a=this._packer.filterData(t,e,n);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(t){this.emit("data",this._packer.packIDAT(t))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(a)}}).call(this,t("buffer").Buffer)},{"./constants":100,"./packer":110,buffer:48,stream:169,util:180}],109:[function(t,e,r){(function(r){"use strict";var n=!0,i=t("zlib");i.deflateSync||(n=!1);var o=t("./constants"),a=t("./packer");e.exports=function(t,e){if(!n)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 a(e||{}),l=[];l.push(new r(o.PNG_SIGNATURE)),l.push(s.packIHDR(t.width,t.height)),t.gamma&&l.push(s.packGAMA(t.gamma));var u=s.filterData(t.data,t.width,t.height),c=i.deflateSync(u,s.getDeflateOptions());if(u=null,!c||!c.length)throw new Error("bad png - invalid compressed data response");return l.push(s.packIDAT(c)),l.push(s.packIEND()),r.concat(l)}}).call(this,t("buffer").Buffer)},{"./constants":100,"./packer":110,buffer:48,zlib:46}],110:[function(t,e,r){(function(r){"use strict";var n=t("./constants"),i=t("./crc"),o=t("./bitpacker"),a=t("./filter-pack"),s=t("zlib"),l=e.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32768,t.deflateLevel=null!=t.deflateLevel?t.deflateLevel:9,t.deflateStrategy=null!=t.deflateStrategy?t.deflateStrategy:3,t.inputHasAlpha=null==t.inputHasAlpha||t.inputHasAlpha,t.deflateFactory=t.deflateFactory||s.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType="number"==typeof t.colorType?t.colorType:n.COLORTYPE_COLOR_ALPHA,t.colorType!==n.COLORTYPE_COLOR&&t.colorType!==n.COLORTYPE_COLOR_ALPHA)throw new Error("option color type:"+t.colorType+" is not supported at present");if(8!==t.bitDepth)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};l.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},l.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},l.prototype.filterData=function(t,e,r){var i=o(t,e,r,this._options),s=n.COLORTYPE_TO_BPP_MAP[this._options.colorType];return a(i,e,r,this._options,s)},l.prototype._packChunk=function(t,e){var n=e?e.length:0,o=new r(n+12);return o.writeUInt32BE(n,0),o.writeUInt32BE(t,4),e&&e.copy(o,8),o.writeInt32BE(i.crc32(o.slice(4,o.length-4)),o.length-4),o},l.prototype.packGAMA=function(t){var e=new r(4);return e.writeUInt32BE(Math.floor(t*n.GAMMA_DIVISION),0),this._packChunk(n.TYPE_gAMA,e)},l.prototype.packIHDR=function(t,e){var i=new r(13);return i.writeUInt32BE(t,0),i.writeUInt32BE(e,4),i[8]=this._options.bitDepth,i[9]=this._options.colorType,i[10]=0,i[11]=0,i[12]=0,this._packChunk(n.TYPE_IHDR,i)},l.prototype.packIDAT=function(t){return this._packChunk(n.TYPE_IDAT,t)},l.prototype.packIEND=function(){return this._packChunk(n.TYPE_IEND,null)}}).call(this,t("buffer").Buffer)},{"./bitpacker":98,"./constants":100,"./crc":101,"./filter-pack":102,buffer:48,zlib:46}],111:[function(t,e,r){"use strict";e.exports=function(t,e,r){var n=t+e-r,i=Math.abs(n-t),o=Math.abs(n-e),a=Math.abs(n-r);return i<=o&&i<=a?t:o<=a?e:r}},{}],112:[function(t,e,r){"use strict";var n=t("util"),i=t("zlib"),o=t("./chunkstream"),a=t("./filter-parse-async"),s=t("./parser"),l=t("./bitmapper"),u=t("./format-normaliser"),c=e.exports=function(t){o.call(this),this._parser=new s(t,{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=t,this.writable=!0,this._parser.start()};n.inherits(c,o),c.prototype._handleError=function(t){this.emit("error",t),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this.errord=!0},c.prototype._inflateData=function(t){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(t)},c.prototype._handleMetaData=function(t){this.emit("metadata",t),this._bitmapInfo=Object.create(t),this._filter=new a(this._bitmapInfo)},c.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t},c.prototype._handlePalette=function(t){this._bitmapInfo.palette=t},c.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"),this.destroySoon())},c.prototype._complete=function(t){if(!this.errord){try{var e=l.dataToBitMap(t,this._bitmapInfo),r=u(e,this._bitmapInfo);e=null}catch(t){return void this._handleError(t)}this.emit("parsed",r)}}},{"./bitmapper":97,"./chunkstream":99,"./filter-parse-async":103,"./format-normaliser":106,"./parser":114,util:180,zlib:46}],113:[function(t,e,r){(function(r){"use strict";var n=!0,i=t("zlib");i.deflateSync||(n=!1);var o=t("./sync-reader"),a=t("./filter-parse-sync"),s=t("./parser"),l=t("./bitmapper"),u=t("./format-normaliser");e.exports=function(t,e){if(!n)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 c,f,h;var p=[];var d=new o(t);if(new s(e,{read:d.read.bind(d),error:function(t){c=t},metadata:function(t){f=t},gamma:function(t){h=t},palette:function(t){f.palette=t},transColor:function(t){f.transColor=t},inflateData:function(t){p.push(t)}}).start(),d.process(),c)throw c;var m=r.concat(p);p.length=0;var g=i.inflateSync(m);if(m=null,!g||!g.length)throw new Error("bad png - invalid inflate data response");var v=a.process(g,f);m=null;var _=l.dataToBitMap(v,f);v=null;var y=u(_,f);return f.data=y,f.gamma=h||0,f}}).call(this,t("buffer").Buffer)},{"./bitmapper":97,"./filter-parse-sync":104,"./format-normaliser":106,"./parser":114,"./sync-reader":117,buffer:48,zlib:46}],114:[function(t,e,r){(function(r){"use strict";var n=t("./constants"),i=t("./crc"),o=e.exports=function(t,e){this._options=t,t.checkCRC=!1!==t.checkCRC,this._hasIHDR=!1,this._hasIEND=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[n.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[n.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[n.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[n.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[n.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[n.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.inflateData=e.inflateData,this.finished=e.finished};o.prototype.start=function(){this.read(n.PNG_SIGNATURE.length,this._parseSignature.bind(this))},o.prototype._parseSignature=function(t){for(var e=n.PNG_SIGNATURE,r=0;rthis._palette.length)return void this.error(new Error("More transparent colors than palette size"));for(var e=0;e0?this._handleIDAT(r):this._handleChunkEnd()},o.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))},o.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}}).call(this,t("buffer").Buffer)},{"./constants":100,"./crc":101,buffer:48}],115:[function(t,e,r){"use strict";var n=t("./parser-sync"),i=t("./packer-sync");r.read=function(t,e){return n(t,e||{})},r.write=function(t){return i(t)}},{"./packer-sync":109,"./parser-sync":113}],116:[function(t,e,r){(function(e,n){"use strict";var i=t("util"),o=t("stream"),a=t("./parser-async"),s=t("./packer-async"),l=t("./png-sync"),u=r.PNG=function(t){o.call(this),t=t||{},this.width=t.width||0,this.height=t.height||0,this.data=this.width>0&&this.height>0?new n(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new a(t),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(t){this.data=t,this.emit("parsed",t)}.bind(this)),this._packer=new s(t),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(u,o),u.sync=l,u.prototype.pack=function(){return this.data&&this.data.length?(e.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this):(this.emit("error","No data provided"),this)},u.prototype.parse=function(t,e){var r,n;e&&(r=function(t){this.removeListener("error",n),this.data=t,e(null,this)}.bind(this),n=function(t){this.removeListener("parsed",r),e(t,null)}.bind(this),this.once("parsed",r),this.once("error",n));return this.end(t),this},u.prototype.write=function(t){return this._parser.write(t),!0},u.prototype.end=function(t){this._parser.end(t)},u.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)},u.prototype._gamma=function(t){this.gamma=t},u.prototype._handleClose=function(){this._parser.writable||this._packer.readable||this.emit("close")},u.bitblt=function(t,e,r,n,i,o,a,s){if(r>t.width||n>t.height||r+i>t.width||n+o>t.height)throw new Error("bitblt reading outside image");if(a>e.width||s>e.height||a+i>e.width||s+o>e.height)throw new Error("bitblt writing outside image");for(var l=0;l0&&this._buffer.length;){var t=this._reads[0];if(!this._buffer.length||!(this._buffer.length>=t.length||t.allowLess))break;this._reads.shift();var e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.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}},{}],118:[function(t,e,r){var n,i,o=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function l(t){if(n===setTimeout)return setTimeout(t,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(t){n=a}try{i="function"==typeof clearTimeout?clearTimeout:s}catch(t){i=s}}();var u,c=[],f=!1,h=-1;function p(){f&&u&&(f=!1,u.length?c=u.concat(c):h=-1,c.length&&d())}function d(){if(!f){var t=l(p);f=!0;for(var e=c.length;e;){for(u=c,c=[];++h1)for(var r=1;r>>7-t%8&1)},put:function(t,e){for(var r=0;r>>e-r-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},e.exports=n},{}],124:[function(t,e,r){var n=t("../utils/buffer");function i(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new n(t*t),this.data.fill(0),this.reservedBit=new n(t*t),this.reservedBit.fill(0)}i.prototype.set=function(t,e,r,n){var i=t*this.size+e;this.data[i]=r,n&&(this.reservedBit[i]=!0)},i.prototype.get=function(t,e){return this.data[t*this.size+e]},i.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r},i.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]},e.exports=i},{"../utils/buffer":146}],125:[function(t,e,r){var n=t("../utils/buffer"),i=t("./mode");function o(t){this.mode=i.BYTE,this.data=new n(t)}o.getBitsLength=function(t){return 8*t},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(t){for(var e=0,r=this.data.length;e=0&&t.bit<4},r.from=function(t,e){if(r.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return r.L;case"m":case"medium":return r.M;case"q":case"quartile":return r.Q;case"h":case"high":return r.H;default:throw new Error("Unknown EC Level: "+t)}}(t)}catch(t){return e}}},{}],128:[function(t,e,r){var n=t("./utils").getSymbolSize;r.getPositions=function(t){var e=n(t);return[[0,0],[e-7,0],[0,e-7]]}},{"./utils":140}],129:[function(t,e,r){var n=t("./utils"),i=n.getBCHDigit(1335);r.getEncodedBits=function(t,e){for(var r=t.bit<<3|e,o=r<<10;n.getBCHDigit(o)-i>=0;)o^=1335<=33088&&r<=40956)r-=33088;else{if(!(r>=57408&&r<=60351))throw new Error("Invalid SJIS character: "+this.data[e]+"\nMake sure your charset is UTF-8");r-=49472}r=192*(r>>>8&255)+(255&r),t.put(r,13)}},e.exports=o},{"./mode":133,"./utils":140}],132:[function(t,e,r){r.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var n=3,i=3,o=40,a=10;function s(t,e,n){switch(t){case r.Patterns.PATTERN000:return(e+n)%2==0;case r.Patterns.PATTERN001:return e%2==0;case r.Patterns.PATTERN010:return n%3==0;case r.Patterns.PATTERN011:return(e+n)%3==0;case r.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(n/3))%2==0;case r.Patterns.PATTERN101:return e*n%2+e*n%3==0;case r.Patterns.PATTERN110:return(e*n%2+e*n%3)%2==0;case r.Patterns.PATTERN111:return(e*n%3+(e+n)%2)%2==0;default:throw new Error("bad maskPattern:"+t)}}r.isValid=function(t){return null!=t&&""!==t&&!isNaN(t)&&t>=0&&t<=7},r.from=function(t){return r.isValid(t)?parseInt(t,10):void 0},r.getPenaltyN1=function(t){for(var e=t.size,r=0,i=0,o=0,a=null,s=null,l=0;l=5&&(r+=n+(i-5)),a=c,i=1),(c=t.get(u,l))===s?o++:(o>=5&&(r+=n+(o-5)),s=c,o=1)}i>=5&&(r+=n+(i-5)),o>=5&&(r+=n+(o-5))}return r},r.getPenaltyN2=function(t){for(var e=t.size,r=0,n=0;n=10&&(1488===n||93===n)&&r++,i=i<<1&2047|t.get(s,a),s>=10&&(1488===i||93===i)&&r++}return r*o},r.getPenaltyN4=function(t){for(var e=0,r=t.data.length,n=0;n=1&&e<10?t.ccBits[0]:e<27?t.ccBits[1]:t.ccBits[2]},r.getBestModeForData=function(t){return i.testNumeric(t)?r.NUMERIC:i.testAlphanumeric(t)?r.ALPHANUMERIC:i.testKanji(t)?r.KANJI:r.BYTE},r.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")},r.isValid=function(t){return t&&t.bit&&t.ccBits},r.from=function(t,e){if(r.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return r.NUMERIC;case"alphanumeric":return r.ALPHANUMERIC;case"kanji":return r.KANJI;case"byte":return r.BYTE;default:throw new Error("Unknown mode: "+t)}}(t)}catch(t){return e}}},{"./regex":138,"./version-check":141}],134:[function(t,e,r){var n=t("./mode");function i(t){this.mode=n.NUMERIC,this.data=t.toString()}i.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){var e,r,n;for(e=0;e+3<=this.data.length;e+=3)r=this.data.substr(e,3),n=parseInt(r,10),t.put(n,10);var i=this.data.length-e;i>0&&(r=this.data.substr(e),n=parseInt(r,10),t.put(n,3*i+1))},e.exports=i},{"./mode":133}],135:[function(t,e,r){var n=t("../utils/buffer"),i=t("./galois-field");r.mul=function(t,e){var r=new n(t.length+e.length-1);r.fill(0);for(var o=0;o=0;){for(var o=r[0],a=0;a>n&1),n<6?t.set(n,8,i,!0):n<8?t.set(n+1,8,i,!0):t.set(o-15+n,8,i,!0),n<8?t.set(8,o-n-1,i,!0):n<9?t.set(8,15-n-1+1,i,!0):t.set(8,15-n-1,i,!0);t.set(o-8,8,1,!0)}function y(t,e,r){var o=new a;r.forEach(function(e){o.put(e.mode.bit,4),o.put(e.getLength(),m.getCharCountIndicator(e.mode,t)),e.write(o)});var s=8*(i.getSymbolTotalCodewords(t)-f.getTotalCodewordsCount(t,e));for(o.getLengthInBits()+4<=s&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(0);for(var l=(s-o.getLengthInBits())/8,u=0;u=0&&s<=6&&(0===l||6===l)||l>=0&&l<=6&&(0===s||6===s)||s>=2&&s<=4&&l>=2&&l<=4?t.set(o+s,a+l,!0,!0):t.set(o+s,a+l,!1,!0))}(b,e),function(t){for(var e=t.size,r=8;r=7&&function(t,e){for(var r,n,i,o=t.size,a=p.getEncodedBits(e),s=0;s<18;s++)r=Math.floor(s/3),n=s%3+o-8-3,i=1==(a>>s&1),t.set(r,n,i,!0),t.set(n,r,i,!0)}(b,e),function(t,e){for(var r=t.size,n=-1,i=r-1,o=7,a=0,s=r-1;s>0;s-=2)for(6===s&&s--;;){for(var l=0;l<2;l++)if(!t.isReserved(i,s-l)){var u=!1;a>>o&1)),t.set(i,s-l,u),-1==--o&&(a++,o=7)}if((i+=n)<0||r<=i){i-=n,n=-n;break}}}(b,d),isNaN(n)&&(n=c.getBestMask(b,_.bind(null,b,r))),c.applyMask(n,b),_(b,r,n),{modules:b,version:e,errorCorrectionLevel:r,maskPattern:n,segments:o}}r.create=function(t,e){if(void 0===t||""===t)throw new Error("No input text");var r,n,a=o.M;return void 0!==e&&(a=o.from(e.errorCorrectionLevel,o.M),r=p.from(e.version),n=c.from(e.maskPattern),e.toSJISFunc&&i.setToSJISFunction(e.toSJISFunc)),b(t,r,a,n)}},{"../utils/buffer":146,"./alignment-pattern":121,"./bit-buffer":123,"./bit-matrix":124,"./error-correction-code":126,"./error-correction-level":127,"./finder-pattern":128,"./format-info":129,"./mask-pattern":132,"./mode":133,"./reed-solomon-encoder":137,"./segments":139,"./utils":140,"./version":142,isarray:147}],137:[function(t,e,r){var n=t("../utils/buffer"),i=t("./polynomial");function o(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}o.prototype.initialize=function(t){this.degree=t,this.genPoly=i.generateECPolynomial(this.degree)},o.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");var e=new n(this.degree);e.fill(0);var r=n.concat([t,e],t.length+this.degree),o=i.mod(r,this.genPoly),a=this.degree-o.length;if(a>0){var s=new n(this.degree);return s.fill(0),o.copy(s,a),s}return o},e.exports=o},{"../utils/buffer":146,"./polynomial":135}],138:[function(t,e,r){var n="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",i="(?:(?![A-Z0-9 $%*+\\-./:]|"+(n=n.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";r.KANJI=new RegExp(n,"g"),r.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),r.BYTE=new RegExp(i,"g"),r.NUMERIC=new RegExp("[0-9]+","g"),r.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");var o=new RegExp("^"+n+"$"),a=new RegExp("^[0-9]+$"),s=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");r.testKanji=function(t){return o.test(t)},r.testNumeric=function(t){return a.test(t)},r.testAlphanumeric=function(t){return s.test(t)}},{}],139:[function(t,e,r){var n=t("./mode"),i=t("./numeric-data"),o=t("./alphanumeric-data"),a=t("./byte-data"),s=t("./kanji-data"),l=t("./regex"),u=t("./utils"),c=t("dijkstrajs");function f(t){return unescape(encodeURIComponent(t)).length}function h(t,e,r){for(var n,i=[];null!==(n=t.exec(r));)i.push({data:n[0],index:n.index,mode:e,length:n[0].length});return i}function p(t){var e,r,i=h(l.NUMERIC,n.NUMERIC,t),o=h(l.ALPHANUMERIC,n.ALPHANUMERIC,t);return u.isKanjiModeEnabled()?(e=h(l.BYTE,n.BYTE,t),r=h(l.KANJI,n.KANJI,t)):(e=h(l.BYTE_KANJI,n.BYTE,t),r=[]),i.concat(o,e,r).sort(function(t,e){return t.index-e.index}).map(function(t){return{data:t.data,mode:t.mode,length:t.length}})}function d(t,e){switch(e){case n.NUMERIC:return i.getBitsLength(t);case n.ALPHANUMERIC:return o.getBitsLength(t);case n.KANJI:return s.getBitsLength(t);case n.BYTE:return a.getBitsLength(t)}}function m(t,e){var r,l=n.getBestModeForData(t);if((r=n.from(e,l))!==n.BYTE&&r.bit=0?t[t.length-1]:null;return r&&r.mode===e.mode?(t[t.length-1].data+=e.data,t):(t.push(e),t)},[])}(a))},r.rawSplit=function(t){return r.fromArray(p(t,u.isKanjiModeEnabled()))}},{"./alphanumeric-data":122,"./byte-data":125,"./kanji-data":131,"./mode":133,"./numeric-data":134,"./regex":138,"./utils":140,dijkstrajs:20}],140:[function(t,e,r){var n,i=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];r.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return 4*t+17},r.getSymbolTotalCodewords=function(t){return i[t]},r.getBCHDigit=function(t){for(var e=0;0!==t;)e++,t>>>=1;return e},r.setToSJISFunction=function(t){if("function"!=typeof t)throw new Error('"toSJISFunc" is not a valid function.');n=t},r.isKanjiModeEnabled=function(){return void 0!==n},r.toSJIS=function(t){return n(t)}},{}],141:[function(t,e,r){r.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}},{}],142:[function(t,e,r){var n=t("./utils"),i=t("./error-correction-code"),o=t("./error-correction-level"),a=t("./mode"),s=t("./version-check"),l=t("isarray"),u=n.getBCHDigit(7973);function c(t,e){return a.getCharCountIndicator(t,e)+4}function f(t,e){var r=0;return t.forEach(function(t){var n=c(t.mode,e);r+=n+t.getBitsLength()}),r}r.from=function(t,e){return s.isValid(t)?parseInt(t,10):e},r.getCapacity=function(t,e,r){if(!s.isValid(t))throw new Error("Invalid QR Code version");void 0===r&&(r=a.BYTE);var o=8*(n.getSymbolTotalCodewords(t)-i.getTotalCodewordsCount(t,e));if(r===a.MIXED)return o;var l=o-c(r,t);switch(r){case a.NUMERIC:return Math.floor(l/10*3);case a.ALPHANUMERIC:return Math.floor(l/11*2);case a.KANJI:return Math.floor(l/13);case a.BYTE:default:return Math.floor(l/8)}},r.getBestVersionForData=function(t,e){var n,i=o.from(e,o.M);if(l(t)){if(t.length>1)return function(t,e){for(var n=1;n<=40;n++)if(f(t,n)<=r.getCapacity(n,e,a.MIXED))return n}(t,i);if(0===t.length)return 1;n=t[0]}else n=t;return function(t,e,n){for(var i=1;i<=40;i++)if(e<=r.getCapacity(i,n,t))return i}(n.mode,n.getLength(),i)},r.getEncodedBits=function(t){if(!s.isValid(t)||t<7)throw new Error("Invalid QR Code version");for(var e=t<<12;n.getBCHDigit(e)-u>=0;)e^=7973<':"",f="0&&u>0&&t[l-1]||(n+=a?o("M",u+r,.5+c+r):o("m",i,0),i=0,a=!1),u+1',h='viewBox="0 0 '+u+" "+u+'"',p=''+c+f+"\n";return"function"==typeof r&&r(null,p),p}},{"./utils":145}],145:[function(t,e,r){function n(t){if("string"!=typeof t)throw new Error("Color should be defined as hex string");var e=t.slice().replace("#","").split("");if(e.length<3||5===e.length||e.length>8)throw new Error("Invalid hex color: "+t);3!==e.length&&4!==e.length||(e=Array.prototype.concat.apply([],e.map(function(t){return[t,t]}))),6===e.length&&e.push("F","F");var r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:255&r,hex:"#"+e.slice(0,6).join("")}}r.getOptions=function(t){t||(t={}),t.color||(t.color={});var e=void 0===t.margin||null===t.margin||t.margin<0?4:t.margin,r=t.width&&t.width>=21?t.width:void 0,i=t.scale||4;return{width:r,scale:r?4:i,margin:e,color:{dark:n(t.color.dark||"#000000ff"),light:n(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},r.getScale=function(t,e){return e.width&&e.width>=t+2*e.margin?e.width/(t+2*e.margin):e.scale},r.getImageWidth=function(t,e){var n=r.getScale(t,e);return Math.floor((t+2*e.margin)*n)},r.qrToImageData=function(t,e,n){for(var i=e.modules.size,o=e.modules.data,a=r.getScale(i,n),s=Math.floor((i+2*n.margin)*a),l=n.margin*a,u=[n.color.light,n.color.dark],c=0;c=l&&f>=l&&c=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return 0|t}function s(t,e){var r;return o.TYPED_ARRAY_SUPPORT?(r=new Uint8Array(e)).__proto__=o.prototype:(null===(r=t)&&(r=new o(e)),r.length=e),r}function l(t,e){var r=s(t,e<0?0:0|a(e));if(!o.TYPED_ARRAY_SUPPORT)for(var n=0;n55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function f(t){return o.isBuffer(t)?t.length:"undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer)?t.byteLength:("string"!=typeof t&&(t=""+t),0===t.length?0:c(t).length)}o.TYPED_ARRAY_SUPPORT&&(o.prototype.__proto__=Uint8Array.prototype,o.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&o[Symbol.species]===o&&Object.defineProperty(o,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1})),o.prototype.write=function(t,e,r){void 0===e?(r=this.length,e=0):void 0===r&&"string"==typeof e?(r=this.length,e=0):isFinite(e)&&(e|=0,isFinite(r)?r|=0:r=void 0);var n=this.length-e;if((void 0===r||r>n)&&(r=n),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");return function(t,e,r,n){return function(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}(c(e,t.length-r),t,r,n)}(this,t,e,r)},o.prototype.slice=function(t,e){var r,n=this.length;if(t=~~t,e=void 0===e?n:~~e,t<0?(t+=n)<0&&(t=0):t>n&&(t=n),e<0?(e+=n)<0&&(e=0):e>n&&(e=n),e=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(a<1e3||!o.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(i=e;i0?("string"==typeof e||a.objectMode||Object.getPrototypeOf(e)===u.prototype||(e=function(t){return u.from(t)}(e)),n?a.endEmitted?t.emit("error",new Error("stream.unshift() after end event")):w(t,a,e,!0):a.ended?t.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!r?(e=a.decoder.write(e),a.objectMode||0!==e.length?w(t,a,e,!1):E(t,a)):w(t,a,e,!1))):n||(a.reading=!1));return function(t){return!t.ended&&(t.needReadable||t.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=k?t=k:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function B(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(p("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?i.nextTick(C,t):C(t))}function C(t){p("emit readable"),t.emit("readable"),T(t)}function E(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(P,t,e))}function P(t,e){for(var r=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):r=function(t,e,r){var n;to.length?o.length:t;if(a===o.length?i+=o:i+=o.slice(0,t),0===(t-=a)){a===o.length?(++n,r.next?e.head=r.next:e.head=e.tail=null):(e.head=r,r.data=o.slice(a));break}++n}return e.length-=n,i}(t,e):function(t,e){var r=u.allocUnsafe(t),n=e.head,i=1;n.data.copy(r),t-=n.data.length;for(;n=n.next;){var o=n.data,a=t>o.length?o.length:t;if(o.copy(r,r.length-t,0,a),0===(t-=a)){a===o.length?(++i,n.next?e.head=n.next:e.head=e.tail=null):(e.head=n,n.data=o.slice(a));break}++i}return e.length-=i,r}(t,e);return n}(t,e.buffer,e.decoder),r);var r}function A(t){var e=t._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,i.nextTick(I,e,t))}function I(t,e){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}function R(t,e){for(var r=0,n=t.length;r=e.highWaterMark||e.ended))return p("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?A(this):B(this),null;if(0===(t=x(t,e))&&e.ended)return 0===e.length&&A(this),null;var n,i=e.needReadable;return p("need readable",i),(0===e.length||e.length-t0?M(t,e):null)?(e.needReadable=!0,t=0):e.length-=t,0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&A(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(t){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(t,e){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=t;break;case 1:o.pipes=[o.pipes,t];break;default:o.pipes.push(t)}o.pipesCount+=1,p("pipe count=%d opts=%j",o.pipesCount,e);var l=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?c:y;function u(e,r){p("onunpipe"),e===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),t.removeListener("close",v),t.removeListener("finish",_),t.removeListener("drain",f),t.removeListener("error",g),t.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",y),n.removeListener("data",m),h=!0,!o.awaitDrain||t._writableState&&!t._writableState.needDrain||f())}function c(){p("onend"),t.end()}o.endEmitted?i.nextTick(l):n.once("end",l),t.on("unpipe",u);var f=function(t){return function(){var e=t._readableState;p("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,T(t))}}(n);t.on("drain",f);var h=!1;var d=!1;function m(e){p("ondata"),d=!1,!1!==t.write(e)||d||((1===o.pipesCount&&o.pipes===t||o.pipesCount>1&&-1!==R(o.pipes,t))&&!h&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,d=!0),n.pause())}function g(e){p("onerror",e),y(),t.removeListener("error",g),0===s(t,"error")&&t.emit("error",e)}function v(){t.removeListener("finish",_),y()}function _(){p("onfinish"),t.removeListener("close",v),y()}function y(){p("unpipe"),n.unpipe(t)}return n.on("data",m),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?a(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",g),t.once("close",v),t.once("finish",_),t.emit("pipe",n),o.flowing||(p("pipe resume"),n.resume()),t},y.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r),this);if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o-1?i:o.nextTick;_.WritableState=v;var u=t("core-util-is");u.inherits=t("inherits");var c={deprecate:t("util-deprecate")},f=t("./internal/streams/stream"),h=t("safe-buffer").Buffer,p=n.Uint8Array||function(){};var d,m=t("./internal/streams/destroy");function g(){}function v(e,r){s=s||t("./_stream_duplex"),e=e||{};var n=r instanceof s;this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,u=e.writableHighWaterMark,c=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(u||0===u)?u:c,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===e.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var r=t._writableState,n=r.sync,i=r.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(r),e)!function(t,e,r,n,i){--e.pendingcb,r?(o.nextTick(i,n),o.nextTick(B,t,e),t._writableState.errorEmitted=!0,t.emit("error",n)):(i(n),t._writableState.errorEmitted=!0,t.emit("error",n),B(t,e))}(t,r,n,e,i);else{var a=k(r);a||r.corked||r.bufferProcessing||!r.bufferedRequest||w(t,r),n?l(b,t,r,a,i):b(t,r,a,i)}}(r,t)},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 a(this)}function _(e){if(s=s||t("./_stream_duplex"),!(d.call(_,this)||this instanceof s))return new _(e);this._writableState=new v(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function y(t,e,r,n,i,o,a){e.writelen=n,e.writecb=a,e.writing=!0,e.sync=!0,r?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function b(t,e,r,n){r||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,n(),B(t,e)}function w(t,e){e.bufferProcessing=!0;var r=e.bufferedRequest;if(t._writev&&r&&r.next){var n=e.bufferedRequestCount,i=new Array(n),o=e.corkedRequestsFree;o.entry=r;for(var s=0,l=!0;r;)i[s]=r,r.isBuf||(l=!1),r=r.next,s+=1;i.allBuffers=l,y(t,e,!0,e.length,i,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new a(e),e.bufferedRequestCount=0}else{for(;r;){var u=r.chunk,c=r.encoding,f=r.callback;if(y(t,e,!1,e.objectMode?1:u.length,u,c,f),r=r.next,e.bufferedRequestCount--,e.writing)break}null===r&&(e.lastBufferedRequest=null)}e.bufferedRequest=r,e.bufferProcessing=!1}function k(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function x(t,e){t._final(function(r){e.pendingcb--,r&&t.emit("error",r),e.prefinished=!0,t.emit("prefinish"),B(t,e)})}function B(t,e){var r=k(e);return r&&(!function(t,e){e.prefinished||e.finalCalled||("function"==typeof t._final?(e.pendingcb++,e.finalCalled=!0,o.nextTick(x,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),r}u.inherits(_,f),v.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(v.prototype,"buffer",{get:c.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(t){return!!d.call(this,t)||this===_&&(t&&t._writableState instanceof v)}})):d=function(t){return t instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(t,e,r){var n,i=this._writableState,a=!1,s=!i.objectMode&&(n=t,h.isBuffer(n)||n instanceof p);return s&&!h.isBuffer(t)&&(t=function(t){return h.from(t)}(t)),"function"==typeof e&&(r=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),"function"!=typeof r&&(r=g),i.ended?function(t,e){var r=new Error("write after end");t.emit("error",r),o.nextTick(e,r)}(this,r):(s||function(t,e,r,n){var i=!0,a=!1;return null===r?a=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||e.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(t.emit("error",a),o.nextTick(n,a),i=!1),i}(this,i,t,r))&&(i.pendingcb++,a=function(t,e,r,n,i,o){if(!r){var a=function(t,e,r){t.objectMode||!1===t.decodeStrings||"string"!=typeof e||(e=h.from(e,r));return e}(e,n,i);n!==a&&(r=!0,i="buffer",n=a)}var s=e.objectMode?1:n.length;e.length+=s;var l=e.length-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(t,e,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(t,e,r){var n=this._writableState;"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!==t&&void 0!==t&&this.write(t,e),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(t,e,r){e.ending=!0,B(t,e),r&&(e.finished?o.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,n,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),_.prototype.destroy=m.destroy,_.prototype._undestroy=m.undestroy,_.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},t("timers").setImmediate)},{"./_stream_duplex":149,"./internal/streams/destroy":155,"./internal/streams/stream":156,_process:118,"core-util-is":14,inherits:71,"process-nextick-args":158,"safe-buffer":164,timers:172,"util-deprecate":178}],154:[function(t,e,r){"use strict";var n=t("safe-buffer").Buffer,i=t("util");e.exports=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.head=null,this.tail=null,this.length=0}return t.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r},t.prototype.concat=function(t){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var e,r,i,o=n.allocUnsafe(t>>>0),a=this.head,s=0;a;)e=a.data,r=o,i=s,e.copy(r,i),s+=a.data.length,a=a.next;return o},t}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var t=i.inspect({length:this.length});return this.constructor.name+" "+t})},{"safe-buffer":164,util:4}],155:[function(t,e,r){"use strict";var n=t("process-nextick-args");function i(t,e){t.emit("error",e)}e.exports={destroy:function(t,e){var r=this,o=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return o||a?(e?e(t):!t||this._writableState&&this._writableState.errorEmitted||n.nextTick(i,this,t),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(t){!e&&t?(n.nextTick(i,r,t),r._writableState&&(r._writableState.errorEmitted=!0)):e&&e(t)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},{"process-nextick-args":158}],156:[function(t,e,r){e.exports=t("events").EventEmitter},{events:49}],157:[function(t,e,r){arguments[4][147][0].apply(r,arguments)},{dup:147}],158:[function(t,e,r){(function(t){"use strict";!t.version||0===t.version.indexOf("v0.")||0===t.version.indexOf("v1.")&&0!==t.version.indexOf("v1.8.")?e.exports={nextTick:function(e,r,n,i){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var o,a,s=arguments.length;switch(s){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick(function(){e.call(null,r)});case 3:return t.nextTick(function(){e.call(null,r,n)});case 4:return t.nextTick(function(){e.call(null,r,n,i)});default:for(o=new Array(s-1),a=0;a>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function u(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function c(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function f(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function h(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}r.StringDecoder=o,o.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(t.lastNeed=i-1),i;if(--n=0)return i>0&&(t.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:t.lastNeed=i-3),i;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)},o.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},{"safe-buffer":164}],160:[function(t,e,r){e.exports=t("./readable").PassThrough},{"./readable":161}],161:[function(t,e,r){(r=e.exports=t("./lib/_stream_readable.js")).Stream=r,r.Readable=r,r.Writable=t("./lib/_stream_writable.js"),r.Duplex=t("./lib/_stream_duplex.js"),r.Transform=t("./lib/_stream_transform.js"),r.PassThrough=t("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":149,"./lib/_stream_passthrough.js":150,"./lib/_stream_readable.js":151,"./lib/_stream_transform.js":152,"./lib/_stream_writable.js":153}],162:[function(t,e,r){e.exports=t("./readable").Transform},{"./readable":161}],163:[function(t,e,r){e.exports=t("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":153}],164:[function(t,e,r){var n=t("buffer"),i=n.Buffer;function o(t,e){for(var r in t)e[r]=t[r]}function a(t,e,r){return i(t,e,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(o(n,r),r.Buffer=a),o(i,a),a.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return i(t,e,r)},a.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var n=i(t);return void 0!==e?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n},a.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n.SlowBuffer(t)}},{buffer:48}],165:[function(t,e,r){arguments[4][68][0].apply(r,arguments)},{"./lib/decoder":166,"./lib/encoder":167,dup:68}],166:[function(t,e,r){(function(t){var r=function(){"use strict";var t=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]),e=4017,r=799,n=3406,i=2276,o=1567,a=3784,s=5793,l=2896;function u(){}function c(t,e){for(var r,n,i=0,o=[],a=16;a>0&&!t[a-1];)a--;o.push({children:[],index:0});var s,l=o[0];for(r=0;r0;)l=o.pop();for(l.index++,o.push(l);o.length<=r;)o.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s;i++}r+10)return p>>--d&1;if(255==(p=e[r++])){var t=e[r++];if(t)throw"unexpected marker: "+(p<<8|t).toString(16)}return d=7,p>>>7}function g(t){for(var e,r=t;null!==(e=m());){if("number"==typeof(r=r[e]))return r;if("object"!=typeof r)throw"invalid huffman sequence"}return null}function v(t){for(var e=0;t>0;){var r=m();if(null===r)return;e=e<<1|r,t--}return e}function _(t){var e=v(t);return e>=1<0)y--;else for(var n=a,i=s;n<=i;){var o=g(e.huffmanTableAC),l=15&o,c=o>>4;if(0!==l)r[t[n+=c]]=_(l)*(1<>4,0===f)o<15?(y=v(o)+(1<>4;if(0!==s)r[t[o+=l]]=_(s),o++;else{if(l<15)break;o+=16}}};var M,A,I,R,L=0;for(A=1==T?i[0].blocksPerLine*i[0].blocksPerColumn:c*n.mcusPerColumn,o||(o=A);L=65488&&M<=65495))break;r+=2}return r-h}function h(t,u){var c,f,h=[],p=u.blocksPerLine,d=u.blocksPerColumn,m=p<<3,g=new Int32Array(64),v=new Uint8Array(64);function _(t,c,f){var h,p,d,m,g,v,_,y,b,w,k=u.quantizationTable,x=f;for(w=0;w<64;w++)x[w]=t[w]*k[w];for(w=0;w<8;++w){var B=8*w;0!=x[1+B]||0!=x[2+B]||0!=x[3+B]||0!=x[4+B]||0!=x[5+B]||0!=x[6+B]||0!=x[7+B]?(h=s*x[0+B]+128>>8,p=s*x[4+B]+128>>8,d=x[2+B],m=x[6+B],g=l*(x[1+B]-x[7+B])+128>>8,y=l*(x[1+B]+x[7+B])+128>>8,v=x[3+B]<<4,_=x[5+B]<<4,b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+m*o+128>>8,d=d*o-m*a+128>>8,m=b,b=g-_+1>>1,g=g+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=b,b=h-m+1>>1,h=h+m+1>>1,m=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=g*i+y*n+2048>>12,g=g*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+B]=h+y,x[7+B]=h-y,x[1+B]=p+_,x[6+B]=p-_,x[2+B]=d+v,x[5+B]=d-v,x[3+B]=m+g,x[4+B]=m-g):(b=s*x[0+B]+512>>10,x[0+B]=b,x[1+B]=b,x[2+B]=b,x[3+B]=b,x[4+B]=b,x[5+B]=b,x[6+B]=b,x[7+B]=b)}for(w=0;w<8;++w){var C=w;0!=x[8+C]||0!=x[16+C]||0!=x[24+C]||0!=x[32+C]||0!=x[40+C]||0!=x[48+C]||0!=x[56+C]?(h=s*x[0+C]+2048>>12,p=s*x[32+C]+2048>>12,d=x[16+C],m=x[48+C],g=l*(x[8+C]-x[56+C])+2048>>12,y=l*(x[8+C]+x[56+C])+2048>>12,v=x[24+C],_=x[40+C],b=h-p+1>>1,h=h+p+1>>1,p=b,b=d*a+m*o+2048>>12,d=d*o-m*a+2048>>12,m=b,b=g-_+1>>1,g=g+_+1>>1,_=b,b=y+v+1>>1,v=y-v+1>>1,y=b,b=h-m+1>>1,h=h+m+1>>1,m=b,b=p-d+1>>1,p=p+d+1>>1,d=b,b=g*i+y*n+2048>>12,g=g*n-y*i+2048>>12,y=b,b=v*r+_*e+2048>>12,v=v*e-_*r+2048>>12,_=b,x[0+C]=h+y,x[56+C]=h-y,x[8+C]=p+_,x[48+C]=p-_,x[16+C]=d+v,x[40+C]=d-v,x[24+C]=m+g,x[32+C]=m-g):(b=s*f[w+0]+8192>>14,x[0+C]=b,x[8+C]=b,x[16+C]=b,x[24+C]=b,x[32+C]=b,x[40+C]=b,x[48+C]=b,x[56+C]=b)}for(w=0;w<64;++w){var E=128+(x[w]+8>>4);c[w]=E<0?0:E>255?255:E}}for(var y=0;y255?255:t}return u.prototype={load:function(t){var e=new XMLHttpRequest;e.open("GET",t,!0),e.responseType="arraybuffer",e.onload=function(){var t=new Uint8Array(e.response||e.mozResponseArrayBuffer);this.parse(t),this.onload&&this.onload()}.bind(this),e.send(null)},parse:function(e){var r=0;e.length;function n(){var t=e[r]<<8|e[r+1];return r+=2,t}function i(){var t=n(),i=e.subarray(r,r+t-2);return r+=i.length,i}function o(t){var e,r,n=0,i=0;for(r in t.components)t.components.hasOwnProperty(r)&&(n<(e=t.components[r]).h&&(n=e.h),i>4==0)for(_=0;_<64;_++){k[t[_]]=e[r++]}else{if(w>>4!=1)throw"DQT: invalid table spec";for(_=0;_<64;_++){k[t[_]]=n()}}p[15&w]=k}break;case 65472:case 65473:case 65474:n(),(a={}).extended=65473===v,a.progressive=65474===v,a.precision=e[r++],a.scanLines=n(),a.samplesPerLine=n(),a.components={},a.componentsOrder=[];var x,B=e[r++];for(U=0;U>4,E=15&e[r+1],P=e[r+2];a.componentsOrder.push(x),a.components[x]={h:C,v:E,quantizationTable:p[P]},r+=3}o(a),d.push(a);break;case 65476:var j=n();for(U=2;U>4==0?g:m)[15&S]=c(T,A)}break;case 65501:n(),s=n();break;case 65498:n();var I=e[r++],R=[];for(U=0;U>4],z.huffmanTableAC=m[15&L],R.push(z)}var F=e[r++],O=e[r++],D=e[r++],N=f(e,r,a,R,s,F,O,D>>4,15&D);r+=N;break;default:if(255==e[r-3]&&e[r-2]>=192&&e[r-2]<=254){r-=3;break}throw"unknown JPEG marker "+v.toString(16)}v=n()}if(1!=d.length)throw"only single frame JPEGs supported";this.width=a.samplesPerLine,this.height=a.scanLines,this.jfif=l,this.adobe=u,this.components=[];for(var U=0;U=this.charLength-this.charReceived?this.charLength-this.charReceived:t.length;if(t.copy(this.charBuffer,this.charReceived,0,r),this.charReceived+=r,this.charReceived=55296&&i<=56319)){if(this.charReceived=this.charLength=0,0===t.length)return e;break}this.charLength+=this.surrogateSize,e=""}this.detectIncompleteChar(t);var n=t.length;this.charLength&&(t.copy(this.charBuffer,0,t.length-this.charReceived,n),n-=this.charReceived);var i;n=(e+=t.toString(this.encoding,0,n)).length-1;if((i=e.charCodeAt(n))>=55296&&i<=56319){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),t.copy(this.charBuffer,0,0,o),e.substring(0,n)}return e},o.prototype.detectIncompleteChar=function(t){for(var e=t.length>=3?3:t.length;e>0;e--){var r=t[t.length-e];if(1==e&&r>>5==6){this.charLength=2;break}if(e<=2&&r>>4==14){this.charLength=3;break}if(e<=3&&r>>3==30){this.charLength=4;break}}this.charReceived=e},o.prototype.end=function(t){var e="";if(t&&t.length&&(e=this.write(t)),this.charReceived){var r=this.charReceived,n=this.charBuffer,i=this.encoding;e+=n.slice(0,r).toString(i)}return e}},{buffer:48}],171:[function(t,e,r){(function(r){var n=t("stream");function i(t,e,i){t=t||function(t){this.queue(t)},e=e||function(){this.queue(null)};var o=!1,a=!1,s=[],l=!1,u=new n;function c(){for(;s.length&&!u.paused;){var t=s.shift();if(null===t)return u.emit("end");u.emit("data",t)}}return u.readable=u.writable=!0,u.paused=!1,u.autoDestroy=!(i&&!1===i.autoDestroy),u.write=function(e){return t.call(this,e),!u.paused},u.queue=u.push=function(t){return l?u:(null===t&&(l=!0),s.push(t),c(),u)},u.on("end",function(){u.readable=!1,!u.writable&&u.autoDestroy&&r.nextTick(function(){u.destroy()})}),u.end=function(t){if(!o)return o=!0,arguments.length&&u.write(t),u.writable=!1,e.call(u),!u.readable&&u.autoDestroy&&u.destroy(),u},u.destroy=function(){if(!a)return a=!0,o=!0,s.length=0,u.writable=u.readable=!1,u.emit("close"),u},u.pause=function(){if(!u.paused)return u.paused=!0,u},u.resume=function(){return u.paused&&(u.paused=!1,u.emit("resume")),c(),u.paused||u.emit("drain"),u},u}e.exports=i,i.through=i}).call(this,t("_process"))},{_process:118,stream:169}],172:[function(t,e,r){(function(e,n){var i=t("process/browser.js").nextTick,o=Function.prototype.apply,a=Array.prototype.slice,s={},l=0;function u(t,e){this._id=t,this._clearFn=e}r.setTimeout=function(){return new u(o.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new u(o.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(t){t.close()},u.prototype.unref=u.prototype.ref=function(){},u.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},r.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},r._unrefActive=r.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},r.setImmediate="function"==typeof e?e:function(t){var e=l++,n=!(arguments.length<2)&&a.call(arguments,1);return s[e]=!0,i(function(){s[e]&&(n?t.apply(null,n):t.call(null),r.clearImmediate(e))}),e},r.clearImmediate="function"==typeof n?n:function(t){delete s[t]}}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":118,timers:172}],173:[function(t,e,r){r.isatty=function(){return!1},r.ReadStream=function(){throw new Error("tty.ReadStream is not implemented")},r.WriteStream=function(){throw new Error("tty.WriteStream is not implemented")}},{}],174:[function(t,e,r){(function(e,n){"use strict";var i=t("bit-twiddle"),o=t("dup");e.__TYPEDARRAY_POOL||(e.__TYPEDARRAY_POOL={UINT8:o([32,0]),UINT16:o([32,0]),UINT32:o([32,0]),INT8:o([32,0]),INT16:o([32,0]),INT32:o([32,0]),FLOAT:o([32,0]),DOUBLE:o([32,0]),DATA:o([32,0]),UINT8C:o([32,0]),BUFFER:o([32,0])});var a="undefined"!=typeof Uint8ClampedArray,s=e.__TYPEDARRAY_POOL;s.UINT8C||(s.UINT8C=o([32,0])),s.BUFFER||(s.BUFFER=o([32,0]));var l=s.DATA,u=s.BUFFER;function c(t){if(t){var e=t.length||t.byteLength,r=i.log2(e);l[r].push(t)}}function f(t){t=i.nextPow2(t);var e=i.log2(t),r=l[e];return r.length>0?r.pop():new ArrayBuffer(t)}function h(t){return new Uint8Array(f(t),0,t)}function p(t){return new Uint16Array(f(2*t),0,t)}function d(t){return new Uint32Array(f(4*t),0,t)}function m(t){return new Int8Array(f(t),0,t)}function g(t){return new Int16Array(f(2*t),0,t)}function v(t){return new Int32Array(f(4*t),0,t)}function _(t){return new Float32Array(f(4*t),0,t)}function y(t){return new Float64Array(f(8*t),0,t)}function b(t){return a?new Uint8ClampedArray(f(t),0,t):h(t)}function w(t){return new DataView(f(t),0,t)}function k(t){t=i.nextPow2(t);var e=i.log2(t),r=u[e];return r.length>0?r.pop():new n(t)}r.free=function(t){if(n.isBuffer(t))u[i.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|i.log2(e);l[r].push(t)}},r.freeUint8=r.freeUint16=r.freeUint32=r.freeInt8=r.freeInt16=r.freeInt32=r.freeFloat32=r.freeFloat=r.freeFloat64=r.freeDouble=r.freeUint8Clamped=r.freeDataView=function(t){c(t.buffer)},r.freeArrayBuffer=c,r.freeBuffer=function(t){u[i.log2(t.length)].push(t)},r.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return f(t);switch(e){case"uint8":return h(t);case"uint16":return p(t);case"uint32":return d(t);case"int8":return m(t);case"int16":return g(t);case"int32":return v(t);case"float":case"float32":return _(t);case"double":case"float64":return y(t);case"uint8_clamped":return b(t);case"buffer":return k(t);case"data":case"dataview":return w(t);default:return null}return null},r.mallocArrayBuffer=f,r.mallocUint8=h,r.mallocUint16=p,r.mallocUint32=d,r.mallocInt8=m,r.mallocInt16=g,r.mallocInt32=v,r.mallocFloat32=r.mallocFloat=_,r.mallocFloat64=r.mallocDouble=y,r.mallocUint8Clamped=b,r.mallocDataView=w,r.mallocBuffer=k,r.clearCache=function(){for(var t=0;t<32;++t)s.UINT8[t].length=0,s.UINT16[t].length=0,s.UINT32[t].length=0,s.INT8[t].length=0,s.INT16[t].length=0,s.INT32[t].length=0,s.FLOAT[t].length=0,s.DOUBLE[t].length=0,s.UINT8C[t].length=0,l[t].length=0,u[t].length=0}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},t("buffer").Buffer)},{"bit-twiddle":2,buffer:48,dup:21}],175:[function(t,e,r){(function(){var t=this,n=t._,i={},o=Array.prototype,a=Object.prototype,s=Function.prototype,l=o.push,u=o.slice,c=o.concat,f=a.toString,h=a.hasOwnProperty,p=o.forEach,d=o.map,m=o.reduce,g=o.reduceRight,v=o.filter,_=o.every,y=o.some,b=o.indexOf,w=o.lastIndexOf,k=Array.isArray,x=Object.keys,B=s.bind,C=function(t){return t instanceof C?t:this instanceof C?void(this._wrapped=t):new C(t)};void 0!==r?(void 0!==e&&e.exports&&(r=e.exports=C),r._=C):t._=C,C.VERSION="1.4.4";var E=C.each=C.forEach=function(t,e,r){if(null!=t)if(p&&t.forEach===p)t.forEach(e,r);else if(t.length===+t.length){for(var n=0,o=t.length;n2;if(null==t&&(t=[]),m&&t.reduce===m)return n&&(e=C.bind(e,n)),i?t.reduce(e,r):t.reduce(e);if(E(t,function(t,o,a){i?r=e.call(n,r,t,o,a):(r=t,i=!0)}),!i)throw new TypeError(P);return r},C.reduceRight=C.foldr=function(t,e,r,n){var i=arguments.length>2;if(null==t&&(t=[]),g&&t.reduceRight===g)return n&&(e=C.bind(e,n)),i?t.reduceRight(e,r):t.reduceRight(e);var o=t.length;if(o!==+o){var a=C.keys(t);o=a.length}if(E(t,function(s,l,u){l=a?a[--o]:--o,i?r=e.call(n,r,t[l],l,u):(r=t[l],i=!0)}),!i)throw new TypeError(P);return r},C.find=C.detect=function(t,e,r){var n;return j(t,function(t,i,o){if(e.call(r,t,i,o))return n=t,!0}),n},C.filter=C.select=function(t,e,r){var n=[];return null==t?n:v&&t.filter===v?t.filter(e,r):(E(t,function(t,i,o){e.call(r,t,i,o)&&(n[n.length]=t)}),n)},C.reject=function(t,e,r){return C.filter(t,function(t,n,i){return!e.call(r,t,n,i)},r)},C.every=C.all=function(t,e,r){e||(e=C.identity);var n=!0;return null==t?n:_&&t.every===_?t.every(e,r):(E(t,function(t,o,a){if(!(n=n&&e.call(r,t,o,a)))return i}),!!n)};var j=C.some=C.any=function(t,e,r){e||(e=C.identity);var n=!1;return null==t?n:y&&t.some===y?t.some(e,r):(E(t,function(t,o,a){if(n||(n=e.call(r,t,o,a)))return i}),!!n)};C.contains=C.include=function(t,e){return null!=t&&(b&&t.indexOf===b?-1!=t.indexOf(e):j(t,function(t){return t===e}))},C.invoke=function(t,e){var r=u.call(arguments,2),n=C.isFunction(e);return C.map(t,function(t){return(n?e:t[e]).apply(t,r)})},C.pluck=function(t,e){return C.map(t,function(t){return t[e]})},C.where=function(t,e,r){return C.isEmpty(e)?r?null:[]:C[r?"find":"filter"](t,function(t){for(var r in e)if(e[r]!==t[r])return!1;return!0})},C.findWhere=function(t,e){return C.where(t,e,!0)},C.max=function(t,e,r){if(!e&&C.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.max.apply(Math,t);if(!e&&C.isEmpty(t))return-1/0;var n={computed:-1/0,value:-1/0};return E(t,function(t,i,o){var a=e?e.call(r,t,i,o):t;a>=n.computed&&(n={value:t,computed:a})}),n.value},C.min=function(t,e,r){if(!e&&C.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.min.apply(Math,t);if(!e&&C.isEmpty(t))return 1/0;var n={computed:1/0,value:1/0};return E(t,function(t,i,o){var a=e?e.call(r,t,i,o):t;an||void 0===r)return 1;if(r>>1;r.call(n,t[s])=0})})},C.difference=function(t){var e=c.apply(o,u.call(arguments,1));return C.filter(t,function(t){return!C.contains(e,t)})},C.zip=function(){for(var t=u.call(arguments),e=C.max(C.pluck(t,"length")),r=new Array(e),n=0;n=0;r--)e=[t[r].apply(this,e)];return e[0]}},C.after=function(t,e){return t<=0?e():function(){if(--t<1)return e.apply(this,arguments)}},C.keys=x||function(t){if(t!==Object(t))throw new TypeError("Invalid object");var e=[];for(var r in t)C.has(t,r)&&(e[e.length]=r);return e},C.values=function(t){var e=[];for(var r in t)C.has(t,r)&&e.push(t[r]);return e},C.pairs=function(t){var e=[];for(var r in t)C.has(t,r)&&e.push([r,t[r]]);return e},C.invert=function(t){var e={};for(var r in t)C.has(t,r)&&(e[t[r]]=r);return e},C.functions=C.methods=function(t){var e=[];for(var r in t)C.isFunction(t[r])&&e.push(r);return e.sort()},C.extend=function(t){return E(u.call(arguments,1),function(e){if(e)for(var r in e)t[r]=e[r]}),t},C.pick=function(t){var e={},r=c.apply(o,u.call(arguments,1));return E(r,function(r){r in t&&(e[r]=t[r])}),e},C.omit=function(t){var e={},r=c.apply(o,u.call(arguments,1));for(var n in t)C.contains(r,n)||(e[n]=t[n]);return e},C.defaults=function(t){return E(u.call(arguments,1),function(e){if(e)for(var r in e)null==t[r]&&(t[r]=e[r])}),t},C.clone=function(t){return C.isObject(t)?C.isArray(t)?t.slice():C.extend({},t):t},C.tap=function(t,e){return e(t),t};var A=function(t,e,r,n){if(t===e)return 0!==t||1/t==1/e;if(null==t||null==e)return t===e;t instanceof C&&(t=t._wrapped),e instanceof C&&(e=e._wrapped);var i=f.call(t);if(i!=f.call(e))return!1;switch(i){case"[object String]":return t==String(e);case"[object Number]":return t!=+t?e!=+e:0==t?1/t==1/e:t==+e;case"[object Date]":case"[object Boolean]":return+t==+e;case"[object RegExp]":return t.source==e.source&&t.global==e.global&&t.multiline==e.multiline&&t.ignoreCase==e.ignoreCase}if("object"!=typeof t||"object"!=typeof e)return!1;for(var o=r.length;o--;)if(r[o]==t)return n[o]==e;r.push(t),n.push(e);var a=0,s=!0;if("[object Array]"==i){if(s=(a=t.length)==e.length)for(;a--&&(s=A(t[a],e[a],r,n)););}else{var l=t.constructor,u=e.constructor;if(l!==u&&!(C.isFunction(l)&&l instanceof l&&C.isFunction(u)&&u instanceof u))return!1;for(var c in t)if(C.has(t,c)&&(a++,!(s=C.has(e,c)&&A(t[c],e[c],r,n))))break;if(s){for(c in e)if(C.has(e,c)&&!a--)break;s=!a}}return r.pop(),n.pop(),s};C.isEqual=function(t,e){return A(t,e,[],[])},C.isEmpty=function(t){if(null==t)return!0;if(C.isArray(t)||C.isString(t))return 0===t.length;for(var e in t)if(C.has(t,e))return!1;return!0},C.isElement=function(t){return!(!t||1!==t.nodeType)},C.isArray=k||function(t){return"[object Array]"==f.call(t)},C.isObject=function(t){return t===Object(t)},E(["Arguments","Function","String","Number","Date","RegExp"],function(t){C["is"+t]=function(e){return f.call(e)=="[object "+t+"]"}}),C.isArguments(arguments)||(C.isArguments=function(t){return!(!t||!C.has(t,"callee"))}),"function"!=typeof/./&&(C.isFunction=function(t){return"function"==typeof t}),C.isFinite=function(t){return isFinite(t)&&!isNaN(parseFloat(t))},C.isNaN=function(t){return C.isNumber(t)&&t!=+t},C.isBoolean=function(t){return!0===t||!1===t||"[object Boolean]"==f.call(t)},C.isNull=function(t){return null===t},C.isUndefined=function(t){return void 0===t},C.has=function(t,e){return h.call(t,e)},C.noConflict=function(){return t._=n,this},C.identity=function(t){return t},C.times=function(t,e,r){for(var n=Array(t),i=0;i":">",'"':""","'":"'","/":"/"}};I.unescape=C.invert(I.escape);var R={escape:new RegExp("["+C.keys(I.escape).join("")+"]","g"),unescape:new RegExp("("+C.keys(I.unescape).join("|")+")","g")};C.each(["escape","unescape"],function(t){C[t]=function(e){return null==e?"":(""+e).replace(R[t],function(e){return I[t][e]})}}),C.result=function(t,e){if(null==t)return null;var r=t[e];return C.isFunction(r)?r.call(t):r},C.mixin=function(t){E(C.functions(t),function(e){var r=C[e]=t[e];C.prototype[e]=function(){var t=[this._wrapped];return l.apply(t,arguments),N.call(this,r.apply(C,t))}})};var L=0;C.uniqueId=function(t){var e=++L+"";return t?t+e:e},C.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var F=/(.)^/,O={"'":"'","\\":"\\","\r":"r","\n":"n","\t":"t","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\t|\u2028|\u2029/g;C.template=function(t,e,r){var n;r=C.defaults({},r,C.templateSettings);var i=new RegExp([(r.escape||F).source,(r.interpolate||F).source,(r.evaluate||F).source].join("|")+"|$","g"),o=0,a="__p+='";t.replace(i,function(e,r,n,i,s){return a+=t.slice(o,s).replace(D,function(t){return"\\"+O[t]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),n&&(a+="'+\n((__t=("+n+"))==null?'':__t)+\n'"),i&&(a+="';\n"+i+"\n__p+='"),o=s+e.length,e}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{n=new Function(r.variable||"obj","_",a)}catch(t){throw t.source=a,t}if(e)return n(e,C);var s=function(t){return n.call(this,t,C)};return s.source="function("+(r.variable||"obj")+"){\n"+a+"}",s},C.chain=function(t){return C(t).chain()};var N=function(t){return this._chain?C(t).chain():t};C.mixin(C),E(["pop","push","reverse","shift","sort","splice","unshift"],function(t){var e=o[t];C.prototype[t]=function(){var r=this._wrapped;return e.apply(r,arguments),"shift"!=t&&"splice"!=t||0!==r.length||delete r[0],N.call(this,r)}}),E(["concat","join","slice"],function(t){var e=o[t];C.prototype[t]=function(){return N.call(this,e.apply(this._wrapped,arguments))}}),C.extend(C.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}).call(this)},{}],176:[function(t,e,r){"use strict";e.exports=function(t,e,r){return 0===t.length?t:e?(r||t.sort(e),function(t,e){for(var r=1,n=t.length,i=t[0],o=t[0],a=1;a=a?l+1:a}n.mkdir(e+"sequencer"+a,function(){var o=e+"sequencer"+a+"/",s=r.steps;if(i){var l=s.slice(-1)[0].output.src,u=s.slice(-1)[0].output.format,c=t("data-uri-to-buffer")(l);n.writeFile(o+image+"_"+(s.length-1)+"."+u,c,function(){})}else for(var f in s){l=s[f].output.src,u=s[f].output.format,c=t("data-uri-to-buffer")(l);n.writeFile(o+image+"_"+f+"."+u,c,function(){})}})},n.readdir(u,function(t,e){var r=[];if(void 0===e||0==e.length)return c(r),[];for(var i=0;i0&&(thisStep=t.steps[e],thisStep.UI.onRemove(thisStep.options.step),t.steps.splice(e,1))}function d(){var e=[],r=this.getSteps().slice(1).map(t=>t.options.name),n=this;for(var i in n.image=arguments[0],arguments)e.push(a(arguments[i]));var o=u.call(this,e,"l");0!=this.getSteps().length&&(this.options.sequencerCounter=0,c=[],this.steps=[]),c.push({method:"loadImages",json_q:a(o)});var s={name:"ImageSequencer Wrapper",sequencer:this,addSteps:this.addSteps,removeSteps:this.removeSteps,insertSteps:this.insertSteps,run:this.run,UI:this.UI,setUI:this.setUI};t("./ui/LoadImage")(n,"image",o.image,function(){var t;t=n,0!=r.length&&(t.addSteps(r),r=[]),o.callback.call(s)})}function m(t){var e={};if("load-image"==t)return{};if(0==arguments.length){for(var r in this.modules)e[r]=s[r][1];for(var n in this.sequences)e[n]={name:n,steps:this.sequences[n]}}else e=s[t]?s[t][1]:{inputs:l[t].options};return e}function g(t){var e=t.name?t.name:t.options.name;let r=m(e).inputs||{},n={};for(let e in r)t.options[e]&&t.options[e]!=r[e].default&&(n[e]=t.options[e],n[e]=encodeURIComponent(n[e]));return`${e}{${Object.keys(n).map(t=>t+":"+n[t]).join("|")}}`}function v(t){let e;return(e=t.includes(",")?t.split(","):[t]).map(_)}function _(t){var e;if(e=t.includes("{")?t.includes("(")&&t.indexOf("(")=e.steps.length?{options:{name:void 0}}:e.steps.slice(c+t)[0]},h.getIndex=function(){return c},n)n.hasOwnProperty(p)&&(h[p]=n[p]);h.UI.onDraw(h.options.step);var d=t("./RunToolkit")(e.copy(f));h.draw(d,function(){e.steps[c].options.step.output=e.steps[c].output.src,e.steps[c].UI.onComplete(e.steps[c].options.step),r(o,++s)},a)}}(s,o)}(r=function(t){0==t[0]&&1==e.steps.length?delete t[0]:0==t[0]&&t[0]++;for(var r=e.steps[t[0]-1];void 0===r||void 0===r.output;)r=e.steps[--t[0]-1];return t}(r))}},{"./RunToolkit":189,"./util/getStep.js":314}],189:[function(t,e,r){const n=t("get-pixels"),i=t("./modules/_nomodule/PixelManipulation"),o=t("lodash"),a=t("data-uri-to-buffer"),s=t("save-pixels");e.exports=function(t){return t.getPixels=n,t.pixelManipulation=i,t.lodash=o,t.dataUriToBuffer=a,t.savePixels=s,t}},{"./modules/_nomodule/PixelManipulation":306,"data-uri-to-buffer":19,"get-pixels":30,lodash:76,"save-pixels":168}],190:[function(t,e,r){e.exports={sample:[{name:"invert",options:{}},{name:"channel",options:{channel:"red"}},{name:"blur",options:{blur:"5"}}]}},{}],191:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));return e.size=e.size||n.size,e.qrCodeString=e.qrCodeString||"https://github.com/publiclab/image-sequencer",getPixels=t("get-pixels"),{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return getPixels(r.src,function(i,a){return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,e,r,n){return[t,e,r,n]},extraManipulation:function(r,n){i?console.log(i):t("./QR")(e,r,a,n)},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:n})})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./QR":192,"./info.json":194,"get-pixels":30}],192:[function(t,e,r){e.exports=function(e,r,n,i){t("qrcode").toDataURL(e.qrCodeString,function(o,a){t("get-pixels")(a,function(o,a){o&&console.log("Bad image path",image);var s=new(t("imagejs").Bitmap)({width:a.shape[0],height:a.shape[1]});s._data.data=a.data;var l=s.resize({width:e.size,height:e.size,algorithm:"bicubicInterpolation"});a.data=l._data.data,a.shape=[e.size,e.size,4],a.stride[1]=4*e.size;for(var u=n.shape[0],c=n.shape[1],f=u-e.size,h=c-e.size,p=0;p=f&&d>=h?(r.set(p,d,0,a.get(p-f,d-h,0)),r.set(p,d,1,a.get(p-f,d-h,1)),r.set(p,d,2,a.get(p-f,d-h,2)),r.set(p,d,3,a.get(p-f,d-h,3))):(r.set(p,d,0,n.get(p,d,0)),r.set(p,d,1,n.get(p,d,1)),r.set(p,d,2,n.get(p,d,2)),r.set(p,d,3,n.get(p,d,3)));i()})})}},{"get-pixels":30,imagejs:63,qrcode:119}],193:[function(t,e,r){e.exports=[t("./Module"),t("./info.json")]},{"./Module":191,"./info.json":194}],194:[function(t,e,r){e.exports={name:"Add QR",description:"Adds QR corresponding to the given string",url:"https://github.com/publiclab/image-sequencer/tree/master/MODULES.md",inputs:{size:{type:"integer",desc:"size of QR code in pixels",default:200},qrCodeString:{type:"string",desc:"input string to generate QR code",default:"https://github.com/publiclab/image-sequencer"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#add-qr-module"}},{}],195:[function(t,e,r){e.exports=function(e,r){return e.step.metadata=e.step.metadata||{},{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},extraManipulation:function(t){for(var r=0,n=[0,0,0,0];rAverages (r, g, b, a): "+n.join(", ")+"

"),t},format:r.format,image:e.image,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306}],196:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":195,"./info.json":197,dup:193}],197:[function(t,e,r){e.exports={name:"Average",description:"Average all pixel color",inputs:{},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#average-module"}},{}],198:[function(require,module,exports){module.exports=function Dynamic(options,UI,util){var defaults=require("./../../util/getDefaults.js")(require("./info.json")),output;function draw(input,callback,progressObj){progressObj.stop(!0),progressObj.overrideFlag=!0;var step=this;"string"==typeof options.func&&eval("options.func = "+options.func);var getPixels=require("get-pixels");"string"==typeof options.offset&&(options.offset=parseInt(options.offset));var priorStep=this.getStep(options.offset);void 0===priorStep.output&&(this.output=input,UI.notify("Offset Unavailable","offset-notification"),callback()),getPixels(priorStep.output.src,function(t,e){return options.firstImagePixels=e,require("../_nomodule/PixelManipulation.js")(input,{output:function(t,e,r){step.output={src:e,format:r}},changePixel:function(t,e,r,n,i,o){let a=options.firstImagePixels;return options.func(t,e,r,n,a.get(i,o,0),a.get(i,o,1),a.get(i,o,2),a.get(i,o,3))},format:input.format,image:options.image,inBrowser:options.inBrowser,callback:callback})})}return options.func=options.func||defaults.blend,options.offset=options.offset||defaults.offset,{options:options,draw:draw,output:output,UI:UI}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./info.json":200,"get-pixels":30}],199:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":198,"./info.json":200,dup:193}],200:[function(t,e,r){e.exports={name:"Blend",description:"Blend two chosen image steps with the given function. Defaults to using the red channel from image 1 and the green and blue and alpha channels of image 2. Easier to use interfaces coming soon!",inputs:{offset:{type:"integer",desc:"Choose which image to blend the current image with. Two steps back is -2, three steps back is -3 etc.",default:-2},blend:{type:"string",desc:"Function to use to blend the two images.",default:"function(r1, g1, b1, a1, r2, g2, b2, a2) { return [ r1, g2, b2, a2 ] }"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#blend-module"}},{}],201:[function(t,e,r){e.exports=function(e,r){let n=[[2/159,4/159,5/159,4/159,2/159],[4/159,9/159,12/159,9/159,4/159],[5/159,12/159,15/159,12/159,5/159],[4/159,9/159,12/159,9/159,4/159],[2/159,4/159,5/159,4/159,2/159]],i=t("lodash").cloneDeep(e);n=function(t){let e=[];for(let r=t.length-1;r>=0;r--){let n=[];for(let e=t[r].length-1;e>=0;e--)n.push(t[r][e]);e.push(n)}return e}(n);for(let t=0;tm;r=0<=m?++c:--c)n[r]=(e-i)/(o-i)*(l[r]-s[r])+s[r];return n}}e.exports=function(t,e){return e.colormap=e.colormap||i.default,"object"==typeof e.colormap?colormapFunction=n(e.colormap):i.hasOwnProperty(e.colormap)?colormapFunction=i[e.colormap]:colormapFunction=i.default,colormapFunction(t/255)};var i={greyscale:n([[0,[0,0,0],[255,255,255]],[1,[255,255,255],[255,255,255]]]),bluwhtgrngis:n([[0,[6,23,86],[6,25,84]],[.0625,[6,25,84],[6,25,84]],[.125,[6,25,84],[6,25,84]],[.1875,[6,25,84],[6,25,84]],[.25,[6,25,84],[6,25,84]],[.3125,[6,25,84],[9,24,84]],[.3438,[9,24,84],[119,120,162]],[.375,[119,129,162],[249,250,251]],[.406,[249,250,251],[255,255,255]],[.4375,[255,255,255],[255,255,255]],[.5,[255,255,255],[214,205,191]],[.52,[214,205,191],[178,175,96]],[.5625,[178,175,96],[151,176,53]],[.593,[151,176,53],[146,188,12]],[.625,[146,188,12],[96,161,1]],[.6875,[96,161,1],[30,127,3]],[.75,[30,127,3],[0,99,1]],[.8125,[0,99,1],[0,74,1]],[.875,[0,74,1],[0,52,0]],[.9375,[0,52,0],[0,34,0]],[.968,[0,34,0],[68,70,67]]]),brntogrn:n([[0,[110,12,3],[118,6,1]],[.0625,[118,6,1],[141,19,6]],[.125,[141,19,6],[165,35,13]],[.1875,[165,35,13],[177,59,25]],[.2188,[177,59,25],[192,91,36]],[.25,[192,91,36],[214,145,76]],[.3125,[214,145,76],[230,183,134]],[.375,[230,183,134],[243,224,194]],[.4375,[243,224,194],[250,252,229]],[.5,[250,252,229],[217,235,185]],[.5625,[217,235,185],[184,218,143]],[.625,[184,218,143],[141,202,89]],[.6875,[141,202,89],[80,176,61]],[.75,[80,176,61],[0,147,32]],[.8125,[0,147,32],[1,122,22]],[.875,[1,122,22],[0,114,19]],[.9,[0,114,19],[0,105,18]],[.9375,[0,105,18],[7,70,14]]]),blutoredjet:n([[0,[0,0,140],[1,1,186]],[.0625,[1,1,186],[0,1,248]],[.125,[0,1,248],[0,70,254]],[.1875,[0,70,254],[0,130,255]],[.25,[0,130,255],[2,160,255]],[.2813,[2,160,255],[0,187,255]],[.3125,[0,187,255],[6,250,255]],[.375,[8,252,251],[27,254,228]],[.406,[27,254,228],[70,255,187]],[.4375,[70,255,187],[104,254,151]],[.47,[104,254,151],[132,255,19]],[.5,[132,255,19],[195,255,60]],[.5625,[195,255,60],[231,254,25]],[.5976,[231,254,25],[253,246,1]],[.625,[253,246,1],[252,210,1]],[.657,[252,210,1],[255,183,0]],[.6875,[255,183,0],[255,125,2]],[.75,[255,125,2],[255,65,1]],[.8125,[255,65,1],[247,1,1]],[.875,[247,1,1],[200,1,3]],[.9375,[200,1,3],[122,3,2]]]),colors16:n([[0,[0,0,0],[0,0,0]],[.0625,[3,1,172],[3,1,172]],[.125,[3,1,222],[3,1,222]],[.1875,[0,111,255],[0,111,255]],[.25,[3,172,255],[3,172,255]],[.3125,[1,226,255],[1,226,255]],[.375,[2,255,0],[2,255,0]],[.4375,[198,254,0],[190,254,0]],[.5,[252,255,0],[252,255,0]],[.5625,[255,223,3],[255,223,3]],[.625,[255,143,3],[255,143,3]],[.6875,[255,95,3],[255,95,3]],[.75,[242,0,1],[242,0,1]],[.8125,[245,0,170],[245,0,170]],[.875,[223,180,225],[223,180,225]],[.9375,[255,255,255],[255,255,255]]]),default:n([[0,[45,1,121],[25,1,137]],[.125,[25,1,137],[0,6,156]],[.1875,[0,6,156],[7,41,172]],[.25,[7,41,172],[22,84,187]],[.3125,[22,84,187],[25,125,194]],[.375,[25,125,194],[26,177,197]],[.4375,[26,177,197],[23,199,193]],[.47,[23,199,193],[25,200,170]],[.5,[25,200,170],[21,209,27]],[.5625,[21,209,27],[108,215,18]],[.625,[108,215,18],[166,218,19]],[.6875,[166,218,19],[206,221,20]],[.75,[206,221,20],[222,213,19]],[.7813,[222,213,19],[222,191,19]],[.8125,[222,191,19],[227,133,17]],[.875,[227,133,17],[231,83,16]],[.9375,[231,83,16],[220,61,48]]]),fastie:n([[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]]]),stretched:n([[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]]])}},{}],215:[function(t,e,r){e.exports=function(e,r){return{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(r,n,i,o){var a=(r+n+i)/3,s=t("./Colormap")(a,e);return[s[0],s[1],s[2],255]},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./Colormap":214}],216:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":215,"./info.json":217,dup:193}],217:[function(t,e,r){e.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","bluwhtgrngis","stretched","fastie","brntogrn","blutoredjet","colors16"]}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#colormap-module"}},{}],218:[function(t,e,r){var n=t("lodash");e.exports=function(t,e){let r=n.cloneDeep(t);(e=Number(e))<-100&&(e=-100),e>100&&(e=100),e=(100+e)/100,e*=e;for(let n=0;n255&&(i=255);var o=r.get(n,s,1)/255;o-=.5,o*=e,o+=.5,(o*=255)<0&&(o=0),o>255&&(o=255);var a=r.get(n,s,2)/255;a-=.5,a*=e,a+=.5,(a*=255)<0&&(a=0),a>255&&(a=255),t.set(n,s,0,i),t.set(n,s,1,o),t.set(n,s,2,a)}return t}},{lodash:76}],219:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));return e.contrast=e.contrast||n.contrast,{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},extraManipulation:function(r){return r=t("./Contrast")(r,e.contrast)},format:r.format,image:e.image,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./Contrast":218,"./info.json":221}],220:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":219,"./info.json":221,dup:193}],221:[function(t,e,r){e.exports={name:"Contrast",description:"Change the contrast of the image by given value",inputs:{contrast:{type:"integer",desc:"contrast for the new image, typically -100 to 100",default:70,min:-100,max:100}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#contrast-module"}},{}],222:[function(t,e,r){var n=t("lodash");e.exports=function(t,e,r){let o=function(t,e){for(e=e.split(" "),i=0;i<9;i++)e[i]=Number(e[i])*t;let r=0,n=[];for(i=0;i<3;i++){let t=[];for(j=0;j<3;j++)t.push(e[r]),r+=1;n.push(t)}return n}(e,r),a=n.cloneDeep(t);o=function(t){let e=[];for(let r=t.length-1;r>=0;r--){let n=[];for(let e=t[r].length-1;e>=0;e--)n.push(t[r][e]);e.push(n)}return e}(o);for(let e=0;eRead more",inputs:{constantFactor:{type:"float",desc:"a constant factor, multiplies all the kernel values by that factor",default:.1111,placeholder:.1111},kernelValues:{type:"string",desc:"nine space separated numbers representing the kernel values in left to right and top to bottom format.",default:"1 1 1 1 1 1 1 1 1",placeholder:"1 1 1 1 1 1 1 1 1"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#convolution-module"}},{}],226:[function(t,e,r){(function(r){e.exports=function(e,n,i){var o=t("./../../util/getDefaults.js")(t("./info.json")),a=t("get-pixels"),s=t("save-pixels");n.x=parseInt(n.x)||o.x,n.y=parseInt(n.y)||o.y,a(e.src,function(t,a){n.w=parseInt(n.w)||Math.floor(a.shape[0]),n.h=parseInt(n.h)||Math.floor(a.shape[1]),n.backgroundColor=n.backgroundColor||o.backgroundColor;var l=n.x,u=n.y,c=n.w,f=n.h,h=a.shape[0],p=a.shape[1],d=[];backgroundColor=n.backgroundColor.split(" ");for(var m=0;mRead more",inputs:{dither:{type:"select",desc:"Name of the Dithering Algorithm",default:"none",values:["none","floydsteinberg","bayer","Atkinson"]}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#dither-module"}},{}],238:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));r.startingX=r.startingX||n.startingX,r.startingY=r.startingY||n.startingY;var i=Number(r.startingX),o=Number(r.startingY),a=e.shape[0],s=e.shape[1],l=Number(r.thickness)||n.thickness,u=r.endX=Number(r.endX)-l||a-1,c=r.endY=Number(r.endY)-l||s-1,f=r.color||n.color;f=f.split(" ");var h=function(t,r,n,i){for(var o=t;o<=n+l;o++)for(var a=r;a<=i+l;a++)e.set(o,a,0,f[0]),e.set(o,a,1,f[1]),e.set(o,a,2,f[2]),e.set(o,a,3,f[3])};return h(i,o,i,c),h(u,o,u,c),h(i,o,u,o),h(i,c,u,c),e}},{"./../../util/getDefaults.js":313,"./info.json":241}],239:[function(t,e,r){e.exports=function(e,r){return{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,e,r,n){return[t,e,r,n]},extraManipulation:function(r){return r=t("./DrawRectangle")(r,e)},format:r.format,image:e.image,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./DrawRectangle":238}],240:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":239,"./info.json":241,dup:193}],241:[function(t,e,r){e.exports={name:"Draw Rectangle",description:"It draws a rectangle on the image",inputs:{startingX:{type:"integer",desc:"starting x position of the rectangle",default:0},startingY:{type:"integer",desc:"starting y position of the rectangle",default:0},endX:{type:"integer",desc:"last x position of the rectangle",default:"width"},endY:{type:"integer",desc:"last y position of the rectangle",default:"height"},thickness:{type:"integer",desc:"thickness of border",default:1},color:{type:"string",desc:"RGBA values separated by a space",default:"0 0 0 255"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#draw-rectangle-module"}},{}],242:[function(require,module,exports){module.exports=function Dynamic(options,UI){var output;function draw(input,callback,progressObj){progressObj.stop(!0),progressObj.overrideFlag=!0;var step=this;function generator(expression){var func="f = function (r, g, b, a) { var R = r, G = g, B = b, A = a;",f;return func+="return ",func=func+expression+"}",eval(func),f}options.monochrome=options.monochrome||"(R+G+B)/3";var channels=["red","green","blue","alpha"];function changePixel(t,e,r,n){return[options.red_function(t,e,r,n),options.green_function(t,e,r,n),options.blue_function(t,e,r,n),options.alpha_function(t,e,r,n)]}function getNeighbourPixel(t,e,r,n,i){return[t.get(e+n,r+i,0),t.get(e+n,r+i,1),t.get(e+n,r+i,2),t.get(e+n,r+i,3)]}function map(t,e,r,n,i,o){var a=(t-e)/(r-e)*(i-n)+n;if(!o)return a;function s(t,e,r){return Math.max(Math.min(t,r),e)}return nInfragrammar.",inputs:{red:{type:"string",desc:"Expression to return for red channel with R, G, B, and A inputs",default:"r"},green:{type:"string",desc:"Expression to return for green channel with R, G, B, and A inputs",default:"g"},blue:{type:"string",desc:"Expression to return for blue channel with R, G, B, and A inputs",default:"b"},"monochrome (fallback)":{type:"string",desc:"Expression to return with R, G, B, and A inputs; fallback for other channels if none provided",default:"r + g + b"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#dynamic-module"}},{}],245:[function(t,e,r){t("lodash");const n=[[-1,0,1],[-2,0,2],[-1,0,1]],i=[[-1,-2,-1],[0,0,0],[1,2,1]];function o(t,e,r,o,a){let s=0;for(let e=0;e<3;e++)for(let r=0;r<3;r++){let i=o+e-1,l=a+r-1;s+=t.get(i,l,0)*n[e][r]}let l=0;for(let e=0;e<3;e++)for(let r=0;r<3;r++){let n=o+e-1,s=a+r-1;l+=t.get(n,s,0)*i[e][r]}return{pixel:[e,e,e,Math.sqrt(Math.pow(s,2)+Math.pow(l,2))],angle:Math.atan2(l,s)}}e.exports=function(t,e,r,n){let i=[],l=[];for(var u=0;ut.map(a));for(let n=1;n=-22.5&&o<=22.5||o<-157.5&&o>=-180?e[n][i]>=e[n][i+1]&&e[n][i]>=e[n][i-1]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0):o>=22.5&&o<=67.5||o<-112.5&&o>=-157.5?e[n][i]>=e[n+1][i+1]&&e[n][i]>=e[n-1][i-1]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0):o>=67.5&&o<=112.5||o<-67.5&&o>=-112.5?e[n][n]>=e[n+1][i]&&e[n][i]>=e[n][i]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0):(o>=112.5&&o<=157.5||o<-22.5&&o>=-67.5)&&(e[n][i]>=e[n+1][i-1]&&e[n][i]>=e[n-1][i+1]?t.set(n,i,3,e[n][i]):t.set(n,i,3,0))}}(t,l,i),function(t,e,r,n,i,o){const a=s(n)*e,l=a*r;for(let e=0;el?n[e][r]>a?i.push(s):o.push(s):t.set(e,r,3,0)}i.forEach(e=>t.set(e[0],e[1],3,255))}(t,e,r,l,[],[]),t};var a=t=>180*t/Math.PI,s=t=>Math.max(...t.map(t=>t.map(t=>t||0)).map(t=>Math.max(...t)))},{lodash:76}],246:[function(t,e,r){e.exports=function(e,r){var n=t("./../../util/getDefaults.js")(t("./info.json"));return e.blur=e.blur||n.blur,e.highThresholdRatio=e.highThresholdRatio||n.highThresholdRatio,e.lowThresholdRatio=e.lowThresholdRatio||n.lowThresholdRatio,{options:e,draw:function(r,n,i){i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,e,r,n){return[(t+e+r)/3,(t+e+r)/3,(t+e+r)/3,n]},extraManipulation:function(r){return r=t("ndarray-gaussian-filter")(r,e.blur),r=t("./EdgeUtils")(r,e.highThresholdRatio,e.lowThresholdRatio,e.inBrowser)},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:n})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./EdgeUtils":245,"./info.json":248,"ndarray-gaussian-filter":81}],247:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":246,"./info.json":248,dup:193}],248:[function(t,e,r){e.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. ",inputs:{blur:{type:"float",desc:"Amount of gaussian blur(Less blur gives more detail, typically 0-5)",default:2,min:0,max:5,step:.25},highThresholdRatio:{type:"float",desc:"The high threshold ratio for the image",default:.2,min:0,max:1,step:.25},lowThresholdRatio:{type:"float",desc:"The low threshold value for the image",default:.15,min:0,max:1,step:.05}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#edge-detect-module"}},{}],249:[function(t,e,r){e.exports=function(e,r){return t("fisheyegl"),{options:e,draw:function(t,r){var n=this;if(e.inBrowser){if(document.querySelector("#image-sequencer-canvas"))var i=document.querySelector("#image-sequencer-canvas");else(i=document.createElement("canvas")).style.display="none",i.setAttribute("id","image-sequencer-canvas"),document.body.append(i);distorter=FisheyeGl({selector:"#image-sequencer-canvas"}),e.a=parseFloat(e.a)||distorter.lens.a,e.b=parseFloat(e.b)||distorter.lens.b,e.Fx=parseFloat(e.Fx)||distorter.lens.Fx,e.Fy=parseFloat(e.Fy)||distorter.lens.Fy,e.scale=parseFloat(e.scale)||distorter.lens.scale,e.x=parseFloat(e.x)||distorter.fov.x,e.y=parseFloat(e.y)||distorter.fov.y,distorter.lens.a=e.a,distorter.lens.b=e.b,distorter.lens.Fx=e.Fx,distorter.lens.Fy=e.Fy,distorter.lens.scale=e.scale,distorter.fov.x=e.x,distorter.fov.y=e.y,distorter.setImage(t.src,function(){n.output={src:i.toDataURL(),format:t.format},r()})}else this.output=t,r()},output:void 0,UI:r}}},{fisheyegl:22}],250:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":249,"./info.json":251,dup:193}],251:[function(t,e,r){e.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:"Path to a WebGL fragment shader file",default:"(inbuilt)"},vertexSrc:{type:"PATH",desc:"Path to a WebGL vertex shader file",default:"(inbuilt)"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#fisheyegl-module"}},{}],252:[function(t,e,r){e.exports=function(e,r){e.Axis=e.Axis||t("./info.json").inputs.Axis.default;var n=t("get-pixels");return{options:e,draw:function(r,i,o){o.stop(!0),o.overrideFlag=!0;var a=this;return n(r.src,function(n,o){return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){a.output={src:e,format:r}},changePixel:function(t,e,r,n){return[t,e,r,n]},extraManipulation:function(r){if(!n)return t("./flipImage")(o,r,e.Axis);console.log(n)},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:i})})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./flipImage":253,"./info.json":255,"get-pixels":30}],253:[function(t,e,r){e.exports=function(t,e,r){var n=t.shape[0],i=t.shape[1];function o(r,n,i,o){e.set(r,n,0,t.get(i,o,0)),e.set(r,n,1,t.get(i,o,1)),e.set(r,n,2,t.get(i,o,2)),e.set(r,n,3,t.get(i,o,3))}return function(){if("horizontal"==r.toLowerCase())for(var t=0;tRead more",inputs:{adjustment:{type:"float",desc:"gamma correction (inverse of actual gamma factor) for the new image",default:.2,min:2,max:1}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#gamma-correction-module"}},{}],259:[function(t,e,r){(function(r){e.exports=function(e,n){return{options:e,draw:function(e,n,i){var o=t("get-pixels"),a=t("save-pixels"),s=this;o(e.src,function(t,i){if(t)console.log("Bad Image path");else{for(var o=i.shape[0],l=0;l

Select or drag in an image to overlay.

';$(t.ui).find(".details").prepend(i),sequencer.setInputStep({dropZoneSelector:"#"+n,fileInputSelector:"#"+n+" .file-input",onLoad:function(e){var r=e.target;t.options.imageUrl=r.result,t.options.url=r.result,sequencer.run(),setUrlHashParameter("steps",sequencer.toString())}}),$(t.ui).find(".btn-save").on("click",function(){var e=$(t.ui).find(".det input").val();t.options.imageUrl=e,sequencer.run()})}}}},{}],267:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":265,"./info.json":268,dup:193}],268:[function(t,e,r){e.exports={name:"Import Image",description:"Import a new image and replace the original with it. Future versions may enable a blend mode. Specify an image by URL or by file selector.",url:"https://github.com/publiclab/image-sequencer/tree/master/MODULES.md",inputs:{url:{type:"string",desc:"URL of image to import",default:"./images/monarch.png"}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#import-image-module"}},{}],269:[function(t,e,r){e.exports=function(e,r){if(e.step.inBrowser)var n=t("./Ui.js")(e.step,r);var i=t("./../../util/getDefaults.js")(t("./info.json"));return e.filter=e.filter||i.filter,{options:e,draw:function(r,i,o){o.stop(!0),o.overrideFlag=!0;var a=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){a.output={src:e,format:r}},changePixel:function(t,r,n,i){if("red"==e.filter)var o=(n-t)/(1*n+t);"blue"==e.filter&&(o=(t-n)/(1*n+t));var a=255*(o+1)/2;return[a,a,a,i]},format:r.format,image:e.image,inBrowser:e.inBrowser,callback:function(){e.step.inBrowser&&n.setup(),i()}})},output:void 0,UI:r}}},{"../_nomodule/PixelManipulation.js":306,"./../../util/getDefaults.js":313,"./Ui.js":270,"./info.json":272}],270:[function(t,e,r){e.exports=function(t,e){return{setup:function(){var e=$(t.imgElement);e.mousemove(function(t){var r=document.createElement("canvas");r.width=e.width(),r.height=e.height(),r.getContext("2d").drawImage(this,0,0);var n=$(this).offset(),i=t.pageX-n.left,o=t.pageY-n.top,a=r.getContext("2d").getImageData(i,o,1,1).data[0];a=(a=a/127.5-1).toFixed(2),e[0].title="NDVI: "+a})}}}},{}],271:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":269,"./info.json":272,dup:193}],272:[function(t,e,r){e.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"]}},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#ndvi-module"}},{}],273:[function(t,e,r){e.exports=t("../../util/createMetaModule.js")(function(t){return[{name:"ndvi",options:{}},{name:"colormap",options:{colormap:t.colormap}}]},{infoJson:t("./info.json")})[0]},{"../../util/createMetaModule.js":312,"./info.json":275}],274:[function(t,e,r){arguments[4][193][0].apply(r,arguments)},{"./Module":273,"./info.json":275,dup:193}],275:[function(t,e,r){e.exports={name:"NDVI-Colormap",description:"Sequentially Applies NDVI and Colormap steps",inputs:{},"docs-link":"https://github.com/publiclab/image-sequencer/blob/main/docs/MODULES.md#ndvi-colormap-module"}},{}],276:[function(t,e,r){e.exports=function(e,r,n){var i=t("./../../util/getDefaults.js")(t("./info.json"));return e.x=e.x||i.x,e.y=e.y||i.y,{options:e,draw:function(r,n,i){e.offset=e.offset||-2,i.stop(!0),i.overrideFlag=!0;var o=this;t("../../util/ParseInputCoordinates")(e,{src:r.src,x:{valInp:e.x,type:"horizontal"},y:{valInp:e.y,type:"vertical"}},function(t,e){t.x=parseInt(e.x.valInp),t.y=parseInt(e.y.valInp)});var a=this.getStep(e.offset).image,s=this.getOutput(e.offset);t("get-pixels")(r.src,function(r,i){return e.secondImagePixels=i,t("../_nomodule/PixelManipulation.js")(s,{output:function(t,e,r){o.output={src:e,format:r}},changePixel:function(t,r,n,i,o,a){var s=e.secondImagePixels;return o>=e.x&&o=e.y&&a=p*w&&e.get(t,r,0)<=p*b&&e.get(t,r,1)>=d*w&&e.get(t,r,1)<=d*b&&e.get(t,r,2)>=m*w&&e.get(t,r,2)<=m*b&&e.get(t,r,3)>=g*w&&e.get(t,r,3)<=g*b}for(u=u.split(" ");_.length;)if(k(i=v.pop(),n=_.pop())){o=a=n;do{o-=1}while(k(i,o)&&o>=0);do{a+=1}while(k(i,a)&&a=o*c&&t<=o*u&&e>=a*c&&e<=a*u&&r>=s*c&&r<=s*u}for(var h=0;ha&&(a=f,s=l)}return s}(n));for(var c=0;c<=u;c+=4)e.data[c]=e.data[c]"40000"?"40000":e.temperature,i.stop(!0),i.overrideFlag=!0;var o=this;return t("../_nomodule/PixelManipulation.js")(r,{output:function(t,e,r){o.output={src:e,format:r}},extraManipulation:function(t){let r,n,i,o=parseInt(e.temperature);(o/=100)<=66?(r=255,n=Math.min(Math.max(99.4708025861*Math.log(o)-161.1195681661,0),255)):(r=Math.min(Math.max(329.698727446*Math.pow(o-60,-.1332047592),0),255),n=Math.min(Math.max(288.1221695283*Math.pow(o-60,-.0755148492),0),255)),o>=66?i=255:o<=19?i=0:(i=o-10,i=Math.min(Math.max(138.5177312231*Math.log(i)-305.0447927307,0),255));for(let e=0;e Date: Sun, 10 Mar 2019 00:14:56 +0530 Subject: [PATCH 4/6] Removed extra comments --- dist/image-sequencer.js | 4 ---- src/FormatInput.js | 1 - src/InsertStep.js | 3 --- test/core/modules/benchmark.js | 1 - test/core/modules/image-sequencer.js | 33 ---------------------------- 5 files changed, 42 deletions(-) diff --git a/dist/image-sequencer.js b/dist/image-sequencer.js index ad59bc6074..85ac7915b9 100644 --- a/dist/image-sequencer.js +++ b/dist/image-sequencer.js @@ -68384,7 +68384,6 @@ function formatInput(args,format,images) { name: args[1], o: args[2] }); - // } } } @@ -68869,7 +68868,6 @@ function InsertStep(ref, index, name, o) { o.description = o_.description || moduleInfo.description; o.selector = o_.selector || 'ismod-' + name; o.container = o_.container || ref.options.selector; - // o.image = image; o.inBrowser = ref.options.inBrowser; if (index == -1) index = ref.steps.length; @@ -68878,7 +68876,6 @@ function InsertStep(ref, index, name, o) { name: o.name, description: o.description, ID: o.number, - // imageName: o.image, inBrowser: ref.options.inBrowser, ui: ref.options.ui, options: o @@ -68890,7 +68887,6 @@ function InsertStep(ref, index, name, o) { for (var i in stepsArray) { let step = stepsArray[i]; ref.insertSteps(index + Number.parseInt(i), step['name'], step['options']); - // ref.addSteps(step['name'], step['options']); } } diff --git a/src/FormatInput.js b/src/FormatInput.js index 7fe38fd79b..0bcd63e656 100644 --- a/src/FormatInput.js +++ b/src/FormatInput.js @@ -97,7 +97,6 @@ function formatInput(args,format,images) { name: args[1], o: args[2] }); - // } } } diff --git a/src/InsertStep.js b/src/InsertStep.js index e351c96947..28c00bb068 100644 --- a/src/InsertStep.js +++ b/src/InsertStep.js @@ -20,7 +20,6 @@ function InsertStep(ref, index, name, o) { o.description = o_.description || moduleInfo.description; o.selector = o_.selector || 'ismod-' + name; o.container = o_.container || ref.options.selector; - // o.image = image; o.inBrowser = ref.options.inBrowser; if (index == -1) index = ref.steps.length; @@ -29,7 +28,6 @@ function InsertStep(ref, index, name, o) { name: o.name, description: o.description, ID: o.number, - // imageName: o.image, inBrowser: ref.options.inBrowser, ui: ref.options.ui, options: o @@ -41,7 +39,6 @@ function InsertStep(ref, index, name, o) { for (var i in stepsArray) { let step = stepsArray[i]; ref.insertSteps(index + Number.parseInt(i), step['name'], step['options']); - // ref.addSteps(step['name'], step['options']); } } diff --git a/test/core/modules/benchmark.js b/test/core/modules/benchmark.js index b5aa35fddc..233b0cb083 100644 --- a/test/core/modules/benchmark.js +++ b/test/core/modules/benchmark.js @@ -27,7 +27,6 @@ test('benchmark all modules', function(t) { var end = Date.now(); console.log("Module " + mods[0] + " ran in: " + (end - global.start) + " milliseconds"); mods.splice(0, 1); - // sequencer.removeSteps(sequencer.images.image1.steps.length - 1); if (mods.length > 1) { //Last one is test module, we need not benchmark it sequencer.steps[global.idx].output.src = image; global.idx++; diff --git a/test/core/modules/image-sequencer.js b/test/core/modules/image-sequencer.js index 0fe0477646..e471531964 100644 --- a/test/core/modules/image-sequencer.js +++ b/test/core/modules/image-sequencer.js @@ -81,14 +81,6 @@ test('loadImage works too.', function(t) { t.end(); }); -// test('addSteps("image","name") adds a step', function(t) { -// sequencer.addSteps('test', 'channel'); -// t.equal(sequencer.steps.length, 2, "Length of steps increased") -// t.equal(sequencer.steps[1].options.name, "channel", "Correct Step Added"); -// t.equal(sequencer.steps[1].options.description, "Displays only one color channel of an image -- default is green", "Step description shown"); -// t.end(); -// }); - test('addSteps("name") adds a step', function(t) { sequencer.addSteps('channel'); t.equal(sequencer.steps.length, 2, "Length of steps increased"); @@ -111,12 +103,6 @@ test('addSteps("name",o) adds a step', function(t) { t.end(); }); -// test('addSteps("image","name",o) adds a step', function(t) { -// sequencer.addSteps('test', 'channel', {}); -// t.equal(sequencer.images.test.steps.length, 7, "Length of steps increased"); -// t.equal(sequencer.images.test.steps[6].options.name, "channel", "Correct Step Added"); -// t.end(); -// }); test('removeSteps(position) removes a step', function(t) { sequencer.removeSteps( 1); @@ -130,12 +116,6 @@ test('removeSteps([positions]) removes steps', function(t) { t.end(); }); -// test('removeSteps(position) removes steps', function(t) { -// sequencer.removeSteps([1, 2]); -// t.equal(sequencer.images.test.steps.length, 2, "Length of steps reduced"); -// t.end(); -// }); - test('insertSteps(position,"module",options) inserts a step', function(t) { sequencer.insertSteps( 1, 'channel', {}); t.equal(sequencer.steps.length, 3, "Length of Steps increased"); @@ -150,19 +130,6 @@ test('insertSteps(position,"module") inserts a step', function(t) { t.end(); }); -// test('insertSteps(position,"module") inserts a step', function(t) { -// sequencer.insertSteps(1, 'channel'); -// t.equal(sequencer.images.test.steps.length, 5, "Length of Steps increased"); -// t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); -// t.end(); -// }); - -// test('insertSteps({image: {index: index, name: "module", o: options} }) inserts a step', function(t) { -// sequencer.insertSteps({ test: { index: 1, name: 'channel', o: {} } }); -// t.equal(sequencer.images.test.steps.length, 6, "Length of Steps increased"); -// t.equal(sequencer.images.test.steps[1].options.name, "channel", "Correct Step Inserted"); -// t.end(); -// }); test('getSteps() returns correct array of steps', function(t){ From ca3706ee0da355159a7dfa2c5519cf302831b22a Mon Sep 17 00:00:00 2001 From: Divy123 Date: Tue, 12 Mar 2019 21:45:26 +0530 Subject: [PATCH 5/6] Indentation improved --- examples/demo.js | 9 ++++----- src/Run.js | 6 +++--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/examples/demo.js b/examples/demo.js index 5f2b5b6623..d3c81c086d 100644 --- a/examples/demo.js +++ b/examples/demo.js @@ -191,9 +191,9 @@ window.onload = function() { step.output.src = reader.result; sequencer.run({ index: 0 }); if(typeof step.options !=="undefined") - step.options.step.imgElement.src = reader.result; + step.options.step.imgElement.src = reader.result; else - step.imgElement.src = reader.result; + step.imgElement.src = reader.result; insertPreview.updatePreviews(reader.result,'addStep'); insertPreview.updatePreviews(sequencer.steps[0].imgElement.src,'insertStep'); }, @@ -201,11 +201,10 @@ window.onload = function() { var step = sequencer.steps[0]; step.output.src = url; sequencer.run({ index: 0 }); - if(typeof step.options !=="undefined"){ + if(typeof step.options !=="undefined") step.options.step.imgElement.src = url; - } else - step.imgElement.src = url; + step.imgElement.src = url; insertPreview.updatePreviews(url,'addStep'); insertPreview.updatePreviews(sequencer.steps[0].imgElement.src,'insertStep'); } diff --git a/src/Run.js b/src/Run.js index 08af2ec096..54c5b2c30b 100644 --- a/src/Run.js +++ b/src/Run.js @@ -57,9 +57,9 @@ function Run(ref, json_q, callback, ind, progressObj) { } function drawSteps(json_q) { - var drawarray = []; - var no_steps = ref.steps.length; - var init = json_q[0]; + var drawarray = [], + no_steps = ref.steps.length, + init = json_q[0]; for (var i = 0; i < no_steps - init; i++) { drawarray.push({i: init + i }); } From 512651e64ec068612b00eeae49f41df6e10239fc Mon Sep 17 00:00:00 2001 From: Divy123 Date: Wed, 13 Mar 2019 01:17:40 +0530 Subject: [PATCH 6/6] Update README.md --- README.md | 186 ++++++++++-------------------------------------------- 1 file changed, 32 insertions(+), 154 deletions(-) diff --git a/README.md b/README.md index f3f7404131..42c056a81a 100644 --- a/README.md +++ b/README.md @@ -330,12 +330,11 @@ Methods can be chained on the Image Sequencer: * run() can not be in the middle of the chain. * If the chain starts with loadImage() or loadImages(), the following methods are applied only to the newly loaded images. -* If no name is provided to the image, a name will be generated for it. The name will -be of the form "image". For Ex: "image1", "image2", "image3", etc. + Valid Chains: ```js -sequencer.loadImage('red',function(){ +sequencer.loadImage(function(){ this.addSteps('invert').run(function(out){ //do something with ouptut. }); @@ -350,152 +349,6 @@ sequencer.addSteps('invert').run().addSteps('ndvi-red'); ``` -## Multiple Images -Image Sequencer is capable of handling multiple images at once. - -### Initializing a sequencer with multiple images. -This is just like before. -```js -var sequencer = ImageSequencer(); -``` - -### Loading Multiple Images into the Sequencer - -Multiple images can be loaded by the method `loadImages`. Everything is the same, -except that now, a unique identification called `image_name` has to be provided -with each image. This is a string literal. - -* 3/2 parameters : - ```js - sequencer.loadImages(image_name, - image_src,optional_callback); - ``` -* 1/2 parameters (JSON) : - ```js - sequencer.loadImages({ - images: { - image1_name: image_src, - image2_name: image_src, - ... - }, - callback: optional_callback - }); - ``` - -return value: **none** - - -### Adding Steps on Multiple Images - -The same method `addSteps` is used for this. There's just a slight obvious change -in the syntax that the image name has to be supplied too. `image_name` as well as, -`module_name` in the following examples can be either strings or arrays of strings. - -```js -sequencer.addSteps(image_name,module_name,optional_options); -``` - -If no Image Name is specified, the module is added to **all** images. - -```js -sequencer.addSteps(module_name,optional_options); -``` - -All this can be passed in as JSON: - -```js -sequencer.addSteps({ - image1_name: {name: module_name, o: optional_options}, - image2_name: {name: module_name, o: optional_options}, - ... -}); -``` - -return value: **`sequencer`** (To allow method chaining) - - -### Running a Sequencer with multiple images - -The same `run` method can be used with a slight change in syntax. -The `run` method accepts parameters `image` and `from`. `from` is the index from -where the function starts generating output. By default, it will run across all -the steps. (from = 1) If no image is specified, the sequencer will be run over **all -the images**. `image_name` may be an array of image names. - -```js -sequencer.run(); //All images from first step -``` - -```js -sequencer.run(image_name,from); //Image 'image' from 'from' -``` - -The `run` method also accepts an optional callback just like before: - -```js - sequencer.run(image_name,from,function(out){ - // This gets called back. - // "out" is the DataURL of final image. - }); -``` - -JSON input is also acceptable. - -```js -sequencer.run({ - image1_name: from, - image2_name: from, - ... -}); -``` - -return value: **`sequencer`** (To allow method chaining) - - -### Removing Steps from an Image - -Similarly, `removeSteps` can also accept an `image_name` parameter. Either, both, -or none of `image_name` and `steps` them may be an array. JSON input is also acceptable. - -```js -sequencer.removeSteps("image_name",[steps]); -``` - -```js -sequencer.removeSteps("image_name",step); -``` - -```js -sequencer.removeSteps({ - image1_name: [steps], - image2_name: [steps], - ... -}); -``` -return value: **`sequencer`** (To allow method chaining) - - -### Inserting steps on an image - -The `insertSteps` method can also accept an `image_name` parameter. `image_name` -may be an array. Everything else remains the same. JSON Input is acceptable too. - -```js -sequencer.insertSteps("image",index,"module_name",o); -``` -```js -sequencer.insertSteps([image],index,"module_name",o); -``` -```js -sequencer.insertSteps({ - image1: [ - {index:index1, name: module_name1, o:optional_options1}, - {index:index2, name: module_name2, o:optional_options2}, - ... - ] -}); -``` -return value: **`sequencer`** (To allow method chaining) ## Fetching current steps @@ -619,12 +472,37 @@ sequencer.setUI({ }); ``` -Note: `identity.imageName` is the "name" of that particular image. This name can -be specified while loading the image via `sequencer.loadImage("name","SRC")`. If -not specified, the name of a loaded image defaults to a name like "image1", -"image2", et cetra. +## Using multiple images on same sequencer: + +Image Sequencer object supports one imageURL at a time. + +Adding a seccond image to same sequencer will result to adding same set of steps added to prior image and flushing out the previous one. + +```js +s1 = new ImageSequencer(...); +s1.loadImage(url1); +s1.addSteps('blur'); +s1.run(); +s1.addImage(url2); +s1.run(); +``` +However if we want to use more than one image, we can either initialize a sequencer for each image like: + +```js +sequencer1 = new ImageSequencer(...); +sequencer1.loadImage(...); +sequencer1.addSteps(steps); +sequencer1.run(); + +sequencer2 = new ImageSequencer(...); +sequencer2.loadImage(...); +sequencer2.addSteps(steps); +sequencer2.run(); +``` + + -Details of all modules can be sought using `sequencer.modulesInfo()`. +**Note**: Details of all modules can be sought using `sequencer.modulesInfo()`. This method returns an object which defines the name and inputs of the modules. If a module name (hyphenated) is passed in the method, then only the details of that module are returned. The `notify` function takes two parameters `msg` and `id`, former being the message to be displayed on console (in case of CLI and node ) and a HTML component(in browser). The id is optional and is useful for HTML interface to give appropriate IDs.