diff --git a/app/index.js b/app/index.js index 78b9e08..9be266d 100644 --- a/app/index.js +++ b/app/index.js @@ -1,9 +1,20 @@ // let ComicBook = window.ComicBook = require('./comic-book') let Canvas = require('./view/canvas') -let makeImages = require('../test/data/image') +let testImages = require('../test/data') +let fixtureImages = require('../test/fixture') +let imagediff = require('imagediff') -makeImages((testImages) => { - let canvas = new Canvas() - canvas.drawImage(testImages.portrait1) - document.body.appendChild(canvas.canvas) +testImages.portrait1((testImage) => { + fixtureImages.singlePortrait((fixtureImage) => { + let canvas = new Canvas() + canvas.drawImage(testImage) + + console.log(imagediff.equal(canvas.canvas, fixtureImage)) + + console.log(testImage.width, testImage.height) + console.log(fixtureImage.width, fixtureImage.height) + console.log(canvas.canvas.width, canvas.canvas.height) + + document.body.appendChild(canvas.canvas) + }) }) diff --git a/dist/comicbook.js b/dist/comicbook.js index 8a10491..9cd79bb 100644 --- a/dist/comicbook.js +++ b/dist/comicbook.js @@ -3,15 +3,26 @@ 'use strict'; var Canvas = require('./view/canvas'); -var makeImages = require('../test/data/image'); +var testImages = require('../test/data'); +var fixtureImages = require('../test/fixture'); +var imagediff = require('imagediff'); -makeImages(function (testImages) { - var canvas = new Canvas(); - canvas.drawImage(testImages.portrait1); - document.body.appendChild(canvas.canvas); +testImages.portrait1(function (testImage) { + fixtureImages.singlePortrait(function (fixtureImage) { + var canvas = new Canvas(); + canvas.drawImage(testImage); + + console.log(imagediff.equal(canvas.canvas, fixtureImage)); + + console.log(testImage.width, testImage.height); + console.log(fixtureImage.width, fixtureImage.height); + console.log(canvas.canvas.width, canvas.canvas.height); + + document.body.appendChild(canvas.canvas); + }); }); -},{"../test/data/image":25,"./view/canvas":3}],2:[function(require,module,exports){ +},{"../test/data":32,"../test/fixture":34,"./view/canvas":3,"imagediff":30}],2:[function(require,module,exports){ "use strict"; module.exports = function makeImage(src, cb) { @@ -140,15 +151,15 @@ var Canvas = (function (_EventEmitter) { module.exports = Canvas; -},{"babel-runtime/core-js/object/assign":4,"babel-runtime/helpers/class-call-check":8,"babel-runtime/helpers/create-class":9,"babel-runtime/helpers/get":10,"babel-runtime/helpers/inherits":11,"events":24}],4:[function(require,module,exports){ +},{"babel-runtime/core-js/object/assign":4,"babel-runtime/helpers/class-call-check":8,"babel-runtime/helpers/create-class":9,"babel-runtime/helpers/get":10,"babel-runtime/helpers/inherits":11,"events":27}],4:[function(require,module,exports){ module.exports = { "default": require("core-js/library/fn/object/assign"), __esModule: true }; -},{"core-js/library/fn/object/assign":12}],5:[function(require,module,exports){ +},{"core-js/library/fn/object/assign":15}],5:[function(require,module,exports){ module.exports = { "default": require("core-js/library/fn/object/create"), __esModule: true }; -},{"core-js/library/fn/object/create":13}],6:[function(require,module,exports){ +},{"core-js/library/fn/object/create":16}],6:[function(require,module,exports){ module.exports = { "default": require("core-js/library/fn/object/define-property"), __esModule: true }; -},{"core-js/library/fn/object/define-property":14}],7:[function(require,module,exports){ +},{"core-js/library/fn/object/define-property":17}],7:[function(require,module,exports){ module.exports = { "default": require("core-js/library/fn/object/get-own-property-descriptor"), __esModule: true }; -},{"core-js/library/fn/object/get-own-property-descriptor":15}],8:[function(require,module,exports){ +},{"core-js/library/fn/object/get-own-property-descriptor":18}],8:[function(require,module,exports){ "use strict"; exports["default"] = function (instance, Constructor) { @@ -251,25 +262,1592 @@ exports["default"] = function (subClass, superClass) { exports.__esModule = true; },{"babel-runtime/core-js/object/create":5}],12:[function(require,module,exports){ +var lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + +;(function (exports) { + 'use strict'; + + var Arr = (typeof Uint8Array !== 'undefined') + ? Uint8Array + : Array + + var PLUS = '+'.charCodeAt(0) + var SLASH = '/'.charCodeAt(0) + var NUMBER = '0'.charCodeAt(0) + var LOWER = 'a'.charCodeAt(0) + var UPPER = 'A'.charCodeAt(0) + var PLUS_URL_SAFE = '-'.charCodeAt(0) + var SLASH_URL_SAFE = '_'.charCodeAt(0) + + function decode (elt) { + var code = elt.charCodeAt(0) + if (code === PLUS || + code === PLUS_URL_SAFE) + return 62 // '+' + if (code === SLASH || + code === SLASH_URL_SAFE) + return 63 // '/' + if (code < NUMBER) + return -1 //no match + if (code < NUMBER + 10) + return code - NUMBER + 26 + 26 + if (code < UPPER + 26) + return code - UPPER + if (code < LOWER + 26) + return code - LOWER + 26 + } + + function b64ToByteArray (b64) { + var i, j, l, tmp, placeHolders, arr + + if (b64.length % 4 > 0) { + throw new Error('Invalid string. Length must be a multiple of 4') + } + + // the number of equal signs (place holders) + // if there are two placeholders, than the two characters before it + // represent one byte + // if there is only one, then the three characters before it represent 2 bytes + // this is just a cheap hack to not do indexOf twice + var len = b64.length + placeHolders = '=' === b64.charAt(len - 2) ? 2 : '=' === b64.charAt(len - 1) ? 1 : 0 + + // base64 is 4/3 + up to two characters of the original data + arr = new Arr(b64.length * 3 / 4 - placeHolders) + + // if there are placeholders, only get up to the last complete 4 chars + l = placeHolders > 0 ? b64.length - 4 : b64.length + + var L = 0 + + function push (v) { + arr[L++] = v + } + + for (i = 0, j = 0; i < l; i += 4, j += 3) { + tmp = (decode(b64.charAt(i)) << 18) | (decode(b64.charAt(i + 1)) << 12) | (decode(b64.charAt(i + 2)) << 6) | decode(b64.charAt(i + 3)) + push((tmp & 0xFF0000) >> 16) + push((tmp & 0xFF00) >> 8) + push(tmp & 0xFF) + } + + if (placeHolders === 2) { + tmp = (decode(b64.charAt(i)) << 2) | (decode(b64.charAt(i + 1)) >> 4) + push(tmp & 0xFF) + } else if (placeHolders === 1) { + tmp = (decode(b64.charAt(i)) << 10) | (decode(b64.charAt(i + 1)) << 4) | (decode(b64.charAt(i + 2)) >> 2) + push((tmp >> 8) & 0xFF) + push(tmp & 0xFF) + } + + return arr + } + + function uint8ToBase64 (uint8) { + var i, + extraBytes = uint8.length % 3, // if we have 1 byte left, pad 2 bytes + output = "", + temp, length + + function encode (num) { + return lookup.charAt(num) + } + + function tripletToBase64 (num) { + return encode(num >> 18 & 0x3F) + encode(num >> 12 & 0x3F) + encode(num >> 6 & 0x3F) + encode(num & 0x3F) + } + + // go through the array every three bytes, we'll deal with trailing stuff later + for (i = 0, length = uint8.length - extraBytes; i < length; i += 3) { + temp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2]) + output += tripletToBase64(temp) + } + + // pad the end with zeros, but make sure to not forget the extra bytes + switch (extraBytes) { + case 1: + temp = uint8[uint8.length - 1] + output += encode(temp >> 2) + output += encode((temp << 4) & 0x3F) + output += '==' + break + case 2: + temp = (uint8[uint8.length - 2] << 8) + (uint8[uint8.length - 1]) + output += encode(temp >> 10) + output += encode((temp >> 4) & 0x3F) + output += encode((temp << 2) & 0x3F) + output += '=' + break + } + + return output + } + + exports.toByteArray = b64ToByteArray + exports.fromByteArray = uint8ToBase64 +}(typeof exports === 'undefined' ? (this.base64js = {}) : exports)) + +},{}],13:[function(require,module,exports){ + +},{}],14:[function(require,module,exports){ +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ + +var base64 = require('base64-js') +var ieee754 = require('ieee754') +var isArray = require('is-array') + +exports.Buffer = Buffer +exports.SlowBuffer = SlowBuffer +exports.INSPECT_MAX_BYTES = 50 +Buffer.poolSize = 8192 // not used by this implementation + +var rootParent = {} + +/** + * If `Buffer.TYPED_ARRAY_SUPPORT`: + * === true Use Uint8Array implementation (fastest) + * === false Use Object implementation (most compatible, even IE6) + * + * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, + * Opera 11.6+, iOS 4.2+. + * + * Note: + * + * - Implementation must support adding new properties to `Uint8Array` instances. + * Firefox 4-29 lacked support, fixed in Firefox 30+. + * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438. + * + * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function. + * + * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of + * incorrect length in some situations. + * + * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they will + * get the Object implementation, which is slower but will work correctly. + */ +Buffer.TYPED_ARRAY_SUPPORT = (function () { + function Foo () {} + try { + var buf = new ArrayBuffer(0) + var arr = new Uint8Array(buf) + arr.foo = function () { return 42 } + arr.constructor = Foo + return arr.foo() === 42 && // typed array instances can be augmented + arr.constructor === Foo && // constructor can be set + typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray` + new Uint8Array(1).subarray(1, 1).byteLength === 0 // ie10 has broken `subarray` + } catch (e) { + return false + } +})() + +function kMaxLength () { + return Buffer.TYPED_ARRAY_SUPPORT + ? 0x7fffffff + : 0x3fffffff +} + +/** + * Class: Buffer + * ============= + * + * The Buffer constructor returns instances of `Uint8Array` that are augmented + * with function properties for all the node `Buffer` API functions. We use + * `Uint8Array` so that square bracket notation works as expected -- it returns + * a single octet. + * + * By augmenting the instances, we can avoid modifying the `Uint8Array` + * prototype. + */ +function Buffer (arg) { + if (!(this instanceof Buffer)) { + // Avoid going through an ArgumentsAdaptorTrampoline in the common case. + if (arguments.length > 1) return new Buffer(arg, arguments[1]) + return new Buffer(arg) + } + + this.length = 0 + this.parent = undefined + + // Common case. + if (typeof arg === 'number') { + return fromNumber(this, arg) + } + + // Slightly less common case. + if (typeof arg === 'string') { + return fromString(this, arg, arguments.length > 1 ? arguments[1] : 'utf8') + } + + // Unusual. + return fromObject(this, arg) +} + +function fromNumber (that, length) { + that = allocate(that, length < 0 ? 0 : checked(length) | 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) { + for (var i = 0; i < length; i++) { + that[i] = 0 + } + } + return that +} + +function fromString (that, string, encoding) { + if (typeof encoding !== 'string' || encoding === '') encoding = 'utf8' + + // Assumption: byteLength() return value is always < kMaxLength. + var length = byteLength(string, encoding) | 0 + that = allocate(that, length) + + that.write(string, encoding) + return that +} + +function fromObject (that, object) { + if (Buffer.isBuffer(object)) return fromBuffer(that, object) + + if (isArray(object)) return fromArray(that, object) + + if (object == null) { + throw new TypeError('must start with number, buffer, array or string') + } + + if (typeof ArrayBuffer !== 'undefined' && object.buffer instanceof ArrayBuffer) { + return fromTypedArray(that, object) + } + + if (object.length) return fromArrayLike(that, object) + + return fromJsonObject(that, object) +} + +function fromBuffer (that, buffer) { + var length = checked(buffer.length) | 0 + that = allocate(that, length) + buffer.copy(that, 0, 0, length) + return that +} + +function fromArray (that, array) { + var length = checked(array.length) | 0 + that = allocate(that, length) + for (var i = 0; i < length; i += 1) { + that[i] = array[i] & 255 + } + return that +} + +// Duplicate of fromArray() to keep fromArray() monomorphic. +function fromTypedArray (that, array) { + var length = checked(array.length) | 0 + that = allocate(that, length) + // Truncating the elements is probably not what people expect from typed + // arrays with BYTES_PER_ELEMENT > 1 but it's compatible with the behavior + // of the old Buffer constructor. + for (var i = 0; i < length; i += 1) { + that[i] = array[i] & 255 + } + return that +} + +function fromArrayLike (that, array) { + var length = checked(array.length) | 0 + that = allocate(that, length) + for (var i = 0; i < length; i += 1) { + that[i] = array[i] & 255 + } + return that +} + +// Deserialize { type: 'Buffer', data: [1,2,3,...] } into a Buffer object. +// Returns a zero-length buffer for inputs that don't conform to the spec. +function fromJsonObject (that, object) { + var array + var length = 0 + + if (object.type === 'Buffer' && isArray(object.data)) { + array = object.data + length = checked(array.length) | 0 + } + that = allocate(that, length) + + for (var i = 0; i < length; i += 1) { + that[i] = array[i] & 255 + } + return that +} + +function allocate (that, length) { + if (Buffer.TYPED_ARRAY_SUPPORT) { + // Return an augmented `Uint8Array` instance, for best performance + that = Buffer._augment(new Uint8Array(length)) + } else { + // Fallback: Return an object instance of the Buffer class + that.length = length + that._isBuffer = true + } + + var fromPool = length !== 0 && length <= Buffer.poolSize >>> 1 + if (fromPool) that.parent = rootParent + + return that +} + +function checked (length) { + // Note: cannot use `length < kMaxLength` here because that fails when + // length is NaN (which is otherwise coerced to zero.) + if (length >= kMaxLength()) { + throw new RangeError('Attempt to allocate Buffer larger than maximum ' + + 'size: 0x' + kMaxLength().toString(16) + ' bytes') + } + return length | 0 +} + +function SlowBuffer (subject, encoding) { + if (!(this instanceof SlowBuffer)) return new SlowBuffer(subject, encoding) + + var buf = new Buffer(subject, encoding) + delete buf.parent + return buf +} + +Buffer.isBuffer = function isBuffer (b) { + return !!(b != null && b._isBuffer) +} + +Buffer.compare = function compare (a, b) { + if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { + throw new TypeError('Arguments must be Buffers') + } + + if (a === b) return 0 + + var x = a.length + var y = b.length + + var i = 0 + var len = Math.min(x, y) + while (i < len) { + if (a[i] !== b[i]) break + + ++i + } + + if (i !== len) { + x = a[i] + y = b[i] + } + + if (x < y) return -1 + if (y < x) return 1 + return 0 +} + +Buffer.isEncoding = function isEncoding (encoding) { + switch (String(encoding).toLowerCase()) { + case 'hex': + case 'utf8': + case 'utf-8': + case 'ascii': + case 'binary': + case 'base64': + case 'raw': + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return true + default: + return false + } +} + +Buffer.concat = function concat (list, length) { + if (!isArray(list)) throw new TypeError('list argument must be an Array of Buffers.') + + if (list.length === 0) { + return new Buffer(0) + } else if (list.length === 1) { + return list[0] + } + + var i + if (length === undefined) { + length = 0 + for (i = 0; i < list.length; i++) { + length += list[i].length + } + } + + var buf = new Buffer(length) + var pos = 0 + for (i = 0; i < list.length; i++) { + var item = list[i] + item.copy(buf, pos) + pos += item.length + } + return buf +} + +function byteLength (string, encoding) { + if (typeof string !== 'string') string = '' + string + + var len = string.length + if (len === 0) return 0 + + // Use a for loop to avoid recursion + var loweredCase = false + for (;;) { + switch (encoding) { + case 'ascii': + case 'binary': + // Deprecated + case 'raw': + case 'raws': + return len + case 'utf8': + case 'utf-8': + return utf8ToBytes(string).length + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return len * 2 + case 'hex': + return len >>> 1 + case 'base64': + return base64ToBytes(string).length + default: + if (loweredCase) return utf8ToBytes(string).length // assume utf8 + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } +} +Buffer.byteLength = byteLength + +// pre-set for values that may exist in the future +Buffer.prototype.length = undefined +Buffer.prototype.parent = undefined + +function slowToString (encoding, start, end) { + var loweredCase = false + + start = start | 0 + end = end === undefined || end === Infinity ? this.length : end | 0 + + if (!encoding) encoding = 'utf8' + if (start < 0) start = 0 + if (end > this.length) end = this.length + if (end <= start) return '' + + while (true) { + switch (encoding) { + case 'hex': + return hexSlice(this, start, end) + + case 'utf8': + case 'utf-8': + return utf8Slice(this, start, end) + + case 'ascii': + return asciiSlice(this, start, end) + + case 'binary': + return binarySlice(this, start, end) + + case 'base64': + return base64Slice(this, start, end) + + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return utf16leSlice(this, start, end) + + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = (encoding + '').toLowerCase() + loweredCase = true + } + } +} + +Buffer.prototype.toString = function toString () { + var length = this.length | 0 + if (length === 0) return '' + if (arguments.length === 0) return utf8Slice(this, 0, length) + return slowToString.apply(this, arguments) +} + +Buffer.prototype.equals = function equals (b) { + if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') + if (this === b) return true + return Buffer.compare(this, b) === 0 +} + +Buffer.prototype.inspect = function inspect () { + var str = '' + var max = exports.INSPECT_MAX_BYTES + if (this.length > 0) { + str = this.toString('hex', 0, max).match(/.{2}/g).join(' ') + if (this.length > max) str += ' ... ' + } + return '' +} + +Buffer.prototype.compare = function compare (b) { + if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') + if (this === b) return 0 + return Buffer.compare(this, b) +} + +Buffer.prototype.indexOf = function indexOf (val, byteOffset) { + if (byteOffset > 0x7fffffff) byteOffset = 0x7fffffff + else if (byteOffset < -0x80000000) byteOffset = -0x80000000 + byteOffset >>= 0 + + if (this.length === 0) return -1 + if (byteOffset >= this.length) return -1 + + // Negative offsets start from the end of the buffer + if (byteOffset < 0) byteOffset = Math.max(this.length + byteOffset, 0) + + if (typeof val === 'string') { + if (val.length === 0) return -1 // special case: looking for empty string always fails + return String.prototype.indexOf.call(this, val, byteOffset) + } + if (Buffer.isBuffer(val)) { + return arrayIndexOf(this, val, byteOffset) + } + if (typeof val === 'number') { + if (Buffer.TYPED_ARRAY_SUPPORT && Uint8Array.prototype.indexOf === 'function') { + return Uint8Array.prototype.indexOf.call(this, val, byteOffset) + } + return arrayIndexOf(this, [ val ], byteOffset) + } + + function arrayIndexOf (arr, val, byteOffset) { + var foundIndex = -1 + for (var i = 0; byteOffset + i < arr.length; i++) { + if (arr[byteOffset + i] === val[foundIndex === -1 ? 0 : i - foundIndex]) { + if (foundIndex === -1) foundIndex = i + if (i - foundIndex + 1 === val.length) return byteOffset + foundIndex + } else { + foundIndex = -1 + } + } + return -1 + } + + throw new TypeError('val must be string, number or Buffer') +} + +// `get` will be removed in Node 0.13+ +Buffer.prototype.get = function get (offset) { + console.log('.get() is deprecated. Access using array indexes instead.') + return this.readUInt8(offset) +} + +// `set` will be removed in Node 0.13+ +Buffer.prototype.set = function set (v, offset) { + console.log('.set() is deprecated. Access using array indexes instead.') + return this.writeUInt8(v, offset) +} + +function hexWrite (buf, string, offset, length) { + offset = Number(offset) || 0 + var remaining = buf.length - offset + if (!length) { + length = remaining + } else { + length = Number(length) + if (length > remaining) { + length = remaining + } + } + + // must be an even number of digits + var strLen = string.length + if (strLen % 2 !== 0) throw new Error('Invalid hex string') + + if (length > strLen / 2) { + length = strLen / 2 + } + for (var i = 0; i < length; i++) { + var parsed = parseInt(string.substr(i * 2, 2), 16) + if (isNaN(parsed)) throw new Error('Invalid hex string') + buf[offset + i] = parsed + } + return i +} + +function utf8Write (buf, string, offset, length) { + return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) +} + +function asciiWrite (buf, string, offset, length) { + return blitBuffer(asciiToBytes(string), buf, offset, length) +} + +function binaryWrite (buf, string, offset, length) { + return asciiWrite(buf, string, offset, length) +} + +function base64Write (buf, string, offset, length) { + return blitBuffer(base64ToBytes(string), buf, offset, length) +} + +function ucs2Write (buf, string, offset, length) { + return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) +} + +Buffer.prototype.write = function write (string, offset, length, encoding) { + // Buffer#write(string) + if (offset === undefined) { + encoding = 'utf8' + length = this.length + offset = 0 + // Buffer#write(string, encoding) + } else if (length === undefined && typeof offset === 'string') { + encoding = offset + length = this.length + offset = 0 + // Buffer#write(string, offset[, length][, encoding]) + } else if (isFinite(offset)) { + offset = offset | 0 + if (isFinite(length)) { + length = length | 0 + if (encoding === undefined) encoding = 'utf8' + } else { + encoding = length + length = undefined + } + // legacy write(string, encoding, offset, length) - remove in v0.13 + } else { + var swap = encoding + encoding = offset + offset = length | 0 + length = swap + } + + var remaining = this.length - offset + if (length === undefined || length > remaining) length = remaining + + if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { + throw new RangeError('attempt to write outside buffer bounds') + } + + if (!encoding) encoding = 'utf8' + + var loweredCase = false + for (;;) { + switch (encoding) { + case 'hex': + return hexWrite(this, string, offset, length) + + case 'utf8': + case 'utf-8': + return utf8Write(this, string, offset, length) + + case 'ascii': + return asciiWrite(this, string, offset, length) + + case 'binary': + return binaryWrite(this, string, offset, length) + + case 'base64': + // Warning: maxLength not taken into account in base64Write + return base64Write(this, string, offset, length) + + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return ucs2Write(this, string, offset, length) + + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } +} + +Buffer.prototype.toJSON = function toJSON () { + return { + type: 'Buffer', + data: Array.prototype.slice.call(this._arr || this, 0) + } +} + +function base64Slice (buf, start, end) { + if (start === 0 && end === buf.length) { + return base64.fromByteArray(buf) + } else { + return base64.fromByteArray(buf.slice(start, end)) + } +} + +function utf8Slice (buf, start, end) { + var res = '' + var tmp = '' + end = Math.min(buf.length, end) + + for (var i = start; i < end; i++) { + if (buf[i] <= 0x7F) { + res += decodeUtf8Char(tmp) + String.fromCharCode(buf[i]) + tmp = '' + } else { + tmp += '%' + buf[i].toString(16) + } + } + + return res + decodeUtf8Char(tmp) +} + +function asciiSlice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) + + for (var i = start; i < end; i++) { + ret += String.fromCharCode(buf[i] & 0x7F) + } + return ret +} + +function binarySlice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) + + for (var i = start; i < end; i++) { + ret += String.fromCharCode(buf[i]) + } + return ret +} + +function hexSlice (buf, start, end) { + var len = buf.length + + if (!start || start < 0) start = 0 + if (!end || end < 0 || end > len) end = len + + var out = '' + for (var i = start; i < end; i++) { + out += toHex(buf[i]) + } + return out +} + +function utf16leSlice (buf, start, end) { + var bytes = buf.slice(start, end) + var res = '' + for (var i = 0; i < bytes.length; i += 2) { + res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256) + } + return res +} + +Buffer.prototype.slice = function slice (start, end) { + var len = this.length + start = ~~start + end = end === undefined ? len : ~~end + + if (start < 0) { + start += len + if (start < 0) start = 0 + } else if (start > len) { + start = len + } + + if (end < 0) { + end += len + if (end < 0) end = 0 + } else if (end > len) { + end = len + } + + if (end < start) end = start + + var newBuf + if (Buffer.TYPED_ARRAY_SUPPORT) { + newBuf = Buffer._augment(this.subarray(start, end)) + } else { + var sliceLen = end - start + newBuf = new Buffer(sliceLen, undefined) + for (var i = 0; i < sliceLen; i++) { + newBuf[i] = this[i + start] + } + } + + if (newBuf.length) newBuf.parent = this.parent || this + + return newBuf +} + +/* + * Need to make sure that buffer isn't trying to write out of bounds. + */ +function checkOffset (offset, ext, length) { + if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') + if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') +} + +Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul + } + + return val +} + +Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + checkOffset(offset, byteLength, this.length) + } + + var val = this[offset + --byteLength] + var mul = 1 + while (byteLength > 0 && (mul *= 0x100)) { + val += this[offset + --byteLength] * mul + } + + return val +} + +Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + return this[offset] +} + +Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return this[offset] | (this[offset + 1] << 8) +} + +Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return (this[offset] << 8) | this[offset + 1] +} + +Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return ((this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16)) + + (this[offset + 3] * 0x1000000) +} + +Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] * 0x1000000) + + ((this[offset + 1] << 16) | + (this[offset + 2] << 8) | + this[offset + 3]) +} + +Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul + } + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val +} + +Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var i = byteLength + var mul = 1 + var val = this[offset + --i] + while (i > 0 && (mul *= 0x100)) { + val += this[offset + --i] * mul + } + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val +} + +Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + if (!(this[offset] & 0x80)) return (this[offset]) + return ((0xff - this[offset] + 1) * -1) +} + +Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset] | (this[offset + 1] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val +} + +Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset + 1] | (this[offset] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val +} + +Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16) | + (this[offset + 3] << 24) +} + +Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] << 24) | + (this[offset + 1] << 16) | + (this[offset + 2] << 8) | + (this[offset + 3]) +} + +Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, true, 23, 4) +} + +Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, false, 23, 4) +} + +Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, true, 52, 8) +} + +Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, false, 52, 8) +} + +function checkInt (buf, value, offset, ext, max, min) { + if (!Buffer.isBuffer(buf)) throw new TypeError('buffer must be a Buffer instance') + if (value > max || value < min) throw new RangeError('value is out of bounds') + if (offset + ext > buf.length) throw new RangeError('index out of range') +} + +Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0) + + var mul = 1 + var i = 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF + } + + return offset + byteLength +} + +Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0) + + var i = byteLength - 1 + var mul = 1 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF + } + + return offset + byteLength +} + +Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + this[offset] = value + return offset + 1 +} + +function objectWriteUInt16 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; i++) { + buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>> + (littleEndian ? i : 1 - i) * 8 + } +} + +Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = value + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) + } + return offset + 2 +} + +Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = value + } else { + objectWriteUInt16(this, value, offset, false) + } + return offset + 2 +} + +function objectWriteUInt32 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffffffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; i++) { + buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff + } +} + +Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset + 3] = (value >>> 24) + this[offset + 2] = (value >>> 16) + this[offset + 1] = (value >>> 8) + this[offset] = value + } else { + objectWriteUInt32(this, value, offset, true) + } + return offset + 4 +} + +Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = value + } else { + objectWriteUInt32(this, value, offset, false) + } + return offset + 4 +} + +Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) + + checkInt(this, value, offset, byteLength, limit - 1, -limit) + } + + var i = 0 + var mul = 1 + var sub = value < 0 ? 1 : 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } + + return offset + byteLength +} + +Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) + + checkInt(this, value, offset, byteLength, limit - 1, -limit) + } + + var i = byteLength - 1 + var mul = 1 + var sub = value < 0 ? 1 : 0 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } + + return offset + byteLength +} + +Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + if (value < 0) value = 0xff + value + 1 + this[offset] = value + return offset + 1 +} + +Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = value + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) + } + return offset + 2 +} + +Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = value + } else { + objectWriteUInt16(this, value, offset, false) + } + return offset + 2 +} + +Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = value + this[offset + 1] = (value >>> 8) + this[offset + 2] = (value >>> 16) + this[offset + 3] = (value >>> 24) + } else { + objectWriteUInt32(this, value, offset, true) + } + return offset + 4 +} + +Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (value < 0) value = 0xffffffff + value + 1 + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = value + } else { + objectWriteUInt32(this, value, offset, false) + } + return offset + 4 +} + +function checkIEEE754 (buf, value, offset, ext, max, min) { + if (value > max || value < min) throw new RangeError('value is out of bounds') + if (offset + ext > buf.length) throw new RangeError('index out of range') + if (offset < 0) throw new RangeError('index out of range') +} + +function writeFloat (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) + } + ieee754.write(buf, value, offset, littleEndian, 23, 4) + return offset + 4 +} + +Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { + return writeFloat(this, value, offset, true, noAssert) +} + +Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { + return writeFloat(this, value, offset, false, noAssert) +} + +function writeDouble (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) + } + ieee754.write(buf, value, offset, littleEndian, 52, 8) + return offset + 8 +} + +Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { + return writeDouble(this, value, offset, true, noAssert) +} + +Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { + return writeDouble(this, value, offset, false, noAssert) +} + +// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) +Buffer.prototype.copy = function copy (target, targetStart, start, end) { + if (!start) start = 0 + if (!end && end !== 0) end = this.length + if (targetStart >= target.length) targetStart = target.length + if (!targetStart) targetStart = 0 + if (end > 0 && end < start) end = start + + // Copy 0 bytes; we're done + if (end === start) return 0 + if (target.length === 0 || this.length === 0) return 0 + + // Fatal error conditions + if (targetStart < 0) { + throw new RangeError('targetStart out of bounds') + } + if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds') + if (end < 0) throw new RangeError('sourceEnd out of bounds') + + // Are we oob? + if (end > this.length) end = this.length + if (target.length - targetStart < end - start) { + end = target.length - targetStart + start + } + + var len = end - start + + if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) { + for (var i = 0; i < len; i++) { + target[i + targetStart] = this[i + start] + } + } else { + target._set(this.subarray(start, start + len), targetStart) + } + + return len +} + +// fill(value, start=0, end=buffer.length) +Buffer.prototype.fill = function fill (value, start, end) { + if (!value) value = 0 + if (!start) start = 0 + if (!end) end = this.length + + if (end < start) throw new RangeError('end < start') + + // Fill 0 bytes; we're done + if (end === start) return + if (this.length === 0) return + + if (start < 0 || start >= this.length) throw new RangeError('start out of bounds') + if (end < 0 || end > this.length) throw new RangeError('end out of bounds') + + var i + if (typeof value === 'number') { + for (i = start; i < end; i++) { + this[i] = value + } + } else { + var bytes = utf8ToBytes(value.toString()) + var len = bytes.length + for (i = start; i < end; i++) { + this[i] = bytes[i % len] + } + } + + return this +} + +/** + * Creates a new `ArrayBuffer` with the *copied* memory of the buffer instance. + * Added in Node 0.12. Only available in browsers that support ArrayBuffer. + */ +Buffer.prototype.toArrayBuffer = function toArrayBuffer () { + if (typeof Uint8Array !== 'undefined') { + if (Buffer.TYPED_ARRAY_SUPPORT) { + return (new Buffer(this)).buffer + } else { + var buf = new Uint8Array(this.length) + for (var i = 0, len = buf.length; i < len; i += 1) { + buf[i] = this[i] + } + return buf.buffer + } + } else { + throw new TypeError('Buffer.toArrayBuffer not supported in this browser') + } +} + +// HELPER FUNCTIONS +// ================ + +var BP = Buffer.prototype + +/** + * Augment a Uint8Array *instance* (not the Uint8Array class!) with Buffer methods + */ +Buffer._augment = function _augment (arr) { + arr.constructor = Buffer + arr._isBuffer = true + + // save reference to original Uint8Array set method before overwriting + arr._set = arr.set + + // deprecated, will be removed in node 0.13+ + arr.get = BP.get + arr.set = BP.set + + arr.write = BP.write + arr.toString = BP.toString + arr.toLocaleString = BP.toString + arr.toJSON = BP.toJSON + arr.equals = BP.equals + arr.compare = BP.compare + arr.indexOf = BP.indexOf + arr.copy = BP.copy + arr.slice = BP.slice + arr.readUIntLE = BP.readUIntLE + arr.readUIntBE = BP.readUIntBE + arr.readUInt8 = BP.readUInt8 + arr.readUInt16LE = BP.readUInt16LE + arr.readUInt16BE = BP.readUInt16BE + arr.readUInt32LE = BP.readUInt32LE + arr.readUInt32BE = BP.readUInt32BE + arr.readIntLE = BP.readIntLE + arr.readIntBE = BP.readIntBE + arr.readInt8 = BP.readInt8 + arr.readInt16LE = BP.readInt16LE + arr.readInt16BE = BP.readInt16BE + arr.readInt32LE = BP.readInt32LE + arr.readInt32BE = BP.readInt32BE + arr.readFloatLE = BP.readFloatLE + arr.readFloatBE = BP.readFloatBE + arr.readDoubleLE = BP.readDoubleLE + arr.readDoubleBE = BP.readDoubleBE + arr.writeUInt8 = BP.writeUInt8 + arr.writeUIntLE = BP.writeUIntLE + arr.writeUIntBE = BP.writeUIntBE + arr.writeUInt16LE = BP.writeUInt16LE + arr.writeUInt16BE = BP.writeUInt16BE + arr.writeUInt32LE = BP.writeUInt32LE + arr.writeUInt32BE = BP.writeUInt32BE + arr.writeIntLE = BP.writeIntLE + arr.writeIntBE = BP.writeIntBE + arr.writeInt8 = BP.writeInt8 + arr.writeInt16LE = BP.writeInt16LE + arr.writeInt16BE = BP.writeInt16BE + arr.writeInt32LE = BP.writeInt32LE + arr.writeInt32BE = BP.writeInt32BE + arr.writeFloatLE = BP.writeFloatLE + arr.writeFloatBE = BP.writeFloatBE + arr.writeDoubleLE = BP.writeDoubleLE + arr.writeDoubleBE = BP.writeDoubleBE + arr.fill = BP.fill + arr.inspect = BP.inspect + arr.toArrayBuffer = BP.toArrayBuffer + + return arr +} + +var INVALID_BASE64_RE = /[^+\/0-9A-z\-]/g + +function base64clean (str) { + // Node strips out invalid characters like \n and \t from the string, base64-js does not + str = stringtrim(str).replace(INVALID_BASE64_RE, '') + // Node converts strings with length < 2 to '' + if (str.length < 2) return '' + // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not + while (str.length % 4 !== 0) { + str = str + '=' + } + return str +} + +function stringtrim (str) { + if (str.trim) return str.trim() + return str.replace(/^\s+|\s+$/g, '') +} + +function toHex (n) { + if (n < 16) return '0' + n.toString(16) + return n.toString(16) +} + +function utf8ToBytes (string, units) { + units = units || Infinity + var codePoint + var length = string.length + var leadSurrogate = null + var bytes = [] + var i = 0 + + for (; i < length; i++) { + codePoint = string.charCodeAt(i) + + // is surrogate component + if (codePoint > 0xD7FF && codePoint < 0xE000) { + // last char was a lead + if (leadSurrogate) { + // 2 leads in a row + if (codePoint < 0xDC00) { + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + leadSurrogate = codePoint + continue + } else { + // valid surrogate pair + codePoint = leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00 | 0x10000 + leadSurrogate = null + } + } else { + // no lead yet + + if (codePoint > 0xDBFF) { + // unexpected trail + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } else if (i + 1 === length) { + // unpaired lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } else { + // valid lead + leadSurrogate = codePoint + continue + } + } + } else if (leadSurrogate) { + // valid bmp char, but last char was a lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + leadSurrogate = null + } + + // encode utf8 + if (codePoint < 0x80) { + if ((units -= 1) < 0) break + bytes.push(codePoint) + } else if (codePoint < 0x800) { + if ((units -= 2) < 0) break + bytes.push( + codePoint >> 0x6 | 0xC0, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x10000) { + if ((units -= 3) < 0) break + bytes.push( + codePoint >> 0xC | 0xE0, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x200000) { + if ((units -= 4) < 0) break + bytes.push( + codePoint >> 0x12 | 0xF0, + codePoint >> 0xC & 0x3F | 0x80, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else { + throw new Error('Invalid code point') + } + } + + return bytes +} + +function asciiToBytes (str) { + var byteArray = [] + for (var i = 0; i < str.length; i++) { + // Node's code seems to be doing this and not & 0x7F.. + byteArray.push(str.charCodeAt(i) & 0xFF) + } + return byteArray +} + +function utf16leToBytes (str, units) { + var c, hi, lo + var byteArray = [] + for (var i = 0; i < str.length; i++) { + if ((units -= 2) < 0) break + + c = str.charCodeAt(i) + hi = c >> 8 + lo = c % 256 + byteArray.push(lo) + byteArray.push(hi) + } + + return byteArray +} + +function base64ToBytes (str) { + return base64.toByteArray(base64clean(str)) +} + +function blitBuffer (src, dst, offset, length) { + for (var i = 0; i < length; i++) { + if ((i + offset >= dst.length) || (i >= src.length)) break + dst[i + offset] = src[i] + } + return i +} + +function decodeUtf8Char (str) { + try { + return decodeURIComponent(str) + } catch (err) { + return String.fromCharCode(0xFFFD) // UTF 8 invalid char + } +} + +},{"base64-js":12,"ieee754":28,"is-array":31}],15:[function(require,module,exports){ require('../../modules/es6.object.assign'); module.exports = require('../../modules/$').core.Object.assign; -},{"../../modules/$":21,"../../modules/es6.object.assign":22}],13:[function(require,module,exports){ +},{"../../modules/$":24,"../../modules/es6.object.assign":25}],16:[function(require,module,exports){ var $ = require('../../modules/$'); module.exports = function create(P, D){ return $.create(P, D); }; -},{"../../modules/$":21}],14:[function(require,module,exports){ +},{"../../modules/$":24}],17:[function(require,module,exports){ var $ = require('../../modules/$'); module.exports = function defineProperty(it, key, desc){ return $.setDesc(it, key, desc); }; -},{"../../modules/$":21}],15:[function(require,module,exports){ +},{"../../modules/$":24}],18:[function(require,module,exports){ var $ = require('../../modules/$'); require('../../modules/es6.object.statics-accept-primitives'); module.exports = function getOwnPropertyDescriptor(it, key){ return $.getDesc(it, key); }; -},{"../../modules/$":21,"../../modules/es6.object.statics-accept-primitives":23}],16:[function(require,module,exports){ +},{"../../modules/$":24,"../../modules/es6.object.statics-accept-primitives":26}],19:[function(require,module,exports){ var $ = require('./$') , enumKeys = require('./$.enum-keys'); // 19.1.2.1 Object.assign(target, source, ...) @@ -289,7 +1867,7 @@ module.exports = Object.assign || function assign(target, source){ } return T; }; -},{"./$":21,"./$.enum-keys":18}],17:[function(require,module,exports){ +},{"./$":24,"./$.enum-keys":21}],20:[function(require,module,exports){ var $ = require('./$') , global = $.g , core = $.core @@ -338,7 +1916,7 @@ function $def(type, name, source){ } } module.exports = $def; -},{"./$":21}],18:[function(require,module,exports){ +},{"./$":24}],21:[function(require,module,exports){ var $ = require('./$'); module.exports = function(it){ var keys = $.getKeys(it) @@ -349,13 +1927,13 @@ module.exports = function(it){ }); return keys; }; -},{"./$":21}],19:[function(require,module,exports){ +},{"./$":24}],22:[function(require,module,exports){ module.exports = function($){ $.FW = false; $.path = $.core; return $; }; -},{}],20:[function(require,module,exports){ +},{}],23:[function(require,module,exports){ // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window var $ = require('./$') , toString = {}.toString @@ -376,7 +1954,7 @@ module.exports.get = function getOwnPropertyNames(it){ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it); return getNames($.toObject(it)); }; -},{"./$":21}],21:[function(require,module,exports){ +},{"./$":24}],24:[function(require,module,exports){ 'use strict'; var global = typeof self != 'undefined' ? self : Function('return this')() , core = {} @@ -473,11 +2051,11 @@ var $ = module.exports = require('./$.fw')({ /* eslint-disable no-undef */ if(typeof __e != 'undefined')__e = core; if(typeof __g != 'undefined')__g = global; -},{"./$.fw":19}],22:[function(require,module,exports){ +},{"./$.fw":22}],25:[function(require,module,exports){ // 19.1.3.1 Object.assign(target, source) var $def = require('./$.def'); $def($def.S, 'Object', {assign: require('./$.assign')}); -},{"./$.assign":16,"./$.def":17}],23:[function(require,module,exports){ +},{"./$.assign":19,"./$.def":20}],26:[function(require,module,exports){ var $ = require('./$') , $def = require('./$.def') , isObject = $.isObject @@ -514,7 +2092,7 @@ $.each.call(('freeze,seal,preventExtensions,isFrozen,isSealed,isExtensible,' + } $def($def.S + $def.F * forced, 'Object', method); }); -},{"./$":21,"./$.def":17,"./$.get-names":20}],24:[function(require,module,exports){ +},{"./$":24,"./$.def":20,"./$.get-names":23}],27:[function(require,module,exports){ // Copyright Joyent, Inc. and other Node contributors. // // Permission is hereby granted, free of charge, to any person obtaining a @@ -817,19 +2395,569 @@ function isUndefined(arg) { return arg === void 0; } -},{}],25:[function(require,module,exports){ +},{}],28:[function(require,module,exports){ +exports.read = function (buffer, offset, isLE, mLen, nBytes) { + var e, m + var eLen = nBytes * 8 - mLen - 1 + var eMax = (1 << eLen) - 1 + var eBias = eMax >> 1 + var nBits = -7 + var i = isLE ? (nBytes - 1) : 0 + var d = isLE ? -1 : 1 + var s = buffer[offset + i] + + i += d + + e = s & ((1 << (-nBits)) - 1) + s >>= (-nBits) + nBits += eLen + for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {} + + m = e & ((1 << (-nBits)) - 1) + e >>= (-nBits) + nBits += mLen + for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {} + + if (e === 0) { + e = 1 - eBias + } else if (e === eMax) { + return m ? NaN : ((s ? -1 : 1) * Infinity) + } else { + m = m + Math.pow(2, mLen) + e = e - eBias + } + return (s ? -1 : 1) * m * Math.pow(2, e - mLen) +} + +exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { + var e, m, c + var eLen = nBytes * 8 - mLen - 1 + var eMax = (1 << eLen) - 1 + var eBias = eMax >> 1 + var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) + var i = isLE ? 0 : (nBytes - 1) + var d = isLE ? 1 : -1 + var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 + + value = Math.abs(value) + + if (isNaN(value) || value === Infinity) { + m = isNaN(value) ? 1 : 0 + e = eMax + } else { + e = Math.floor(Math.log(value) / Math.LN2) + if (value * (c = Math.pow(2, -e)) < 1) { + e-- + c *= 2 + } + if (e + eBias >= 1) { + value += rt / c + } else { + value += rt * Math.pow(2, 1 - eBias) + } + if (value * c >= 2) { + e++ + c /= 2 + } + + if (e + eBias >= eMax) { + m = 0 + e = eMax + } else if (e + eBias >= 1) { + m = (value * c - 1) * Math.pow(2, mLen) + e = e + eBias + } else { + m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) + e = 0 + } + } + + for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} + + e = (e << mLen) | m + eLen += mLen + for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} + + buffer[offset + i - d] |= s * 128 +} + +},{}],29:[function(require,module,exports){ +"use strict"; + +module.exports = function Canvas () { + return document.createElement('canvas'); +}; + +},{}],30:[function(require,module,exports){ +(function (Buffer){ +// js-imagediff 1.0.3 +// (c) 2011-2012 Carl Sutherland, Humble Software +// Distributed under the MIT License +// For original source and documentation visit: +// http://www.github.com/HumbleSoftware/js-imagediff + +(function (name, definition) { + var root = this; + if (typeof module !== 'undefined') { + try { + var Canvas = require('canvas'); + } catch (e) { + throw new Error( + e.message + '\n' + + 'Please see https://github.com/HumbleSoftware/js-imagediff#cannot-find-module-canvas\n' + ); + } + module.exports = definition(root, name, Canvas); + } else if (typeof define === 'function' && typeof define.amd === 'object') { + define(definition); + } else { + root[name] = definition(root, name); + } +})('imagediff', function (root, name, Canvas) { + + var + TYPE_ARRAY = /\[object Array\]/i, + TYPE_CANVAS = /\[object (Canvas|HTMLCanvasElement)\]/i, + TYPE_CONTEXT = /\[object CanvasRenderingContext2D\]/i, + TYPE_IMAGE = /\[object (Image|HTMLImageElement)\]/i, + TYPE_IMAGE_DATA = /\[object ImageData\]/i, + + UNDEFINED = 'undefined', + + canvas = getCanvas(), + context = canvas.getContext('2d'), + previous = root[name], + imagediff, jasmine; + + // Creation + function getCanvas (width, height) { + var + canvas = Canvas ? + new Canvas() : + document.createElement('canvas'); + if (width) canvas.width = width; + if (height) canvas.height = height; + return canvas; + } + function getImageData (width, height) { + canvas.width = width; + canvas.height = height; + context.clearRect(0, 0, width, height); + return context.createImageData(width, height); + } + // expost canvas module + function getCanvasRef() { + return Canvas; + } + + + // Type Checking + function isImage (object) { + return isType(object, TYPE_IMAGE); + } + function isCanvas (object) { + return isType(object, TYPE_CANVAS); + } + function isContext (object) { + return isType(object, TYPE_CONTEXT); + } + function isImageData (object) { + return !!(object && + isType(object, TYPE_IMAGE_DATA) && + typeof(object.width) !== UNDEFINED && + typeof(object.height) !== UNDEFINED && + typeof(object.data) !== UNDEFINED); + } + function isImageType (object) { + return ( + isImage(object) || + isCanvas(object) || + isContext(object) || + isImageData(object) + ); + } + function isType (object, type) { + return typeof (object) === 'object' && !!Object.prototype.toString.apply(object).match(type); + } + + + // Type Conversion + function copyImageData (imageData) { + var + height = imageData.height, + width = imageData.width, + data = imageData.data, + newImageData, newData, i; + + canvas.width = width; + canvas.height = height; + newImageData = context.getImageData(0, 0, width, height); + newData = newImageData.data; + + for (i = imageData.data.length; i--;) { + newData[i] = data[i]; + } + + return newImageData; + } + function toImageData (object) { + if (isImage(object)) { return toImageDataFromImage(object); } + if (isCanvas(object)) { return toImageDataFromCanvas(object); } + if (isContext(object)) { return toImageDataFromContext(object); } + if (isImageData(object)) { return object; } + } + function toImageDataFromImage (image) { + var + height = image.height, + width = image.width; + canvas.width = width; + canvas.height = height; + context.clearRect(0, 0, width, height); + context.drawImage(image, 0, 0); + return context.getImageData(0, 0, width, height); + } + function toImageDataFromCanvas (canvas) { + var + height = canvas.height, + width = canvas.width, + context = canvas.getContext('2d'); + return context.getImageData(0, 0, width, height); + } + function toImageDataFromContext (context) { + var + canvas = context.canvas, + height = canvas.height, + width = canvas.width; + return context.getImageData(0, 0, width, height); + } + function toCanvas (object) { + var + data = toImageData(object), + canvas = getCanvas(data.width, data.height), + context = canvas.getContext('2d'); + + context.putImageData(data, 0, 0); + return canvas; + } + + + // ImageData Equality Operators + function equalWidth (a, b) { + return a.width === b.width; + } + function equalHeight (a, b) { + return a.height === b.height; + } + function equalDimensions (a, b) { + return equalHeight(a, b) && equalWidth(a, b); + } + function equal (a, b, tolerance) { + + var + aData = a.data, + bData = b.data, + length = aData.length, + i; + + tolerance = tolerance || 0; + + if (!equalDimensions(a, b)) return false; + for (i = length; i--;) if (aData[i] !== bData[i] && Math.abs(aData[i] - bData[i]) > tolerance) return false; + + return true; + } + + + // Diff + function diff (a, b, options) { + return (equalDimensions(a, b) ? diffEqual : diffUnequal)(a, b, options); + } + function diffEqual (a, b, options) { + + var + height = a.height, + width = a.width, + c = getImageData(width, height), // c = a - b + aData = a.data, + bData = b.data, + cData = c.data, + length = cData.length, + row, column, + i, j, k, v; + + for (i = 0; i < length; i += 4) { + cData[i] = Math.abs(aData[i] - bData[i]); + cData[i+1] = Math.abs(aData[i+1] - bData[i+1]); + cData[i+2] = Math.abs(aData[i+2] - bData[i+2]); + cData[i+3] = Math.abs(255 - Math.abs(aData[i+3] - bData[i+3])); + } + + return c; + } + function diffUnequal (a, b, options) { + + var + height = Math.max(a.height, b.height), + width = Math.max(a.width, b.width), + c = getImageData(width, height), // c = a - b + aData = a.data, + bData = b.data, + cData = c.data, + align = options && options.align, + rowOffset, + columnOffset, + row, column, + i, j, k, v; + + + for (i = cData.length - 1; i > 0; i = i - 4) { + cData[i] = 255; + } + + // Add First Image + offsets(a); + for (row = a.height; row--;){ + for (column = a.width; column--;) { + i = 4 * ((row + rowOffset) * width + (column + columnOffset)); + j = 4 * (row * a.width + column); + cData[i+0] = aData[j+0]; // r + cData[i+1] = aData[j+1]; // g + cData[i+2] = aData[j+2]; // b + // cData[i+3] = aData[j+3]; // a + } + } + + // Subtract Second Image + offsets(b); + for (row = b.height; row--;){ + for (column = b.width; column--;) { + i = 4 * ((row + rowOffset) * width + (column + columnOffset)); + j = 4 * (row * b.width + column); + cData[i+0] = Math.abs(cData[i+0] - bData[j+0]); // r + cData[i+1] = Math.abs(cData[i+1] - bData[j+1]); // g + cData[i+2] = Math.abs(cData[i+2] - bData[j+2]); // b + } + } + + // Helpers + function offsets (imageData) { + if (align === 'top') { + rowOffset = 0; + columnOffset = 0; + } else { + rowOffset = Math.floor((height - imageData.height) / 2); + columnOffset = Math.floor((width - imageData.width) / 2); + } + } + + return c; + } + + + // Validation + function checkType () { + var i; + for (i = 0; i < arguments.length; i++) { + if (!isImageType(arguments[i])) { + throw { + name : 'ImageTypeError', + message : 'Submitted object was not an image.' + }; + } + } + } + + + // Jasmine Matchers + function get (element, content) { + element = document.createElement(element); + if (element && content) { + element.innerHTML = content; + } + return element; + } + + jasmine = { + + toBeImageData : function () { + return imagediff.isImageData(this.actual); + }, + + toImageDiffEqual : function (expected, tolerance) { + + if (typeof (document) !== UNDEFINED) { + this.message = function () { + var + div = get('div'), + a = get('div', '
Actual:
'), + b = get('div', '
Expected:
'), + c = get('div', '
Diff:
'), + diff = imagediff.diff(this.actual, expected), + canvas = getCanvas(), + context; + + canvas.height = diff.height; + canvas.width = diff.width; + + div.style.overflow = 'hidden'; + a.style.float = 'left'; + b.style.float = 'left'; + c.style.float = 'left'; + + context = canvas.getContext('2d'); + context.putImageData(diff, 0, 0); + + a.appendChild(toCanvas(this.actual)); + b.appendChild(toCanvas(expected)); + c.appendChild(canvas); + + div.appendChild(a); + div.appendChild(b); + div.appendChild(c); + + return [ + div, + "Expected not to be equal." + ]; + }; + } + + return imagediff.equal(this.actual, expected, tolerance); + } + }; + + + // Image Output + function imageDataToPNG (imageData, outputFile, callback) { + + var + canvas = toCanvas(imageData), + base64Data, + decodedImage; + + callback = callback || Function; + + base64Data = canvas.toDataURL().replace(/^data:image\/\w+;base64,/,""); + decodedImage = new Buffer(base64Data, 'base64'); + require('fs').writeFile(outputFile, decodedImage, callback); + } + + + // Definition + imagediff = { + + createCanvas : getCanvas, + createImageData : getImageData, + getCanvasRef: getCanvasRef, + + isImage : isImage, + isCanvas : isCanvas, + isContext : isContext, + isImageData : isImageData, + isImageType : isImageType, + + toImageData : function (object) { + checkType(object); + if (isImageData(object)) { return copyImageData(object); } + return toImageData(object); + }, + + equal : function (a, b, tolerance) { + checkType(a, b); + a = toImageData(a); + b = toImageData(b); + return equal(a, b, tolerance); + }, + diff : function (a, b, options) { + checkType(a, b); + a = toImageData(a); + b = toImageData(b); + return diff(a, b, options); + }, + + jasmine : jasmine, + + // Compatibility + noConflict : function () { + root[name] = previous; + return imagediff; + } + }; + + if (typeof module !== 'undefined') { + imagediff.imageDataToPNG = imageDataToPNG; + } + + return imagediff; +}); + +}).call(this,require("buffer").Buffer) + +},{"buffer":14,"canvas":29,"fs":13}],31:[function(require,module,exports){ + +/** + * isArray + */ + +var isArray = Array.isArray; + +/** + * toString + */ + +var str = Object.prototype.toString; + +/** + * Whether or not the given `val` + * is an array. + * + * example: + * + * isArray([]); + * // > true + * isArray(arguments); + * // > false + * isArray(''); + * // > false + * + * @param {mixed} val + * @return {bool} + */ + +module.exports = isArray || function (val) { + return !! val && '[object Array]' == str.call(val); +}; + +},{}],32:[function(require,module,exports){ +'use strict'; + +module.exports = { + portrait1: require('./portrait1') +}; + +},{"./portrait1":33}],33:[function(require,module,exports){ 'use strict'; var makeImage = require('../../app/lib/make-image'); -var portrait1 = 'data:image/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB\nAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB\nAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA\nASygAwAEAAAAAQAAAbkAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA\nOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA\nDEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF\nQyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl\nc2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY\nWVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1\nZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl\nY2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl\neHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55\nAABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig\nSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA\nAAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ\nWiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj\nLmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF\nQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA\nAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g\nc1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug\nVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm\nZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD\nXJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA\nAAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU\nABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL\nAJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH\nAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp\nAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6\nAoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+\nA4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2\nBMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn\nBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS\nB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6\nCc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh\nC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J\nDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1\nERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl\nFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd\nF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe\nGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q\nHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC\nIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo\nJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud\nK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk\nMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9\nNjc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq\nO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs\nQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF\nSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63\nTwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC\nVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n\nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp\nZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I\nbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF\ndeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i\nfsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef\niASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/\nkaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC\nm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp\nphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1\nsOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun\nvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB\nx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE\n08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v\n4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG\n7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH\n+lf65/t3/Af8mP0p/br+S/7c/23////AABEIAbkBLAMBEgACEQEDEQH/xAAfAAAB\nBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B\nAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp\nKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK\nkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj\n5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ\n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\n1/bC+L2seJ9C8NeHMWlnBcafb6tex2V150ckkoJiG7CnCgMdpA5KnmgD5u1zULvV\ndWutRv7g3F3czPPcTEAeZK7FnbgAcsSelUaACigAooAKKACigAooAKKACigAooAK\nKACigAooAKKAFAyQM496SgD1PxlLZN8APBKW2oWtzP8A2nqb3EMbfPas23ajg9yP\nm9MGvLixIAJ4HSgBtFABRQAUUAf/1vjeigAooAKKACigAooAKKACigAooAKKACig\nAooAKKACigAooAKKACigAooAf5jZBG1SOhVQD+lMoA0vC76VH4hsH1yOeTTVuEN0\nkJw7Rg/MARyCemRyM5HNZtAFrVZoLjUZ5raA28DyMYovNMnlpk7V3NyQFwMn0qrQ\nAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFKozn6E/pQAlbHjGxttN\n8Q3VnaIUhjKhQWJIyinqfcmgDHooAKKACigD/9f43ooAKKACigAooAKKACigAooA\nKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKAHR7d67zhc802gDotc0zSn\n0/TLnw9NdXmNMSbVsxsRa3HmOGXheE27CCeMk81X8H+Kde8Ja1HrHh/U7jT7yNWU\nSQsMlSMFSCCrD2IIzz1oAx2Ur1wfcHIrqfEHidvGGprc+IIbGO+mZFm1G3txAWOQ\nDJJHGMSEAHoATzQBylXtd09dL1SayS9tL5Yzhbi1k3xSDGdyt3H6g5B6UAUaKACi\ngAooAKKACigAooAKKACigAooAKKAJry5nu52nuZXllfG52OSeAP5AVDQAUUAFFAB\nRQB//9D43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK\nACigAooAKKACigAooAKKAFJJJJ5J60lABRQAUUAFXtF0rUNYvPsemWkt1P5byeXG\nMsVUZYgd8CgCjVi/s7mwupLW7hkgmjOHjkQo6n3VgCPxFAFeigAooAKKACigApyK\nWYKOtADa1fEmg6joFxbW+pwiGW4tIbtULZYJKu5Nw/hOOx6UAZVFABRQAUUAFFAH\n/9H43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig\nAooAKKACigAooAKKACigAooAKKAFU4PQH2IpKAOj8R+NfEniLTLbT9c1WfUo7Vi0\nT3SpJKpIx/rSvmEY7FiO+M81zlABRQAUUAFFABSqdpDDHHPNAHR/DZdKXxtpEuuo\nH0qK7jlvVMe8NCh3upHTnaFOeze9Q+KdSup30+0ka0X7Bp8dkptU2gplnw5H32zI\nct0PHpQA/wCIvia58YeM9V8R3ShH1C7kuBGFAEak4RAB2VFRfwrnqACigAooAKKA\nCigD/9L43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK\nACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig\nAooAKKAP/9k='; +module.exports = function (cb) { + makeImage('data:image/jpg;base64,\n/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB\nAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB\nAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA\nAGSgAwAEAAAAAQAAAJMAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA\nOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA\nDEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF\nQyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl\nc2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY\nWVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1\nZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl\nY2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl\neHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55\nAABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig\nSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA\nAAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ\nWiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj\nLmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF\nQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA\nAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g\nc1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug\nVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm\nZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD\nXJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA\nAAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU\nABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL\nAJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH\nAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp\nAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6\nAoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+\nA4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2\nBMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn\nBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS\nB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6\nCc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh\nC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J\nDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1\nERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl\nFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd\nF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe\nGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q\nHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC\nIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo\nJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud\nK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk\nMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9\nNjc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq\nO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs\nQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF\nSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63\nTwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC\nVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n\nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp\nZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I\nbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF\ndeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i\nfsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef\niASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/\nkaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC\nm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp\nphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1\nsOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun\nvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB\nx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE\n08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v\n4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG\n7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH\n+lf65/t3/Af8mP0p/br+S/7c/23////AABEIAJMAZAMBEgACEQEDEQH/xAAfAAAB\nBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B\nAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp\nKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK\nkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj\n5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ\n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', cb); +}; -module.exports = function makeImages(cb) { - var images = {}; - makeImage(portrait1, function (image) { - images.portrait1 = image; - cb(images); - }); +},{"../../app/lib/make-image":2}],34:[function(require,module,exports){ +'use strict'; + +module.exports = { + singlePortrait: require('./single-portrait') +}; + +},{"./single-portrait":35}],35:[function(require,module,exports){ +'use strict'; + +var makeImage = require('../../app/lib/make-image'); + +module.exports = function (cb) { + makeImage('data:image/png;base64,\n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\nRWARCPwfuNDlwVfqKPUAAAAASUVORK5CYII=', cb); }; },{"../../app/lib/make-image":2}]},{},[1]) diff --git a/dist/comicbook.js.map b/dist/comicbook.js.map index 482a000..b37433d 100644 --- a/dist/comicbook.js.map +++ b/dist/comicbook.js.map @@ -13,6 +13,9 @@ "node_modules/babel-runtime/helpers/create-class.js", "node_modules/babel-runtime/helpers/get.js", "node_modules/babel-runtime/helpers/inherits.js", + "node_modules/base64-js/lib/b64.js", + "node_modules/browserify/lib/_empty.js", + "node_modules/buffer/index.js", "node_modules/core-js/library/fn/object/assign.js", "node_modules/core-js/library/fn/object/create.js", "node_modules/core-js/library/fn/object/define-property.js", @@ -26,15 +29,22 @@ "node_modules/core-js/library/modules/es6.object.assign.js", "node_modules/core-js/library/modules/es6.object.statics-accept-primitives.js", "node_modules/events/events.js", - "/Users/bala/dev/HTML5-Comic-Book-Reader/test/data/image.js" + "node_modules/ieee754/index.js", + "node_modules/imagediff/browser/canvas.js", + "node_modules/imagediff/imagediff.js", + "node_modules/is-array/index.js", + "/Users/bala/dev/HTML5-Comic-Book-Reader/test/data/index.js", + "/Users/bala/dev/HTML5-Comic-Book-Reader/test/data/portrait1.js", + "/Users/bala/dev/HTML5-Comic-Book-Reader/test/fixture/index.js", + "/Users/bala/dev/HTML5-Comic-Book-Reader/test/fixture/single-portrait.js" ], "names": [], - "mappings": "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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;;ACDA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/FA;AACA;AACA;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC7SA,IAAI,SAAS,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;;AAEnD,IAAI,SAAS,2h5BA2bA,CAAA;;AAEb,MAAM,CAAC,OAAO,GAAG,SAAS,UAAU,CAAE,EAAE,EAAE;AACxC,MAAI,MAAM,GAAG,EAAE,CAAA;AACf,WAAS,CAAC,SAAS,EAAE,UAAC,KAAK,EAAK;AAC9B,UAAM,CAAC,SAAS,GAAG,KAAK,CAAA;AACxB,MAAE,CAAC,MAAM,CAAC,CAAA;GACX,CAAC,CAAA;CACH,CAAA", + "mappings": "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;;ACAA;;ACAA;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5HA;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC75CA;AACA;;ACDA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;;ACHA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/FA;AACA;AACA;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7SA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpFA;AACA;AACA;AACA;AACA;AACA;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AChZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACjCA,MAAM,CAAC,OAAO,GAAG;AACf,WAAS,EAAE,OAAO,CAAC,aAAa,CAAC;CAClC,CAAA;;;;;ACFD,IAAI,SAAS,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;;AAEnD,MAAM,CAAC,OAAO,GAAG,UAAC,EAAE,EAAK;AACvB,WAAS,mlVAqKP,EAAE,CAAC,CAAA;CACN,CAAA;;;;;ACzKD,MAAM,CAAC,OAAO,GAAG;AACf,gBAAc,EAAE,OAAO,CAAC,mBAAmB,CAAC;CAC7C,CAAA;;;;;ACFD,IAAI,SAAS,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;;AAEnD,MAAM,CAAC,OAAO,GAAG,UAAC,EAAE,EAAK;AACvB,WAAS,q8xBAoYP,EAAE,CAAC,CAAA;CACN,CAAA", "file": "generated.js", "sourceRoot": "", "sourcesContent": [ "(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o {\n let canvas = new Canvas()\n canvas.drawImage(testImages.portrait1)\n document.body.appendChild(canvas.canvas)\n})\n", + "// let ComicBook = window.ComicBook = require('./comic-book')\nlet Canvas = require('./view/canvas')\nlet testImages = require('../test/data')\nlet fixtureImages = require('../test/fixture')\nlet imagediff = require('imagediff')\n\ntestImages.portrait1((testImage) => {\n fixtureImages.singlePortrait((fixtureImage) => {\n let canvas = new Canvas()\n canvas.drawImage(testImage)\n\n console.log(imagediff.equal(canvas.canvas, fixtureImage))\n\n console.log(testImage.width, testImage.height)\n console.log(fixtureImage.width, fixtureImage.height)\n console.log(canvas.canvas.width, canvas.canvas.height)\n\n document.body.appendChild(canvas.canvas)\n })\n})\n", "\nmodule.exports = function makeImage (src, cb) {\n let image = new window.Image()\n image.onload = () => {\n cb(image)\n }\n image.src = src\n}\n\n", "let EventEmitter = require('events').EventEmitter\n\nclass Canvas extends EventEmitter {\n\n constructor (options) {\n super()\n\n this.options = Object.assign({\n // fitWidth, fitWindow, manua\n zoomMode: 'fitWidth',\n // ltr, rtl\n readDirection: 'ltr',\n // should two pages be rendered at a time?\n doublePage: false\n }, options)\n\n this.canvas = document.createElement('canvas')\n this.context = this.canvas.getContext('2d')\n\n this.on('draw:start', this.clearCanvas.bind(this))\n }\n\n getScale () {\n\n }\n\n fitCanvasToImage (image) {\n // make sure the canvas is always at least full screen, even if the page is more narrow than the screen\n this.canvas.width = (this.canvas.width < window.innerWidth) ? window.innerWidth : this.canvas.width\n this.canvas.height = (this.canvas.height < window.innerHeight) ? window.innerHeight : this.canvas.height\n }\n\n getDimensions (image) {\n let dimensions = {\n width: image.width,\n height: image.height\n }\n return dimensions\n }\n\n getOffset (dimensions) {\n let offset = {\n width: 0,\n height: 0\n }\n\n // always keep pages centered\n if (this.options.zoomMode === 'manual' || this.options.zoomMode === 'fitWindow') {\n\n // work out a horizontal position\n if (this.canvas.width < window.innerWidth) {\n offset.width = (window.innerWidth - dimensions.width) / 2\n if (this.options.doublePage) {\n offset.width = offset.width - dimensions.width / 2\n }\n }\n\n // work out a vertical position\n if (this.canvas.height < window.innerHeight) {\n offset.height = (window.innerHeight - dimensions.height) / 2\n }\n }\n\n return offset\n }\n\n clearCanvas () {\n this.canvas.width = 0\n this.canvas.height = 0\n }\n\n drawImage (image, image2) {\n this.emit('draw:start')\n\n if (!(image instanceof window.Image) || (this.options.doublePage && !(image2 instanceof window.Image))) {\n throw new Error('Invalid image')\n }\n\n this.fitCanvasToImage()\n\n let dimensions = this.getDimensions(image)\n let offset = this.getOffset(dimensions)\n\n this.context.drawImage(image, offset.width, offset.height, dimensions.width, dimensions.height)\n if (this.options.doublePage && image2) {\n this.context.drawImage(image2, dimensions.width + offset.width, offset.height, dimensions.width, dimensions.height)\n }\n\n this.emit('draw:finish')\n }\n}\n\nmodule.exports = Canvas\n", "module.exports = { \"default\": require(\"core-js/library/fn/object/assign\"), __esModule: true };", @@ -45,6 +55,9 @@ "\"use strict\";\n\nvar _Object$defineProperty = require(\"babel-runtime/core-js/object/define-property\")[\"default\"];\n\nexports[\"default\"] = (function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n\n _Object$defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n})();\n\nexports.__esModule = true;", "\"use strict\";\n\nvar _Object$getOwnPropertyDescriptor = require(\"babel-runtime/core-js/object/get-own-property-descriptor\")[\"default\"];\n\nexports[\"default\"] = function get(_x, _x2, _x3) {\n var _again = true;\n\n _function: while (_again) {\n var object = _x,\n property = _x2,\n receiver = _x3;\n desc = parent = getter = undefined;\n _again = false;\n if (object === null) object = Function.prototype;\n\n var desc = _Object$getOwnPropertyDescriptor(object, property);\n\n if (desc === undefined) {\n var parent = Object.getPrototypeOf(object);\n\n if (parent === null) {\n return undefined;\n } else {\n _x = parent;\n _x2 = property;\n _x3 = receiver;\n _again = true;\n continue _function;\n }\n } else if (\"value\" in desc) {\n return desc.value;\n } else {\n var getter = desc.get;\n\n if (getter === undefined) {\n return undefined;\n }\n\n return getter.call(receiver);\n }\n }\n};\n\nexports.__esModule = true;", "\"use strict\";\n\nvar _Object$create = require(\"babel-runtime/core-js/object/create\")[\"default\"];\n\nexports[\"default\"] = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = _Object$create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) subClass.__proto__ = superClass;\n};\n\nexports.__esModule = true;", + "var lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n;(function (exports) {\n\t'use strict';\n\n var Arr = (typeof Uint8Array !== 'undefined')\n ? Uint8Array\n : Array\n\n\tvar PLUS = '+'.charCodeAt(0)\n\tvar SLASH = '/'.charCodeAt(0)\n\tvar NUMBER = '0'.charCodeAt(0)\n\tvar LOWER = 'a'.charCodeAt(0)\n\tvar UPPER = 'A'.charCodeAt(0)\n\tvar PLUS_URL_SAFE = '-'.charCodeAt(0)\n\tvar SLASH_URL_SAFE = '_'.charCodeAt(0)\n\n\tfunction decode (elt) {\n\t\tvar code = elt.charCodeAt(0)\n\t\tif (code === PLUS ||\n\t\t code === PLUS_URL_SAFE)\n\t\t\treturn 62 // '+'\n\t\tif (code === SLASH ||\n\t\t code === SLASH_URL_SAFE)\n\t\t\treturn 63 // '/'\n\t\tif (code < NUMBER)\n\t\t\treturn -1 //no match\n\t\tif (code < NUMBER + 10)\n\t\t\treturn code - NUMBER + 26 + 26\n\t\tif (code < UPPER + 26)\n\t\t\treturn code - UPPER\n\t\tif (code < LOWER + 26)\n\t\t\treturn code - LOWER + 26\n\t}\n\n\tfunction b64ToByteArray (b64) {\n\t\tvar i, j, l, tmp, placeHolders, arr\n\n\t\tif (b64.length % 4 > 0) {\n\t\t\tthrow new Error('Invalid string. Length must be a multiple of 4')\n\t\t}\n\n\t\t// the number of equal signs (place holders)\n\t\t// if there are two placeholders, than the two characters before it\n\t\t// represent one byte\n\t\t// if there is only one, then the three characters before it represent 2 bytes\n\t\t// this is just a cheap hack to not do indexOf twice\n\t\tvar len = b64.length\n\t\tplaceHolders = '=' === b64.charAt(len - 2) ? 2 : '=' === b64.charAt(len - 1) ? 1 : 0\n\n\t\t// base64 is 4/3 + up to two characters of the original data\n\t\tarr = new Arr(b64.length * 3 / 4 - placeHolders)\n\n\t\t// if there are placeholders, only get up to the last complete 4 chars\n\t\tl = placeHolders > 0 ? b64.length - 4 : b64.length\n\n\t\tvar L = 0\n\n\t\tfunction push (v) {\n\t\t\tarr[L++] = v\n\t\t}\n\n\t\tfor (i = 0, j = 0; i < l; i += 4, j += 3) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 18) | (decode(b64.charAt(i + 1)) << 12) | (decode(b64.charAt(i + 2)) << 6) | decode(b64.charAt(i + 3))\n\t\t\tpush((tmp & 0xFF0000) >> 16)\n\t\t\tpush((tmp & 0xFF00) >> 8)\n\t\t\tpush(tmp & 0xFF)\n\t\t}\n\n\t\tif (placeHolders === 2) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 2) | (decode(b64.charAt(i + 1)) >> 4)\n\t\t\tpush(tmp & 0xFF)\n\t\t} else if (placeHolders === 1) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 10) | (decode(b64.charAt(i + 1)) << 4) | (decode(b64.charAt(i + 2)) >> 2)\n\t\t\tpush((tmp >> 8) & 0xFF)\n\t\t\tpush(tmp & 0xFF)\n\t\t}\n\n\t\treturn arr\n\t}\n\n\tfunction uint8ToBase64 (uint8) {\n\t\tvar i,\n\t\t\textraBytes = uint8.length % 3, // if we have 1 byte left, pad 2 bytes\n\t\t\toutput = \"\",\n\t\t\ttemp, length\n\n\t\tfunction encode (num) {\n\t\t\treturn lookup.charAt(num)\n\t\t}\n\n\t\tfunction tripletToBase64 (num) {\n\t\t\treturn encode(num >> 18 & 0x3F) + encode(num >> 12 & 0x3F) + encode(num >> 6 & 0x3F) + encode(num & 0x3F)\n\t\t}\n\n\t\t// go through the array every three bytes, we'll deal with trailing stuff later\n\t\tfor (i = 0, length = uint8.length - extraBytes; i < length; i += 3) {\n\t\t\ttemp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])\n\t\t\toutput += tripletToBase64(temp)\n\t\t}\n\n\t\t// pad the end with zeros, but make sure to not forget the extra bytes\n\t\tswitch (extraBytes) {\n\t\t\tcase 1:\n\t\t\t\ttemp = uint8[uint8.length - 1]\n\t\t\t\toutput += encode(temp >> 2)\n\t\t\t\toutput += encode((temp << 4) & 0x3F)\n\t\t\t\toutput += '=='\n\t\t\t\tbreak\n\t\t\tcase 2:\n\t\t\t\ttemp = (uint8[uint8.length - 2] << 8) + (uint8[uint8.length - 1])\n\t\t\t\toutput += encode(temp >> 10)\n\t\t\t\toutput += encode((temp >> 4) & 0x3F)\n\t\t\t\toutput += encode((temp << 2) & 0x3F)\n\t\t\t\toutput += '='\n\t\t\t\tbreak\n\t\t}\n\n\t\treturn output\n\t}\n\n\texports.toByteArray = b64ToByteArray\n\texports.fromByteArray = uint8ToBase64\n}(typeof exports === 'undefined' ? (this.base64js = {}) : exports))\n", + null, + "/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('is-array')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\nBuffer.poolSize = 8192 // not used by this implementation\n\nvar rootParent = {}\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Note:\n *\n * - Implementation must support adding new properties to `Uint8Array` instances.\n * Firefox 4-29 lacked support, fixed in Firefox 30+.\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n *\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they will\n * get the Object implementation, which is slower but will work correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = (function () {\n function Foo () {}\n try {\n var buf = new ArrayBuffer(0)\n var arr = new Uint8Array(buf)\n arr.foo = function () { return 42 }\n arr.constructor = Foo\n return arr.foo() === 42 && // typed array instances can be augmented\n arr.constructor === Foo && // constructor can be set\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n new Uint8Array(1).subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n})()\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\n/**\n * Class: Buffer\n * =============\n *\n * The Buffer constructor returns instances of `Uint8Array` that are augmented\n * with function properties for all the node `Buffer` API functions. We use\n * `Uint8Array` so that square bracket notation works as expected -- it returns\n * a single octet.\n *\n * By augmenting the instances, we can avoid modifying the `Uint8Array`\n * prototype.\n */\nfunction Buffer (arg) {\n if (!(this instanceof Buffer)) {\n // Avoid going through an ArgumentsAdaptorTrampoline in the common case.\n if (arguments.length > 1) return new Buffer(arg, arguments[1])\n return new Buffer(arg)\n }\n\n this.length = 0\n this.parent = undefined\n\n // Common case.\n if (typeof arg === 'number') {\n return fromNumber(this, arg)\n }\n\n // Slightly less common case.\n if (typeof arg === 'string') {\n return fromString(this, arg, arguments.length > 1 ? arguments[1] : 'utf8')\n }\n\n // Unusual.\n return fromObject(this, arg)\n}\n\nfunction fromNumber (that, length) {\n that = allocate(that, length < 0 ? 0 : checked(length) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < length; i++) {\n that[i] = 0\n }\n }\n return that\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') encoding = 'utf8'\n\n // Assumption: byteLength() return value is always < kMaxLength.\n var length = byteLength(string, encoding) | 0\n that = allocate(that, length)\n\n that.write(string, encoding)\n return that\n}\n\nfunction fromObject (that, object) {\n if (Buffer.isBuffer(object)) return fromBuffer(that, object)\n\n if (isArray(object)) return fromArray(that, object)\n\n if (object == null) {\n throw new TypeError('must start with number, buffer, array or string')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && object.buffer instanceof ArrayBuffer) {\n return fromTypedArray(that, object)\n }\n\n if (object.length) return fromArrayLike(that, object)\n\n return fromJsonObject(that, object)\n}\n\nfunction fromBuffer (that, buffer) {\n var length = checked(buffer.length) | 0\n that = allocate(that, length)\n buffer.copy(that, 0, 0, length)\n return that\n}\n\nfunction fromArray (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\n// Duplicate of fromArray() to keep fromArray() monomorphic.\nfunction fromTypedArray (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n // Truncating the elements is probably not what people expect from typed\n // arrays with BYTES_PER_ELEMENT > 1 but it's compatible with the behavior\n // of the old Buffer constructor.\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\n// Deserialize { type: 'Buffer', data: [1,2,3,...] } into a Buffer object.\n// Returns a zero-length buffer for inputs that don't conform to the spec.\nfunction fromJsonObject (that, object) {\n var array\n var length = 0\n\n if (object.type === 'Buffer' && isArray(object.data)) {\n array = object.data\n length = checked(array.length) | 0\n }\n that = allocate(that, length)\n\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction allocate (that, length) {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = Buffer._augment(new Uint8Array(length))\n } else {\n // Fallback: Return an object instance of the Buffer class\n that.length = length\n that._isBuffer = true\n }\n\n var fromPool = length !== 0 && length <= Buffer.poolSize >>> 1\n if (fromPool) that.parent = rootParent\n\n return that\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (subject, encoding) {\n if (!(this instanceof SlowBuffer)) return new SlowBuffer(subject, encoding)\n\n var buf = new Buffer(subject, encoding)\n delete buf.parent\n return buf\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n var i = 0\n var len = Math.min(x, y)\n while (i < len) {\n if (a[i] !== b[i]) break\n\n ++i\n }\n\n if (i !== len) {\n x = a[i]\n y = b[i]\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'binary':\n case 'base64':\n case 'raw':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) throw new TypeError('list argument must be an Array of Buffers.')\n\n if (list.length === 0) {\n return new Buffer(0)\n } else if (list.length === 1) {\n return list[0]\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; i++) {\n length += list[i].length\n }\n }\n\n var buf = new Buffer(length)\n var pos = 0\n for (i = 0; i < list.length; i++) {\n var item = list[i]\n item.copy(buf, pos)\n pos += item.length\n }\n return buf\n}\n\nfunction byteLength (string, encoding) {\n if (typeof string !== 'string') string = '' + string\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'binary':\n // Deprecated\n case 'raw':\n case 'raws':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\n// pre-set for values that may exist in the future\nBuffer.prototype.length = undefined\nBuffer.prototype.parent = undefined\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n start = start | 0\n end = end === undefined || end === Infinity ? this.length : end | 0\n\n if (!encoding) encoding = 'utf8'\n if (start < 0) start = 0\n if (end > this.length) end = this.length\n if (end <= start) return ''\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'binary':\n return binarySlice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return 0\n return Buffer.compare(this, b)\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset) {\n if (byteOffset > 0x7fffffff) byteOffset = 0x7fffffff\n else if (byteOffset < -0x80000000) byteOffset = -0x80000000\n byteOffset >>= 0\n\n if (this.length === 0) return -1\n if (byteOffset >= this.length) return -1\n\n // Negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = Math.max(this.length + byteOffset, 0)\n\n if (typeof val === 'string') {\n if (val.length === 0) return -1 // special case: looking for empty string always fails\n return String.prototype.indexOf.call(this, val, byteOffset)\n }\n if (Buffer.isBuffer(val)) {\n return arrayIndexOf(this, val, byteOffset)\n }\n if (typeof val === 'number') {\n if (Buffer.TYPED_ARRAY_SUPPORT && Uint8Array.prototype.indexOf === 'function') {\n return Uint8Array.prototype.indexOf.call(this, val, byteOffset)\n }\n return arrayIndexOf(this, [ val ], byteOffset)\n }\n\n function arrayIndexOf (arr, val, byteOffset) {\n var foundIndex = -1\n for (var i = 0; byteOffset + i < arr.length; i++) {\n if (arr[byteOffset + i] === val[foundIndex === -1 ? 0 : i - foundIndex]) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === val.length) return byteOffset + foundIndex\n } else {\n foundIndex = -1\n }\n }\n return -1\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\n// `get` will be removed in Node 0.13+\nBuffer.prototype.get = function get (offset) {\n console.log('.get() is deprecated. Access using array indexes instead.')\n return this.readUInt8(offset)\n}\n\n// `set` will be removed in Node 0.13+\nBuffer.prototype.set = function set (v, offset) {\n console.log('.set() is deprecated. Access using array indexes instead.')\n return this.writeUInt8(v, offset)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new Error('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; i++) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) throw new Error('Invalid hex string')\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction binaryWrite (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n var swap = encoding\n encoding = offset\n offset = length | 0\n length = swap\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'binary':\n return binaryWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n var res = ''\n var tmp = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; i++) {\n if (buf[i] <= 0x7F) {\n res += decodeUtf8Char(tmp) + String.fromCharCode(buf[i])\n tmp = ''\n } else {\n tmp += '%' + buf[i].toString(16)\n }\n }\n\n return res + decodeUtf8Char(tmp)\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; i++) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction binarySlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; i++) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; i++) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = Buffer._augment(this.subarray(start, end))\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; i++) {\n newBuf[i] = this[i + start]\n }\n }\n\n if (newBuf.length) newBuf.parent = this.parent || this\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('buffer must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('value is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = value\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; i++) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = value\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = value\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; i++) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = value\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = value\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = value < 0 ? 1 : 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = value < 0 ? 1 : 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = value\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = value\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = value\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = value\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = value\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (value > max || value < min) throw new RangeError('value is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('index out of range')\n if (offset < 0) throw new RangeError('index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n\n if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < len; i++) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n target._set(this.subarray(start, start + len), targetStart)\n }\n\n return len\n}\n\n// fill(value, start=0, end=buffer.length)\nBuffer.prototype.fill = function fill (value, start, end) {\n if (!value) value = 0\n if (!start) start = 0\n if (!end) end = this.length\n\n if (end < start) throw new RangeError('end < start')\n\n // Fill 0 bytes; we're done\n if (end === start) return\n if (this.length === 0) return\n\n if (start < 0 || start >= this.length) throw new RangeError('start out of bounds')\n if (end < 0 || end > this.length) throw new RangeError('end out of bounds')\n\n var i\n if (typeof value === 'number') {\n for (i = start; i < end; i++) {\n this[i] = value\n }\n } else {\n var bytes = utf8ToBytes(value.toString())\n var len = bytes.length\n for (i = start; i < end; i++) {\n this[i] = bytes[i % len]\n }\n }\n\n return this\n}\n\n/**\n * Creates a new `ArrayBuffer` with the *copied* memory of the buffer instance.\n * Added in Node 0.12. Only available in browsers that support ArrayBuffer.\n */\nBuffer.prototype.toArrayBuffer = function toArrayBuffer () {\n if (typeof Uint8Array !== 'undefined') {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n return (new Buffer(this)).buffer\n } else {\n var buf = new Uint8Array(this.length)\n for (var i = 0, len = buf.length; i < len; i += 1) {\n buf[i] = this[i]\n }\n return buf.buffer\n }\n } else {\n throw new TypeError('Buffer.toArrayBuffer not supported in this browser')\n }\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar BP = Buffer.prototype\n\n/**\n * Augment a Uint8Array *instance* (not the Uint8Array class!) with Buffer methods\n */\nBuffer._augment = function _augment (arr) {\n arr.constructor = Buffer\n arr._isBuffer = true\n\n // save reference to original Uint8Array set method before overwriting\n arr._set = arr.set\n\n // deprecated, will be removed in node 0.13+\n arr.get = BP.get\n arr.set = BP.set\n\n arr.write = BP.write\n arr.toString = BP.toString\n arr.toLocaleString = BP.toString\n arr.toJSON = BP.toJSON\n arr.equals = BP.equals\n arr.compare = BP.compare\n arr.indexOf = BP.indexOf\n arr.copy = BP.copy\n arr.slice = BP.slice\n arr.readUIntLE = BP.readUIntLE\n arr.readUIntBE = BP.readUIntBE\n arr.readUInt8 = BP.readUInt8\n arr.readUInt16LE = BP.readUInt16LE\n arr.readUInt16BE = BP.readUInt16BE\n arr.readUInt32LE = BP.readUInt32LE\n arr.readUInt32BE = BP.readUInt32BE\n arr.readIntLE = BP.readIntLE\n arr.readIntBE = BP.readIntBE\n arr.readInt8 = BP.readInt8\n arr.readInt16LE = BP.readInt16LE\n arr.readInt16BE = BP.readInt16BE\n arr.readInt32LE = BP.readInt32LE\n arr.readInt32BE = BP.readInt32BE\n arr.readFloatLE = BP.readFloatLE\n arr.readFloatBE = BP.readFloatBE\n arr.readDoubleLE = BP.readDoubleLE\n arr.readDoubleBE = BP.readDoubleBE\n arr.writeUInt8 = BP.writeUInt8\n arr.writeUIntLE = BP.writeUIntLE\n arr.writeUIntBE = BP.writeUIntBE\n arr.writeUInt16LE = BP.writeUInt16LE\n arr.writeUInt16BE = BP.writeUInt16BE\n arr.writeUInt32LE = BP.writeUInt32LE\n arr.writeUInt32BE = BP.writeUInt32BE\n arr.writeIntLE = BP.writeIntLE\n arr.writeIntBE = BP.writeIntBE\n arr.writeInt8 = BP.writeInt8\n arr.writeInt16LE = BP.writeInt16LE\n arr.writeInt16BE = BP.writeInt16BE\n arr.writeInt32LE = BP.writeInt32LE\n arr.writeInt32BE = BP.writeInt32BE\n arr.writeFloatLE = BP.writeFloatLE\n arr.writeFloatBE = BP.writeFloatBE\n arr.writeDoubleLE = BP.writeDoubleLE\n arr.writeDoubleBE = BP.writeDoubleBE\n arr.fill = BP.fill\n arr.inspect = BP.inspect\n arr.toArrayBuffer = BP.toArrayBuffer\n\n return arr\n}\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-z\\-]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n var i = 0\n\n for (; i < length; i++) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (leadSurrogate) {\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n } else {\n // valid surrogate pair\n codePoint = leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00 | 0x10000\n leadSurrogate = null\n }\n } else {\n // no lead yet\n\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else {\n // valid lead\n leadSurrogate = codePoint\n continue\n }\n }\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = null\n }\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x200000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; i++) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; i++) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; i++) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction decodeUtf8Char (str) {\n try {\n return decodeURIComponent(str)\n } catch (err) {\n return String.fromCharCode(0xFFFD) // UTF 8 invalid char\n }\n}\n", "require('../../modules/es6.object.assign');\nmodule.exports = require('../../modules/$').core.Object.assign;", "var $ = require('../../modules/$');\nmodule.exports = function create(P, D){\n return $.create(P, D);\n};", "var $ = require('../../modules/$');\nmodule.exports = function defineProperty(it, key, desc){\n return $.setDesc(it, key, desc);\n};", @@ -58,6 +71,13 @@ "// 19.1.3.1 Object.assign(target, source)\nvar $def = require('./$.def');\n$def($def.S, 'Object', {assign: require('./$.assign')});", "var $ = require('./$')\n , $def = require('./$.def')\n , isObject = $.isObject\n , toObject = $.toObject;\n$.each.call(('freeze,seal,preventExtensions,isFrozen,isSealed,isExtensible,' +\n 'getOwnPropertyDescriptor,getPrototypeOf,keys,getOwnPropertyNames').split(',')\n, function(KEY, ID){\n var fn = ($.core.Object || {})[KEY] || Object[KEY]\n , forced = 0\n , method = {};\n method[KEY] = ID == 0 ? function freeze(it){\n return isObject(it) ? fn(it) : it;\n } : ID == 1 ? function seal(it){\n return isObject(it) ? fn(it) : it;\n } : ID == 2 ? function preventExtensions(it){\n return isObject(it) ? fn(it) : it;\n } : ID == 3 ? function isFrozen(it){\n return isObject(it) ? fn(it) : true;\n } : ID == 4 ? function isSealed(it){\n return isObject(it) ? fn(it) : true;\n } : ID == 5 ? function isExtensible(it){\n return isObject(it) ? fn(it) : false;\n } : ID == 6 ? function getOwnPropertyDescriptor(it, key){\n return fn(toObject(it), key);\n } : ID == 7 ? function getPrototypeOf(it){\n return fn(Object($.assertDefined(it)));\n } : ID == 8 ? function keys(it){\n return fn(toObject(it));\n } : require('./$.get-names').get;\n try {\n fn('z');\n } catch(e){\n forced = 1;\n }\n $def($def.S + $def.F * forced, 'Object', method);\n});", "// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nfunction EventEmitter() {\n this._events = this._events || {};\n this._maxListeners = this._maxListeners || undefined;\n}\nmodule.exports = EventEmitter;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nEventEmitter.defaultMaxListeners = 10;\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function(n) {\n if (!isNumber(n) || n < 0 || isNaN(n))\n throw TypeError('n must be a positive number');\n this._maxListeners = n;\n return this;\n};\n\nEventEmitter.prototype.emit = function(type) {\n var er, handler, len, args, i, listeners;\n\n if (!this._events)\n this._events = {};\n\n // If there is no 'error' event listener then throw.\n if (type === 'error') {\n if (!this._events.error ||\n (isObject(this._events.error) && !this._events.error.length)) {\n er = arguments[1];\n if (er instanceof Error) {\n throw er; // Unhandled 'error' event\n }\n throw TypeError('Uncaught, unspecified \"error\" event.');\n }\n }\n\n handler = this._events[type];\n\n if (isUndefined(handler))\n return false;\n\n if (isFunction(handler)) {\n switch (arguments.length) {\n // fast cases\n case 1:\n handler.call(this);\n break;\n case 2:\n handler.call(this, arguments[1]);\n break;\n case 3:\n handler.call(this, arguments[1], arguments[2]);\n break;\n // slower\n default:\n len = arguments.length;\n args = new Array(len - 1);\n for (i = 1; i < len; i++)\n args[i - 1] = arguments[i];\n handler.apply(this, args);\n }\n } else if (isObject(handler)) {\n len = arguments.length;\n args = new Array(len - 1);\n for (i = 1; i < len; i++)\n args[i - 1] = arguments[i];\n\n listeners = handler.slice();\n len = listeners.length;\n for (i = 0; i < len; i++)\n listeners[i].apply(this, args);\n }\n\n return true;\n};\n\nEventEmitter.prototype.addListener = function(type, listener) {\n var m;\n\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n if (!this._events)\n this._events = {};\n\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (this._events.newListener)\n this.emit('newListener', type,\n isFunction(listener.listener) ?\n listener.listener : listener);\n\n if (!this._events[type])\n // Optimize the case of one listener. Don't need the extra array object.\n this._events[type] = listener;\n else if (isObject(this._events[type]))\n // If we've already got an array, just append.\n this._events[type].push(listener);\n else\n // Adding the second element, need to change to array.\n this._events[type] = [this._events[type], listener];\n\n // Check for listener leak\n if (isObject(this._events[type]) && !this._events[type].warned) {\n var m;\n if (!isUndefined(this._maxListeners)) {\n m = this._maxListeners;\n } else {\n m = EventEmitter.defaultMaxListeners;\n }\n\n if (m && m > 0 && this._events[type].length > m) {\n this._events[type].warned = true;\n console.error('(node) warning: possible EventEmitter memory ' +\n 'leak detected. %d listeners added. ' +\n 'Use emitter.setMaxListeners() to increase limit.',\n this._events[type].length);\n if (typeof console.trace === 'function') {\n // not supported in IE 10\n console.trace();\n }\n }\n }\n\n return this;\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.once = function(type, listener) {\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n var fired = false;\n\n function g() {\n this.removeListener(type, g);\n\n if (!fired) {\n fired = true;\n listener.apply(this, arguments);\n }\n }\n\n g.listener = listener;\n this.on(type, g);\n\n return this;\n};\n\n// emits a 'removeListener' event iff the listener was removed\nEventEmitter.prototype.removeListener = function(type, listener) {\n var list, position, length, i;\n\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n if (!this._events || !this._events[type])\n return this;\n\n list = this._events[type];\n length = list.length;\n position = -1;\n\n if (list === listener ||\n (isFunction(list.listener) && list.listener === listener)) {\n delete this._events[type];\n if (this._events.removeListener)\n this.emit('removeListener', type, listener);\n\n } else if (isObject(list)) {\n for (i = length; i-- > 0;) {\n if (list[i] === listener ||\n (list[i].listener && list[i].listener === listener)) {\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (list.length === 1) {\n list.length = 0;\n delete this._events[type];\n } else {\n list.splice(position, 1);\n }\n\n if (this._events.removeListener)\n this.emit('removeListener', type, listener);\n }\n\n return this;\n};\n\nEventEmitter.prototype.removeAllListeners = function(type) {\n var key, listeners;\n\n if (!this._events)\n return this;\n\n // not listening for removeListener, no need to emit\n if (!this._events.removeListener) {\n if (arguments.length === 0)\n this._events = {};\n else if (this._events[type])\n delete this._events[type];\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n for (key in this._events) {\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = {};\n return this;\n }\n\n listeners = this._events[type];\n\n if (isFunction(listeners)) {\n this.removeListener(type, listeners);\n } else {\n // LIFO order\n while (listeners.length)\n this.removeListener(type, listeners[listeners.length - 1]);\n }\n delete this._events[type];\n\n return this;\n};\n\nEventEmitter.prototype.listeners = function(type) {\n var ret;\n if (!this._events || !this._events[type])\n ret = [];\n else if (isFunction(this._events[type]))\n ret = [this._events[type]];\n else\n ret = this._events[type].slice();\n return ret;\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n var ret;\n if (!emitter._events || !emitter._events[type])\n ret = 0;\n else if (isFunction(emitter._events[type]))\n ret = 1;\n else\n ret = emitter._events[type].length;\n return ret;\n};\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\n", - "let makeImage = require('../../app/lib/make-image')\n\nlet portrait1 =\n`data:image/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB\nAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB\nAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA\nASygAwAEAAAAAQAAAbkAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA\nOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA\nDEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF\nQyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl\nc2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY\nWVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1\nZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl\nY2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl\neHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55\nAABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig\nSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA\nAAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ\nWiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj\nLmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF\nQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA\nAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g\nc1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug\nVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm\nZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD\nXJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA\nAAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU\nABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL\nAJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH\nAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp\nAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6\nAoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+\nA4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2\nBMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn\nBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS\nB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6\nCc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh\nC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J\nDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1\nERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl\nFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd\nF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe\nGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q\nHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC\nIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo\nJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud\nK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk\nMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9\nNjc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq\nO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs\nQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF\nSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63\nTwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC\nVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n\nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp\nZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I\nbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF\ndeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i\nfsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef\niASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/\nkaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC\nm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp\nphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1\nsOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun\nvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB\nx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE\n08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v\n4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG\n7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH\n+lf65/t3/Af8mP0p/br+S/7c/23////AABEIAbkBLAMBEgACEQEDEQH/xAAfAAAB\nBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B\nAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp\nKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK\nkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj\n5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ\n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\n1/bC+L2seJ9C8NeHMWlnBcafb6tex2V150ckkoJiG7CnCgMdpA5KnmgD5u1zULvV\ndWutRv7g3F3czPPcTEAeZK7FnbgAcsSelUaACigAooAKKACigAooAKKACigAooAK\nKACigAooAKKAFAyQM496SgD1PxlLZN8APBKW2oWtzP8A2nqb3EMbfPas23ajg9yP\nm9MGvLixIAJ4HSgBtFABRQAUUAf/1vjeigAooAKKACigAooAKKACigAooAKKACig\nAooAKKACigAooAKKACigAooAf5jZBG1SOhVQD+lMoA0vC76VH4hsH1yOeTTVuEN0\nkJw7Rg/MARyCemRyM5HNZtAFrVZoLjUZ5raA28DyMYovNMnlpk7V3NyQFwMn0qrQ\nAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFKozn6E/pQAlbHjGxttN\n8Q3VnaIUhjKhQWJIyinqfcmgDHooAKKACigD/9f43ooAKKACigAooAKKACigAooA\nKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKAHR7d67zhc802gDotc0zSn\n0/TLnw9NdXmNMSbVsxsRa3HmOGXheE27CCeMk81X8H+Kde8Ja1HrHh/U7jT7yNWU\nSQsMlSMFSCCrD2IIzz1oAx2Ur1wfcHIrqfEHidvGGprc+IIbGO+mZFm1G3txAWOQ\nDJJHGMSEAHoATzQBylXtd09dL1SayS9tL5Yzhbi1k3xSDGdyt3H6g5B6UAUaKACi\ngAooAKKACigAooAKKACigAooAKKAJry5nu52nuZXllfG52OSeAP5AVDQAUUAFFAB\nRQB//9D43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK\nACigAooAKKACigAooAKKAFJJJJ5J60lABRQAUUAFXtF0rUNYvPsemWkt1P5byeXG\nMsVUZYgd8CgCjVi/s7mwupLW7hkgmjOHjkQo6n3VgCPxFAFeigAooAKKACigApyK\nWYKOtADa1fEmg6joFxbW+pwiGW4tIbtULZYJKu5Nw/hOOx6UAZVFABRQAUUAFFAH\n/9H43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig\nAooAKKACigAooAKKACigAooAKKAFU4PQH2IpKAOj8R+NfEniLTLbT9c1WfUo7Vi0\nT3SpJKpIx/rSvmEY7FiO+M81zlABRQAUUAFFABSqdpDDHHPNAHR/DZdKXxtpEuuo\nH0qK7jlvVMe8NCh3upHTnaFOeze9Q+KdSup30+0ka0X7Bp8dkptU2gplnw5H32zI\nct0PHpQA/wCIvia58YeM9V8R3ShH1C7kuBGFAEak4RAB2VFRfwrnqACigAooAKKA\nCigD/9L43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK\nACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig\nAooAKKAP/9k=`\n\nmodule.exports = function makeImages (cb) {\n let images = {}\n makeImage(portrait1, (image) => {\n images.portrait1 = image\n cb(images)\n })\n}\n\n" + "exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n", + "\"use strict\";\n\nmodule.exports = function Canvas () {\n return document.createElement('canvas');\n};\n", + "// js-imagediff 1.0.3\n// (c) 2011-2012 Carl Sutherland, Humble Software\n// Distributed under the MIT License\n// For original source and documentation visit:\n// http://www.github.com/HumbleSoftware/js-imagediff\n\n(function (name, definition) {\n var root = this;\n if (typeof module !== 'undefined') {\n try {\n var Canvas = require('canvas');\n } catch (e) {\n throw new Error(\n e.message + '\\n' +\n 'Please see https://github.com/HumbleSoftware/js-imagediff#cannot-find-module-canvas\\n'\n );\n }\n module.exports = definition(root, name, Canvas);\n } else if (typeof define === 'function' && typeof define.amd === 'object') {\n define(definition);\n } else {\n root[name] = definition(root, name);\n }\n})('imagediff', function (root, name, Canvas) {\n\n var\n TYPE_ARRAY = /\\[object Array\\]/i,\n TYPE_CANVAS = /\\[object (Canvas|HTMLCanvasElement)\\]/i,\n TYPE_CONTEXT = /\\[object CanvasRenderingContext2D\\]/i,\n TYPE_IMAGE = /\\[object (Image|HTMLImageElement)\\]/i,\n TYPE_IMAGE_DATA = /\\[object ImageData\\]/i,\n\n UNDEFINED = 'undefined',\n\n canvas = getCanvas(),\n context = canvas.getContext('2d'),\n previous = root[name],\n imagediff, jasmine;\n\n // Creation\n function getCanvas (width, height) {\n var\n canvas = Canvas ?\n new Canvas() :\n document.createElement('canvas');\n if (width) canvas.width = width;\n if (height) canvas.height = height;\n return canvas;\n }\n function getImageData (width, height) {\n canvas.width = width;\n canvas.height = height;\n context.clearRect(0, 0, width, height);\n return context.createImageData(width, height);\n }\n // expost canvas module\n function getCanvasRef() {\n return Canvas;\n }\n\n\n // Type Checking\n function isImage (object) {\n return isType(object, TYPE_IMAGE);\n }\n function isCanvas (object) {\n return isType(object, TYPE_CANVAS);\n }\n function isContext (object) {\n return isType(object, TYPE_CONTEXT);\n }\n function isImageData (object) {\n return !!(object &&\n isType(object, TYPE_IMAGE_DATA) &&\n typeof(object.width) !== UNDEFINED &&\n typeof(object.height) !== UNDEFINED &&\n typeof(object.data) !== UNDEFINED);\n }\n function isImageType (object) {\n return (\n isImage(object) ||\n isCanvas(object) ||\n isContext(object) ||\n isImageData(object)\n );\n }\n function isType (object, type) {\n return typeof (object) === 'object' && !!Object.prototype.toString.apply(object).match(type);\n }\n\n\n // Type Conversion\n function copyImageData (imageData) {\n var\n height = imageData.height,\n width = imageData.width,\n data = imageData.data,\n newImageData, newData, i;\n\n canvas.width = width;\n canvas.height = height;\n newImageData = context.getImageData(0, 0, width, height);\n newData = newImageData.data;\n\n for (i = imageData.data.length; i--;) {\n newData[i] = data[i];\n }\n\n return newImageData;\n }\n function toImageData (object) {\n if (isImage(object)) { return toImageDataFromImage(object); }\n if (isCanvas(object)) { return toImageDataFromCanvas(object); }\n if (isContext(object)) { return toImageDataFromContext(object); }\n if (isImageData(object)) { return object; }\n }\n function toImageDataFromImage (image) {\n var\n height = image.height,\n width = image.width;\n canvas.width = width;\n canvas.height = height;\n context.clearRect(0, 0, width, height);\n context.drawImage(image, 0, 0);\n return context.getImageData(0, 0, width, height);\n }\n function toImageDataFromCanvas (canvas) {\n var\n height = canvas.height,\n width = canvas.width,\n context = canvas.getContext('2d');\n return context.getImageData(0, 0, width, height);\n }\n function toImageDataFromContext (context) {\n var\n canvas = context.canvas,\n height = canvas.height,\n width = canvas.width;\n return context.getImageData(0, 0, width, height);\n }\n function toCanvas (object) {\n var\n data = toImageData(object),\n canvas = getCanvas(data.width, data.height),\n context = canvas.getContext('2d');\n\n context.putImageData(data, 0, 0);\n return canvas;\n }\n\n\n // ImageData Equality Operators\n function equalWidth (a, b) {\n return a.width === b.width;\n }\n function equalHeight (a, b) {\n return a.height === b.height;\n }\n function equalDimensions (a, b) {\n return equalHeight(a, b) && equalWidth(a, b);\n }\n function equal (a, b, tolerance) {\n\n var\n aData = a.data,\n bData = b.data,\n length = aData.length,\n i;\n\n tolerance = tolerance || 0;\n\n if (!equalDimensions(a, b)) return false;\n for (i = length; i--;) if (aData[i] !== bData[i] && Math.abs(aData[i] - bData[i]) > tolerance) return false;\n\n return true;\n }\n\n\n // Diff\n function diff (a, b, options) {\n return (equalDimensions(a, b) ? diffEqual : diffUnequal)(a, b, options);\n }\n function diffEqual (a, b, options) {\n\n var\n height = a.height,\n width = a.width,\n c = getImageData(width, height), // c = a - b\n aData = a.data,\n bData = b.data,\n cData = c.data,\n length = cData.length,\n row, column,\n i, j, k, v;\n\n for (i = 0; i < length; i += 4) {\n cData[i] = Math.abs(aData[i] - bData[i]);\n cData[i+1] = Math.abs(aData[i+1] - bData[i+1]);\n cData[i+2] = Math.abs(aData[i+2] - bData[i+2]);\n cData[i+3] = Math.abs(255 - Math.abs(aData[i+3] - bData[i+3]));\n }\n\n return c;\n }\n function diffUnequal (a, b, options) {\n\n var\n height = Math.max(a.height, b.height),\n width = Math.max(a.width, b.width),\n c = getImageData(width, height), // c = a - b\n aData = a.data,\n bData = b.data,\n cData = c.data,\n align = options && options.align,\n rowOffset,\n columnOffset,\n row, column,\n i, j, k, v;\n\n\n for (i = cData.length - 1; i > 0; i = i - 4) {\n cData[i] = 255;\n }\n\n // Add First Image\n offsets(a);\n for (row = a.height; row--;){\n for (column = a.width; column--;) {\n i = 4 * ((row + rowOffset) * width + (column + columnOffset));\n j = 4 * (row * a.width + column);\n cData[i+0] = aData[j+0]; // r\n cData[i+1] = aData[j+1]; // g\n cData[i+2] = aData[j+2]; // b\n // cData[i+3] = aData[j+3]; // a\n }\n }\n\n // Subtract Second Image\n offsets(b);\n for (row = b.height; row--;){\n for (column = b.width; column--;) {\n i = 4 * ((row + rowOffset) * width + (column + columnOffset));\n j = 4 * (row * b.width + column);\n cData[i+0] = Math.abs(cData[i+0] - bData[j+0]); // r\n cData[i+1] = Math.abs(cData[i+1] - bData[j+1]); // g\n cData[i+2] = Math.abs(cData[i+2] - bData[j+2]); // b\n }\n }\n\n // Helpers\n function offsets (imageData) {\n if (align === 'top') {\n rowOffset = 0;\n columnOffset = 0;\n } else {\n rowOffset = Math.floor((height - imageData.height) / 2);\n columnOffset = Math.floor((width - imageData.width) / 2);\n }\n }\n\n return c;\n }\n\n\n // Validation\n function checkType () {\n var i;\n for (i = 0; i < arguments.length; i++) {\n if (!isImageType(arguments[i])) {\n throw {\n name : 'ImageTypeError',\n message : 'Submitted object was not an image.'\n };\n }\n }\n }\n\n\n // Jasmine Matchers\n function get (element, content) {\n element = document.createElement(element);\n if (element && content) {\n element.innerHTML = content;\n }\n return element;\n }\n\n jasmine = {\n\n toBeImageData : function () {\n return imagediff.isImageData(this.actual);\n },\n\n toImageDiffEqual : function (expected, tolerance) {\n\n if (typeof (document) !== UNDEFINED) {\n this.message = function () {\n var\n div = get('div'),\n a = get('div', '
Actual:
'),\n b = get('div', '
Expected:
'),\n c = get('div', '
Diff:
'),\n diff = imagediff.diff(this.actual, expected),\n canvas = getCanvas(),\n context;\n\n canvas.height = diff.height;\n canvas.width = diff.width;\n\n div.style.overflow = 'hidden';\n a.style.float = 'left';\n b.style.float = 'left';\n c.style.float = 'left';\n\n context = canvas.getContext('2d');\n context.putImageData(diff, 0, 0);\n\n a.appendChild(toCanvas(this.actual));\n b.appendChild(toCanvas(expected));\n c.appendChild(canvas);\n\n div.appendChild(a);\n div.appendChild(b);\n div.appendChild(c);\n\n return [\n div,\n \"Expected not to be equal.\"\n ];\n };\n }\n\n return imagediff.equal(this.actual, expected, tolerance);\n }\n };\n\n\n // Image Output\n function imageDataToPNG (imageData, outputFile, callback) {\n\n var\n canvas = toCanvas(imageData),\n base64Data,\n decodedImage;\n\n callback = callback || Function;\n\n base64Data = canvas.toDataURL().replace(/^data:image\\/\\w+;base64,/,\"\");\n decodedImage = new Buffer(base64Data, 'base64');\n require('fs').writeFile(outputFile, decodedImage, callback);\n }\n\n\n // Definition\n imagediff = {\n\n createCanvas : getCanvas,\n createImageData : getImageData,\n getCanvasRef: getCanvasRef,\n\n isImage : isImage,\n isCanvas : isCanvas,\n isContext : isContext,\n isImageData : isImageData,\n isImageType : isImageType,\n\n toImageData : function (object) {\n checkType(object);\n if (isImageData(object)) { return copyImageData(object); }\n return toImageData(object);\n },\n\n equal : function (a, b, tolerance) {\n checkType(a, b);\n a = toImageData(a);\n b = toImageData(b);\n return equal(a, b, tolerance);\n },\n diff : function (a, b, options) {\n checkType(a, b);\n a = toImageData(a);\n b = toImageData(b);\n return diff(a, b, options);\n },\n\n jasmine : jasmine,\n\n // Compatibility\n noConflict : function () {\n root[name] = previous;\n return imagediff;\n }\n };\n\n if (typeof module !== 'undefined') {\n imagediff.imageDataToPNG = imageDataToPNG;\n }\n\n return imagediff;\n});\n", + "\n/**\n * isArray\n */\n\nvar isArray = Array.isArray;\n\n/**\n * toString\n */\n\nvar str = Object.prototype.toString;\n\n/**\n * Whether or not the given `val`\n * is an array.\n *\n * example:\n *\n * isArray([]);\n * // > true\n * isArray(arguments);\n * // > false\n * isArray('');\n * // > false\n *\n * @param {mixed} val\n * @return {bool}\n */\n\nmodule.exports = isArray || function (val) {\n return !! val && '[object Array]' == str.call(val);\n};\n", + "module.exports = {\n portrait1: require('./portrait1')\n}\n", + "let makeImage = require('../../app/lib/make-image')\n\nmodule.exports = (cb) => {\n makeImage(`data:image/jpg;base64,\n/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB\nAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB\nAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA\nAGSgAwAEAAAAAQAAAJMAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA\nOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA\nDEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF\nQyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl\nc2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY\nWVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1\nZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl\nY2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl\neHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55\nAABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig\nSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA\nAAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ\nWiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj\nLmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF\nQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA\nAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g\nc1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug\nVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm\nZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD\nXJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA\nAAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU\nABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL\nAJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH\nAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp\nAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6\nAoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+\nA4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2\nBMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn\nBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS\nB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6\nCc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh\nC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J\nDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1\nERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl\nFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd\nF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe\nGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q\nHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC\nIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo\nJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud\nK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk\nMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9\nNjc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq\nO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs\nQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF\nSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63\nTwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC\nVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n\nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp\nZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I\nbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF\ndeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i\nfsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef\niASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/\nkaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC\nm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp\nphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1\nsOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun\nvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB\nx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE\n08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v\n4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG\n7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH\n+lf65/t3/Af8mP0p/br+S/7c/23////AABEIAJMAZAMBEgACEQEDEQH/xAAfAAAB\nBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B\nAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp\nKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK\nkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj\n5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ\n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`\n , cb)\n}\n", + "module.exports = {\n singlePortrait: require('./single-portrait')\n}\n", + "let makeImage = require('../../app/lib/make-image')\n\nmodule.exports = (cb) => {\n makeImage(`data:image/png;base64,\n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\nRWARCPwfuNDlwVfqKPUAAAAASUVORK5CYII=`\n , cb)\n}\n" ] } \ No newline at end of file diff --git a/dist/comicbook.min.js b/dist/comicbook.min.js index 65edf61..97868c4 100644 --- a/dist/comicbook.min.js +++ b/dist/comicbook.min.js @@ -1,3 +1,4 @@ -!function A(n,e,t){function o(r,s){if(!e[r]){if(!n[r]){var g="function"==typeof require&&require;if(!s&&g)return g(r,!0);if(i)return i(r,!0);var a=new Error("Cannot find module '"+r+"'");throw a.code="MODULE_NOT_FOUND",a}var c=e[r]={exports:{}};n[r][0].call(c.exports,function(A){var e=n[r][1][A];return o(e?e:A)},c,c.exports,A,n,e,t)}return e[r].exports}for(var i="function"==typeof require&&require,r=0;rr;)for(var s,g=t.ES5Object(arguments[r++]),a=o(g),c=a.length,f=0;c>f;)e[s=a[f++]]=g[s];return e}},{"./$":21,"./$.enum-keys":18}],17:[function(A,n,e){function t(A,n){return function(){return A.apply(n,arguments)}}function o(A,n,e){var i,a,c,f,u=A&o.G,K=A&o.P,l=u?r:A&o.S?r[n]:(r[n]||{}).prototype,h=u?s:s[n]||(s[n]={});u&&(e=n);for(i in e)a=!(A&o.F)&&l&&i in l,a&&i in h||(c=a?l[i]:e[i],u&&!g(l[i])?f=e[i]:A&o.B&&a?f=t(c,r):A&o.W&&l[i]==c?!function(A){f=function(n){return this instanceof A?new A(n):A(n)},f.prototype=A.prototype}(c):f=K&&g(c)?t(Function.call,c):c,h[i]=f,K&&((h.prototype||(h.prototype={}))[i]=c))}var i=A("./$"),r=i.g,s=i.core,g=i.isFunction;o.F=1,o.G=2,o.S=4,o.P=8,o.B=16,o.W=32,n.exports=o},{"./$":21}],18:[function(A,n,e){var t=A("./$");n.exports=function(A){var n=t.getKeys(A),e=t.getDesc,o=t.getSymbols;return o&&t.each.call(o(A),function(t){e(A,t).enumerable&&n.push(t)}),n}},{"./$":21}],19:[function(A,n,e){n.exports=function(A){return A.FW=!1,A.path=A.core,A}},{}],20:[function(A,n,e){function t(A){try{return r(A)}catch(A){return s.slice()}}var o=A("./$"),i={}.toString,r=o.getNames,s="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];n.exports.get=function(A){return s&&"[object Window]"==i.call(A)?t(A):r(o.toObject(A))}},{"./$":21}],21:[function(A,n,e){"use strict";function t(A){return isNaN(A=+A)?0:(A>0?h:l)(A)}function o(A,n){return{enumerable:!(1&A),configurable:!(2&A),writable:!(4&A),value:n}}function i(A,n,e){return A[n]=e,A}function r(A){return C?function(n,e,t){return F.setDesc(n,e,o(A,t))}:i}function s(A){return null!==A&&("object"==typeof A||"function"==typeof A)}function g(A){return"function"==typeof A}function a(A){if(void 0==A)throw TypeError("Can't call method on "+A);return A}var c="undefined"!=typeof self?self:Function("return this")(),f={},u=Object.defineProperty,K={}.hasOwnProperty,l=Math.ceil,h=Math.floor,B=Math.max,w=Math.min,C=!!function(){try{return 2==u({},"a",{get:function(){return 2}}).a}catch(A){}}(),Q=r(1),F=n.exports=A("./$.fw")({g:c,core:f,html:c.document&&document.documentElement,isObject:s,isFunction:g,that:function(){return this},toInteger:t,toLength:function(A){return A>0?w(t(A),9007199254740991):0},toIndex:function(A,n){return A=t(A),0>A?B(A+n,0):w(A,n)},has:function(A,n){return K.call(A,n)},create:Object.create,getProto:Object.getPrototypeOf,DESC:C,desc:o,getDesc:Object.getOwnPropertyDescriptor,setDesc:u,setDescs:Object.defineProperties,getKeys:Object.keys,getNames:Object.getOwnPropertyNames,getSymbols:Object.getOwnPropertySymbols,assertDefined:a,ES5Object:Object,toObject:function(A){return F.ES5Object(a(A))},hide:Q,def:r(0),set:c.Symbol?i:Q,each:[].forEach});"undefined"!=typeof __e&&(__e=f),"undefined"!=typeof __g&&(__g=c)},{"./$.fw":19}],22:[function(A,n,e){var t=A("./$.def");t(t.S,"Object",{assign:A("./$.assign")})},{"./$.assign":16,"./$.def":17}],23:[function(A,n,e){var t=A("./$"),o=A("./$.def"),i=t.isObject,r=t.toObject;t.each.call("freeze,seal,preventExtensions,isFrozen,isSealed,isExtensible,getOwnPropertyDescriptor,getPrototypeOf,keys,getOwnPropertyNames".split(","),function(n,e){var s=(t.core.Object||{})[n]||Object[n],g=0,a={};a[n]=0==e?function(A){return i(A)?s(A):A}:1==e?function(A){return i(A)?s(A):A}:2==e?function(A){return i(A)?s(A):A}:3==e?function(A){return i(A)?s(A):!0}:4==e?function(A){return i(A)?s(A):!0}:5==e?function(A){return i(A)?s(A):!1}:6==e?function(A,n){return s(r(A),n)}:7==e?function(A){return s(Object(t.assertDefined(A)))}:8==e?function(A){return s(r(A))}:A("./$.get-names").get;try{s("z")}catch(A){g=1}o(o.S+o.F*g,"Object",a)})},{"./$":21,"./$.def":17,"./$.get-names":20}],24:[function(A,n,e){function t(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function o(A){return"function"==typeof A}function i(A){return"number"==typeof A}function r(A){return"object"==typeof A&&null!==A}function s(A){return void 0===A}n.exports=t,t.EventEmitter=t,t.prototype._events=void 0,t.prototype._maxListeners=void 0,t.defaultMaxListeners=10,t.prototype.setMaxListeners=function(A){if(!i(A)||0>A||isNaN(A))throw TypeError("n must be a positive number");return this._maxListeners=A,this},t.prototype.emit=function(A){var n,e,t,i,g,a;if(this._events||(this._events={}),"error"===A&&(!this._events.error||r(this._events.error)&&!this._events.error.length)){if(n=arguments[1],n instanceof Error)throw n;throw TypeError('Uncaught, unspecified "error" event.')}if(e=this._events[A],s(e))return!1;if(o(e))switch(arguments.length){case 1:e.call(this);break;case 2:e.call(this,arguments[1]);break;case 3:e.call(this,arguments[1],arguments[2]);break;default:for(t=arguments.length,i=new Array(t-1),g=1;t>g;g++)i[g-1]=arguments[g];e.apply(this,i)}else if(r(e)){for(t=arguments.length,i=new Array(t-1),g=1;t>g;g++)i[g-1]=arguments[g];for(a=e.slice(),t=a.length,g=0;t>g;g++)a[g].apply(this,i)}return!0},t.prototype.addListener=function(A,n){var e;if(!o(n))throw TypeError("listener must be a function");if(this._events||(this._events={}),this._events.newListener&&this.emit("newListener",A,o(n.listener)?n.listener:n),this._events[A]?r(this._events[A])?this._events[A].push(n):this._events[A]=[this._events[A],n]:this._events[A]=n,r(this._events[A])&&!this._events[A].warned){var e;e=s(this._maxListeners)?t.defaultMaxListeners:this._maxListeners,e&&e>0&&this._events[A].length>e&&(this._events[A].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[A].length),"function"==typeof console.trace&&console.trace())}return this},t.prototype.on=t.prototype.addListener,t.prototype.once=function(A,n){function e(){this.removeListener(A,e),t||(t=!0,n.apply(this,arguments))}if(!o(n))throw TypeError("listener must be a function");var t=!1;return e.listener=n,this.on(A,e),this},t.prototype.removeListener=function(A,n){var e,t,i,s;if(!o(n))throw TypeError("listener must be a function");if(!this._events||!this._events[A])return this;if(e=this._events[A],i=e.length,t=-1,e===n||o(e.listener)&&e.listener===n)delete this._events[A],this._events.removeListener&&this.emit("removeListener",A,n);else if(r(e)){for(s=i;s-->0;)if(e[s]===n||e[s].listener&&e[s].listener===n){t=s;break}if(0>t)return this;1===e.length?(e.length=0,delete this._events[A]):e.splice(t,1),this._events.removeListener&&this.emit("removeListener",A,n)}return this},t.prototype.removeAllListeners=function(A){var n,e;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[A]&&delete this._events[A],this;if(0===arguments.length){for(n in this._events)"removeListener"!==n&&this.removeAllListeners(n);return this.removeAllListeners("removeListener"),this._events={},this}if(e=this._events[A],o(e))this.removeListener(A,e);else for(;e.length;)this.removeListener(A,e[e.length-1]);return delete this._events[A],this},t.prototype.listeners=function(A){var n;return n=this._events&&this._events[A]?o(this._events[A])?[this._events[A]]:this._events[A].slice():[]},t.listenerCount=function(A,n){var e;return e=A._events&&A._events[n]?o(A._events[n])?1:A._events[n].length:0}},{}],25:[function(A,n,e){"use strict";var t=A("../../app/lib/make-image"),o="data:image/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB\nAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB\nAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA\nASygAwAEAAAAAQAAAbkAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA\nOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA\nDEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF\nQyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl\nc2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY\nWVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1\nZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl\nY2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl\neHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55\nAABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig\nSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA\nAAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ\nWiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj\nLmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF\nQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA\nAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g\nc1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug\nVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm\nZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD\nXJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA\nAAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU\nABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL\nAJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH\nAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp\nAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6\nAoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+\nA4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2\nBMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn\nBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS\nB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6\nCc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh\nC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J\nDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1\nERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl\nFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd\nF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe\nGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q\nHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC\nIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo\nJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud\nK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk\nMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9\nNjc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq\nO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs\nQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF\nSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63\nTwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC\nVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n\nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp\nZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I\nbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF\ndeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i\nfsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef\niASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/\nkaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC\nm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp\nphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1\nsOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun\nvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB\nx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE\n08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v\n4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG\n7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH\n+lf65/t3/Af8mP0p/br+S/7c/23////AABEIAbkBLAMBEgACEQEDEQH/xAAfAAAB\nBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B\nAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp\nKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK\nkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj\n5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ\n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\n1/bC+L2seJ9C8NeHMWlnBcafb6tex2V150ckkoJiG7CnCgMdpA5KnmgD5u1zULvV\ndWutRv7g3F3czPPcTEAeZK7FnbgAcsSelUaACigAooAKKACigAooAKKACigAooAK\nKACigAooAKKAFAyQM496SgD1PxlLZN8APBKW2oWtzP8A2nqb3EMbfPas23ajg9yP\nm9MGvLixIAJ4HSgBtFABRQAUUAf/1vjeigAooAKKACigAooAKKACigAooAKKACig\nAooAKKACigAooAKKACigAooAf5jZBG1SOhVQD+lMoA0vC76VH4hsH1yOeTTVuEN0\nkJw7Rg/MARyCemRyM5HNZtAFrVZoLjUZ5raA28DyMYovNMnlpk7V3NyQFwMn0qrQ\nAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFKozn6E/pQAlbHjGxttN\n8Q3VnaIUhjKhQWJIyinqfcmgDHooAKKACigD/9f43ooAKKACigAooAKKACigAooA\nKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKAHR7d67zhc802gDotc0zSn\n0/TLnw9NdXmNMSbVsxsRa3HmOGXheE27CCeMk81X8H+Kde8Ja1HrHh/U7jT7yNWU\nSQsMlSMFSCCrD2IIzz1oAx2Ur1wfcHIrqfEHidvGGprc+IIbGO+mZFm1G3txAWOQ\nDJJHGMSEAHoATzQBylXtd09dL1SayS9tL5Yzhbi1k3xSDGdyt3H6g5B6UAUaKACi\ngAooAKKACigAooAKKACigAooAKKAJry5nu52nuZXllfG52OSeAP5AVDQAUUAFFAB\nRQB//9D43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK\nACigAooAKKACigAooAKKAFJJJJ5J60lABRQAUUAFXtF0rUNYvPsemWkt1P5byeXG\nMsVUZYgd8CgCjVi/s7mwupLW7hkgmjOHjkQo6n3VgCPxFAFeigAooAKKACigApyK\nWYKOtADa1fEmg6joFxbW+pwiGW4tIbtULZYJKu5Nw/hOOx6UAZVFABRQAUUAFFAH\n/9H43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig\nAooAKKACigAooAKKACigAooAKKAFU4PQH2IpKAOj8R+NfEniLTLbT9c1WfUo7Vi0\nT3SpJKpIx/rSvmEY7FiO+M81zlABRQAUUAFFABSqdpDDHHPNAHR/DZdKXxtpEuuo\nH0qK7jlvVMe8NCh3upHTnaFOeze9Q+KdSup30+0ka0X7Bp8dkptU2gplnw5H32zI\nct0PHpQA/wCIvia58YeM9V8R3ShH1C7kuBGFAEak4RAB2VFRfwrnqACigAooAKKA\nCigD/9L43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK\nACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig\nAooAKKAP/9k="; -n.exports=function(A){var n={};t(o,function(e){n.portrait1=e,A(n)})}},{"../../app/lib/make-image":2}]},{},[1]); +!function t(n,e,r){function A(o,s){if(!e[o]){if(!n[o]){var a="function"==typeof require&&require;if(!s&&a)return a(o,!0);if(i)return i(o,!0);var u=new Error("Cannot find module '"+o+"'");throw u.code="MODULE_NOT_FOUND",u}var h=e[o]={exports:{}};n[o][0].call(h.exports,function(t){var e=n[o][1][t];return A(e?e:t)},h,h.exports,t,n,e,r)}return e[o].exports}for(var i="function"==typeof require&&require,o=0;on?-1:a+10>n?n-a+26+26:h+26>n?n-h:u+26>n?n-u+26:void 0}function e(t){function e(t){u[f++]=t}var r,A,o,s,a,u;if(t.length%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var h=t.length;a="="===t.charAt(h-2)?2:"="===t.charAt(h-1)?1:0,u=new i(3*t.length/4-a),o=a>0?t.length-4:t.length;var f=0;for(r=0,A=0;o>r;r+=4,A+=3)s=n(t.charAt(r))<<18|n(t.charAt(r+1))<<12|n(t.charAt(r+2))<<6|n(t.charAt(r+3)),e((16711680&s)>>16),e((65280&s)>>8),e(255&s);return 2===a?(s=n(t.charAt(r))<<2|n(t.charAt(r+1))>>4,e(255&s)):1===a&&(s=n(t.charAt(r))<<10|n(t.charAt(r+1))<<4|n(t.charAt(r+2))>>2,e(s>>8&255),e(255&s)),u}function A(t){function n(t){return r.charAt(t)}function e(t){return n(t>>18&63)+n(t>>12&63)+n(t>>6&63)+n(63&t)}var A,i,o,s=t.length%3,a="";for(A=0,o=t.length-s;o>A;A+=3)i=(t[A]<<16)+(t[A+1]<<8)+t[A+2],a+=e(i);switch(s){case 1:i=t[t.length-1],a+=n(i>>2),a+=n(i<<4&63),a+="==";break;case 2:i=(t[t.length-2]<<8)+t[t.length-1],a+=n(i>>10),a+=n(i>>4&63),a+=n(i<<2&63),a+="="}return a}var i="undefined"!=typeof Uint8Array?Uint8Array:Array,o="+".charCodeAt(0),s="/".charCodeAt(0),a="0".charCodeAt(0),u="a".charCodeAt(0),h="A".charCodeAt(0),f="-".charCodeAt(0),c="_".charCodeAt(0);t.toByteArray=e,t.fromByteArray=A}("undefined"==typeof e?this.base64js={}:e)},{}],13:[function(t,n,e){},{}],14:[function(t,n,e){function r(){return A.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function A(t){return this instanceof A?(this.length=0,this.parent=void 0,"number"==typeof t?i(this,t):"string"==typeof t?o(this,t,arguments.length>1?arguments[1]:"utf8"):s(this,t)):arguments.length>1?new A(t,arguments[1]):new A(t)}function i(t,n){if(t=g(t,0>n?0:0|l(n)),!A.TYPED_ARRAY_SUPPORT)for(var e=0;n>e;e++)t[e]=0;return t}function o(t,n,e){("string"!=typeof e||""===e)&&(e="utf8");var r=0|d(n,e);return t=g(t,r),t.write(n,e),t}function s(t,n){if(A.isBuffer(n))return a(t,n);if(z(n))return u(t,n);if(null==n)throw new TypeError("must start with number, buffer, array or string");return"undefined"!=typeof ArrayBuffer&&n.buffer instanceof ArrayBuffer?h(t,n):n.length?f(t,n):c(t,n)}function a(t,n){var e=0|l(n.length);return t=g(t,e),n.copy(t,0,0,e),t}function u(t,n){var e=0|l(n.length);t=g(t,e);for(var r=0;e>r;r+=1)t[r]=255&n[r];return t}function h(t,n){var e=0|l(n.length);t=g(t,e);for(var r=0;e>r;r+=1)t[r]=255&n[r];return t}function f(t,n){var e=0|l(n.length);t=g(t,e);for(var r=0;e>r;r+=1)t[r]=255&n[r];return t}function c(t,n){var e,r=0;"Buffer"===n.type&&z(n.data)&&(e=n.data,r=0|l(e.length)),t=g(t,r);for(var A=0;r>A;A+=1)t[A]=255&e[A];return t}function g(t,n){A.TYPED_ARRAY_SUPPORT?t=A._augment(new Uint8Array(n)):(t.length=n,t._isBuffer=!0);var e=0!==n&&n<=A.poolSize>>>1;return e&&(t.parent=H),t}function l(t){if(t>=r())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r().toString(16)+" bytes");return 0|t}function E(t,n){if(!(this instanceof E))return new E(t,n);var e=new A(t,n);return delete e.parent,e}function d(t,n){"string"!=typeof t&&(t=""+t);var e=t.length;if(0===e)return 0;for(var r=!1;;)switch(n){case"ascii":case"binary":case"raw":case"raws":return e;case"utf8":case"utf-8":return j(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return T(t).length;default:if(r)return j(t).length;n=(""+n).toLowerCase(),r=!0}}function p(t,n,e){var r=!1;if(n=0|n,e=void 0===e||e===1/0?this.length:0|e,t||(t="utf8"),0>n&&(n=0),e>this.length&&(e=this.length),n>=e)return"";for(;;)switch(t){case"hex":return Q(this,n,e);case"utf8":case"utf-8":return C(this,n,e);case"ascii":return S(this,n,e);case"binary":return F(this,n,e);case"base64":return y(this,n,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return m(this,n,e);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function I(t,n,e,r){e=Number(e)||0;var A=t.length-e;r?(r=Number(r),r>A&&(r=A)):r=A;var i=n.length;if(i%2!==0)throw new Error("Invalid hex string");r>i/2&&(r=i/2);for(var o=0;r>o;o++){var s=parseInt(n.substr(2*o,2),16);if(isNaN(s))throw new Error("Invalid hex string");t[e+o]=s}return o}function v(t,n,e,r){return N(j(n,t.length-e),t,e,r)}function B(t,n,e,r){return N(P(n),t,e,r)}function w(t,n,e,r){return B(t,n,e,r)}function U(t,n,e,r){return N(T(n),t,e,r)}function R(t,n,e,r){return N(O(n,t.length-e),t,e,r)}function y(t,n,e){return 0===n&&e===t.length?X.fromByteArray(t):X.fromByteArray(t.slice(n,e))}function C(t,n,e){var r="",A="";e=Math.min(t.length,e);for(var i=n;e>i;i++)t[i]<=127?(r+=V(A)+String.fromCharCode(t[i]),A=""):A+="%"+t[i].toString(16);return r+V(A)}function S(t,n,e){var r="";e=Math.min(t.length,e);for(var A=n;e>A;A++)r+=String.fromCharCode(127&t[A]);return r}function F(t,n,e){var r="";e=Math.min(t.length,e);for(var A=n;e>A;A++)r+=String.fromCharCode(t[A]);return r}function Q(t,n,e){var r=t.length;(!n||0>n)&&(n=0),(!e||0>e||e>r)&&(e=r);for(var A="",i=n;e>i;i++)A+=K(t[i]);return A}function m(t,n,e){for(var r=t.slice(n,e),A="",i=0;it)throw new RangeError("offset is not uint");if(t+n>e)throw new RangeError("Trying to access beyond buffer length")}function b(t,n,e,r,i,o){if(!A.isBuffer(t))throw new TypeError("buffer must be a Buffer instance");if(n>i||o>n)throw new RangeError("value is out of bounds");if(e+r>t.length)throw new RangeError("index out of range")}function W(t,n,e,r){0>n&&(n=65535+n+1);for(var A=0,i=Math.min(t.length-e,2);i>A;A++)t[e+A]=(n&255<<8*(r?A:1-A))>>>8*(r?A:1-A)}function k(t,n,e,r){0>n&&(n=4294967295+n+1);for(var A=0,i=Math.min(t.length-e,4);i>A;A++)t[e+A]=n>>>8*(r?A:3-A)&255}function x(t,n,e,r,A,i){if(n>A||i>n)throw new RangeError("value is out of bounds");if(e+r>t.length)throw new RangeError("index out of range");if(0>e)throw new RangeError("index out of range")}function M(t,n,e,r,A){return A||x(t,n,e,4,3.4028234663852886e38,-3.4028234663852886e38),G.write(t,n,e,r,23,4),e+4}function L(t,n,e,r,A){return A||x(t,n,e,8,1.7976931348623157e308,-1.7976931348623157e308),G.write(t,n,e,r,52,8),e+8}function Y(t){if(t=D(t).replace(q,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function D(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function K(t){return 16>t?"0"+t.toString(16):t.toString(16)}function j(t,n){n=n||1/0;for(var e,r=t.length,A=null,i=[],o=0;r>o;o++){if(e=t.charCodeAt(o),e>55295&&57344>e){if(!A){if(e>56319){(n-=3)>-1&&i.push(239,191,189);continue}if(o+1===r){(n-=3)>-1&&i.push(239,191,189);continue}A=e;continue}if(56320>e){(n-=3)>-1&&i.push(239,191,189),A=e;continue}e=A-55296<<10|e-56320|65536,A=null}else A&&((n-=3)>-1&&i.push(239,191,189),A=null);if(128>e){if((n-=1)<0)break;i.push(e)}else if(2048>e){if((n-=2)<0)break;i.push(e>>6|192,63&e|128)}else if(65536>e){if((n-=3)<0)break;i.push(e>>12|224,e>>6&63|128,63&e|128)}else{if(!(2097152>e))throw new Error("Invalid code point");if((n-=4)<0)break;i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}}return i}function P(t){for(var n=[],e=0;e>8,A=e%256,i.push(A),i.push(r);return i}function T(t){return X.toByteArray(Y(t))}function N(t,n,e,r){for(var A=0;r>A&&!(A+e>=n.length||A>=t.length);A++)n[A+e]=t[A];return A}function V(t){try{return decodeURIComponent(t)}catch(t){return String.fromCharCode(65533)}}var X=t("base64-js"),G=t("ieee754"),z=t("is-array");e.Buffer=A,e.SlowBuffer=E,e.INSPECT_MAX_BYTES=50,A.poolSize=8192;var H={};A.TYPED_ARRAY_SUPPORT=function(){function t(){}try{var n=new ArrayBuffer(0),e=new Uint8Array(n);return e.foo=function(){return 42},e.constructor=t,42===e.foo()&&e.constructor===t&&"function"==typeof e.subarray&&0===new Uint8Array(1).subarray(1,1).byteLength}catch(t){return!1}}(),A.isBuffer=function(t){return!(null==t||!t._isBuffer)},A.compare=function(t,n){if(!A.isBuffer(t)||!A.isBuffer(n))throw new TypeError("Arguments must be Buffers");if(t===n)return 0;for(var e=t.length,r=n.length,i=0,o=Math.min(e,r);o>i&&t[i]===n[i];)++i;return i!==o&&(e=t[i],r=n[i]),r>e?-1:e>r?1:0},A.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"raw":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},A.concat=function(t,n){if(!z(t))throw new TypeError("list argument must be an Array of Buffers.");if(0===t.length)return new A(0);if(1===t.length)return t[0];var e;if(void 0===n)for(n=0,e=0;e0&&(t=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(t+=" ... ")),""},A.prototype.compare=function(t){if(!A.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t?0:A.compare(this,t)},A.prototype.indexOf=function(t,n){function e(t,n,e){for(var r=-1,A=0;e+A2147483647?n=2147483647:-2147483648>n&&(n=-2147483648),n>>=0,0===this.length)return-1;if(n>=this.length)return-1;if(0>n&&(n=Math.max(this.length+n,0)),"string"==typeof t)return 0===t.length?-1:String.prototype.indexOf.call(this,t,n);if(A.isBuffer(t))return e(this,t,n);if("number"==typeof t)return A.TYPED_ARRAY_SUPPORT&&"function"===Uint8Array.prototype.indexOf?Uint8Array.prototype.indexOf.call(this,t,n):e(this,[t],n);throw new TypeError("val must be string, number or Buffer")},A.prototype.get=function(t){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(t)},A.prototype.set=function(t,n){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(t,n)},A.prototype.write=function(t,n,e,r){if(void 0===n)r="utf8",e=this.length,n=0;else if(void 0===e&&"string"==typeof n)r=n,e=this.length,n=0;else if(isFinite(n))n=0|n,isFinite(e)?(e=0|e,void 0===r&&(r="utf8")):(r=e,e=void 0);else{var A=r;r=n,n=0|e,e=A}var i=this.length-n;if((void 0===e||e>i)&&(e=i),t.length>0&&(0>e||0>n)||n>this.length)throw new RangeError("attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return I(this,t,n,e);case"utf8":case"utf-8":return v(this,t,n,e);case"ascii":return B(this,t,n,e);case"binary":return w(this,t,n,e);case"base64":return U(this,t,n,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,t,n,e);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},A.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},A.prototype.slice=function(t,n){var e=this.length;t=~~t,n=void 0===n?e:~~n,0>t?(t+=e,0>t&&(t=0)):t>e&&(t=e),0>n?(n+=e,0>n&&(n=0)):n>e&&(n=e),t>n&&(n=t);var r;if(A.TYPED_ARRAY_SUPPORT)r=A._augment(this.subarray(t,n));else{var i=n-t;r=new A(i,void 0);for(var o=0;i>o;o++)r[o]=this[o+t]}return r.length&&(r.parent=this.parent||this),r},A.prototype.readUIntLE=function(t,n,e){t=0|t,n=0|n,e||J(t,n,this.length);for(var r=this[t],A=1,i=0;++i0&&(A*=256);)r+=this[t+--n]*A;return r},A.prototype.readUInt8=function(t,n){return n||J(t,1,this.length),this[t]},A.prototype.readUInt16LE=function(t,n){return n||J(t,2,this.length),this[t]|this[t+1]<<8},A.prototype.readUInt16BE=function(t,n){return n||J(t,2,this.length),this[t]<<8|this[t+1]},A.prototype.readUInt32LE=function(t,n){return n||J(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},A.prototype.readUInt32BE=function(t,n){return n||J(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},A.prototype.readIntLE=function(t,n,e){t=0|t,n=0|n,e||J(t,n,this.length);for(var r=this[t],A=1,i=0;++i=A&&(r-=Math.pow(2,8*n)),r},A.prototype.readIntBE=function(t,n,e){t=0|t,n=0|n,e||J(t,n,this.length);for(var r=n,A=1,i=this[t+--r];r>0&&(A*=256);)i+=this[t+--r]*A;return A*=128,i>=A&&(i-=Math.pow(2,8*n)),i},A.prototype.readInt8=function(t,n){return n||J(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},A.prototype.readInt16LE=function(t,n){n||J(t,2,this.length);var e=this[t]|this[t+1]<<8;return 32768&e?4294901760|e:e},A.prototype.readInt16BE=function(t,n){n||J(t,2,this.length);var e=this[t+1]|this[t]<<8;return 32768&e?4294901760|e:e},A.prototype.readInt32LE=function(t,n){return n||J(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},A.prototype.readInt32BE=function(t,n){return n||J(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},A.prototype.readFloatLE=function(t,n){return n||J(t,4,this.length),G.read(this,t,!0,23,4)},A.prototype.readFloatBE=function(t,n){return n||J(t,4,this.length),G.read(this,t,!1,23,4)},A.prototype.readDoubleLE=function(t,n){return n||J(t,8,this.length),G.read(this,t,!0,52,8)},A.prototype.readDoubleBE=function(t,n){return n||J(t,8,this.length),G.read(this,t,!1,52,8)},A.prototype.writeUIntLE=function(t,n,e,r){t=+t,n=0|n,e=0|e,r||b(this,t,n,e,Math.pow(2,8*e),0);var A=1,i=0;for(this[n]=255&t;++i=0&&(i*=256);)this[n+A]=t/i&255;return n+e},A.prototype.writeUInt8=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,1,255,0),A.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[n]=t,n+1},A.prototype.writeUInt16LE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,2,65535,0),A.TYPED_ARRAY_SUPPORT?(this[n]=t,this[n+1]=t>>>8):W(this,t,n,!0),n+2},A.prototype.writeUInt16BE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,2,65535,0),A.TYPED_ARRAY_SUPPORT?(this[n]=t>>>8,this[n+1]=t):W(this,t,n,!1),n+2},A.prototype.writeUInt32LE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,4,4294967295,0),A.TYPED_ARRAY_SUPPORT?(this[n+3]=t>>>24,this[n+2]=t>>>16,this[n+1]=t>>>8,this[n]=t):k(this,t,n,!0),n+4},A.prototype.writeUInt32BE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,4,4294967295,0),A.TYPED_ARRAY_SUPPORT?(this[n]=t>>>24,this[n+1]=t>>>16,this[n+2]=t>>>8,this[n+3]=t):k(this,t,n,!1),n+4},A.prototype.writeIntLE=function(t,n,e,r){if(t=+t,n=0|n,!r){var A=Math.pow(2,8*e-1);b(this,t,n,e,A-1,-A)}var i=0,o=1,s=0>t?1:0;for(this[n]=255&t;++i>0)-s&255;return n+e},A.prototype.writeIntBE=function(t,n,e,r){if(t=+t,n=0|n,!r){var A=Math.pow(2,8*e-1);b(this,t,n,e,A-1,-A)}var i=e-1,o=1,s=0>t?1:0;for(this[n+i]=255&t;--i>=0&&(o*=256);)this[n+i]=(t/o>>0)-s&255;return n+e},A.prototype.writeInt8=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,1,127,-128),A.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),0>t&&(t=255+t+1),this[n]=t,n+1},A.prototype.writeInt16LE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,2,32767,-32768),A.TYPED_ARRAY_SUPPORT?(this[n]=t,this[n+1]=t>>>8):W(this,t,n,!0),n+2},A.prototype.writeInt16BE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,2,32767,-32768),A.TYPED_ARRAY_SUPPORT?(this[n]=t>>>8,this[n+1]=t):W(this,t,n,!1),n+2},A.prototype.writeInt32LE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,4,2147483647,-2147483648),A.TYPED_ARRAY_SUPPORT?(this[n]=t,this[n+1]=t>>>8,this[n+2]=t>>>16,this[n+3]=t>>>24):k(this,t,n,!0),n+4},A.prototype.writeInt32BE=function(t,n,e){return t=+t,n=0|n,e||b(this,t,n,4,2147483647,-2147483648),0>t&&(t=4294967295+t+1),A.TYPED_ARRAY_SUPPORT?(this[n]=t>>>24,this[n+1]=t>>>16,this[n+2]=t>>>8,this[n+3]=t):k(this,t,n,!1),n+4},A.prototype.writeFloatLE=function(t,n,e){return M(this,t,n,!0,e)},A.prototype.writeFloatBE=function(t,n,e){return M(this,t,n,!1,e)},A.prototype.writeDoubleLE=function(t,n,e){return L(this,t,n,!0,e)},A.prototype.writeDoubleBE=function(t,n,e){return L(this,t,n,!1,e)},A.prototype.copy=function(t,n,e,r){if(e||(e=0),r||0===r||(r=this.length),n>=t.length&&(n=t.length),n||(n=0),r>0&&e>r&&(r=e),r===e)return 0;if(0===t.length||0===this.length)return 0;if(0>n)throw new RangeError("targetStart out of bounds");if(0>e||e>=this.length)throw new RangeError("sourceStart out of bounds");if(0>r)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-ni||!A.TYPED_ARRAY_SUPPORT)for(var o=0;i>o;o++)t[o+n]=this[o+e];else t._set(this.subarray(e,e+i),n);return i},A.prototype.fill=function(t,n,e){if(t||(t=0),n||(n=0),e||(e=this.length),n>e)throw new RangeError("end < start");if(e!==n&&0!==this.length){if(0>n||n>=this.length)throw new RangeError("start out of bounds");if(0>e||e>this.length)throw new RangeError("end out of bounds");var r;if("number"==typeof t)for(r=n;e>r;r++)this[r]=t;else{var A=j(t.toString()),i=A.length;for(r=n;e>r;r++)this[r]=A[r%i]}return this}},A.prototype.toArrayBuffer=function(){if("undefined"!=typeof Uint8Array){if(A.TYPED_ARRAY_SUPPORT)return new A(this).buffer;for(var t=new Uint8Array(this.length),n=0,e=t.length;e>n;n+=1)t[n]=this[n];return t.buffer}throw new TypeError("Buffer.toArrayBuffer not supported in this browser")};var Z=A.prototype;A._augment=function(t){return t.constructor=A,t._isBuffer=!0,t._set=t.set,t.get=Z.get,t.set=Z.set,t.write=Z.write,t.toString=Z.toString,t.toLocaleString=Z.toString,t.toJSON=Z.toJSON,t.equals=Z.equals,t.compare=Z.compare,t.indexOf=Z.indexOf,t.copy=Z.copy,t.slice=Z.slice,t.readUIntLE=Z.readUIntLE,t.readUIntBE=Z.readUIntBE,t.readUInt8=Z.readUInt8,t.readUInt16LE=Z.readUInt16LE,t.readUInt16BE=Z.readUInt16BE,t.readUInt32LE=Z.readUInt32LE,t.readUInt32BE=Z.readUInt32BE,t.readIntLE=Z.readIntLE,t.readIntBE=Z.readIntBE,t.readInt8=Z.readInt8,t.readInt16LE=Z.readInt16LE,t.readInt16BE=Z.readInt16BE,t.readInt32LE=Z.readInt32LE,t.readInt32BE=Z.readInt32BE,t.readFloatLE=Z.readFloatLE,t.readFloatBE=Z.readFloatBE,t.readDoubleLE=Z.readDoubleLE,t.readDoubleBE=Z.readDoubleBE,t.writeUInt8=Z.writeUInt8,t.writeUIntLE=Z.writeUIntLE,t.writeUIntBE=Z.writeUIntBE,t.writeUInt16LE=Z.writeUInt16LE,t.writeUInt16BE=Z.writeUInt16BE,t.writeUInt32LE=Z.writeUInt32LE,t.writeUInt32BE=Z.writeUInt32BE,t.writeIntLE=Z.writeIntLE,t.writeIntBE=Z.writeIntBE,t.writeInt8=Z.writeInt8,t.writeInt16LE=Z.writeInt16LE,t.writeInt16BE=Z.writeInt16BE,t.writeInt32LE=Z.writeInt32LE,t.writeInt32BE=Z.writeInt32BE,t.writeFloatLE=Z.writeFloatLE,t.writeFloatBE=Z.writeFloatBE,t.writeDoubleLE=Z.writeDoubleLE,t.writeDoubleBE=Z.writeDoubleBE,t.fill=Z.fill,t.inspect=Z.inspect,t.toArrayBuffer=Z.toArrayBuffer,t};var q=/[^+\/0-9A-z\-]/g},{"base64-js":12,ieee754:28,"is-array":31}],15:[function(t,n,e){t("../../modules/es6.object.assign"),n.exports=t("../../modules/$").core.Object.assign},{"../../modules/$":24,"../../modules/es6.object.assign":25}],16:[function(t,n,e){var r=t("../../modules/$");n.exports=function(t,n){return r.create(t,n)}},{"../../modules/$":24}],17:[function(t,n,e){var r=t("../../modules/$");n.exports=function(t,n,e){return r.setDesc(t,n,e)}},{"../../modules/$":24}],18:[function(t,n,e){var r=t("../../modules/$");t("../../modules/es6.object.statics-accept-primitives"),n.exports=function(t,n){return r.getDesc(t,n)}},{"../../modules/$":24,"../../modules/es6.object.statics-accept-primitives":26}],19:[function(t,n,e){var r=t("./$"),A=t("./$.enum-keys");n.exports=Object.assign||function(t,n){for(var e=Object(r.assertDefined(t)),i=arguments.length,o=1;i>o;)for(var s,a=r.ES5Object(arguments[o++]),u=A(a),h=u.length,f=0;h>f;)e[s=u[f++]]=a[s];return e}},{"./$":24,"./$.enum-keys":21}],20:[function(t,n,e){function r(t,n){return function(){return t.apply(n,arguments)}}function A(t,n,e){var i,u,h,f,c=t&A.G,g=t&A.P,l=c?o:t&A.S?o[n]:(o[n]||{}).prototype,E=c?s:s[n]||(s[n]={});c&&(e=n);for(i in e)u=!(t&A.F)&&l&&i in l,u&&i in E||(h=u?l[i]:e[i],c&&!a(l[i])?f=e[i]:t&A.B&&u?f=r(h,o):t&A.W&&l[i]==h?!function(t){f=function(n){return this instanceof t?new t(n):t(n)},f.prototype=t.prototype}(h):f=g&&a(h)?r(Function.call,h):h,E[i]=f,g&&((E.prototype||(E.prototype={}))[i]=h))}var i=t("./$"),o=i.g,s=i.core,a=i.isFunction;A.F=1,A.G=2,A.S=4,A.P=8,A.B=16,A.W=32,n.exports=A},{"./$":24}],21:[function(t,n,e){var r=t("./$");n.exports=function(t){var n=r.getKeys(t),e=r.getDesc,A=r.getSymbols;return A&&r.each.call(A(t),function(r){e(t,r).enumerable&&n.push(r)}),n}},{"./$":24}],22:[function(t,n,e){n.exports=function(t){return t.FW=!1,t.path=t.core,t}},{}],23:[function(t,n,e){function r(t){try{return o(t)}catch(t){return s.slice()}}var A=t("./$"),i={}.toString,o=A.getNames,s="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];n.exports.get=function(t){return s&&"[object Window]"==i.call(t)?r(t):o(A.toObject(t))}},{"./$":24}],24:[function(t,n,e){"use strict";function r(t){return isNaN(t=+t)?0:(t>0?E:l)(t)}function A(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}function i(t,n,e){return t[n]=e,t}function o(t){return I?function(n,e,r){return B.setDesc(n,e,A(t,r))}:i}function s(t){return null!==t&&("object"==typeof t||"function"==typeof t)}function a(t){return"function"==typeof t}function u(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}var h="undefined"!=typeof self?self:Function("return this")(),f={},c=Object.defineProperty,g={}.hasOwnProperty,l=Math.ceil,E=Math.floor,d=Math.max,p=Math.min,I=!!function(){try{return 2==c({},"a",{get:function(){return 2}}).a}catch(t){}}(),v=o(1),B=n.exports=t("./$.fw")({g:h,core:f,html:h.document&&document.documentElement,isObject:s,isFunction:a,that:function(){return this},toInteger:r,toLength:function(t){return t>0?p(r(t),9007199254740991):0},toIndex:function(t,n){return t=r(t),0>t?d(t+n,0):p(t,n)},has:function(t,n){return g.call(t,n)},create:Object.create,getProto:Object.getPrototypeOf,DESC:I,desc:A,getDesc:Object.getOwnPropertyDescriptor,setDesc:c,setDescs:Object.defineProperties,getKeys:Object.keys,getNames:Object.getOwnPropertyNames,getSymbols:Object.getOwnPropertySymbols,assertDefined:u,ES5Object:Object,toObject:function(t){return B.ES5Object(u(t))},hide:v,def:o(0),set:h.Symbol?i:v,each:[].forEach});"undefined"!=typeof __e&&(__e=f),"undefined"!=typeof __g&&(__g=h)},{"./$.fw":22}],25:[function(t,n,e){var r=t("./$.def");r(r.S,"Object",{assign:t("./$.assign")})},{"./$.assign":19,"./$.def":20}],26:[function(t,n,e){var r=t("./$"),A=t("./$.def"),i=r.isObject,o=r.toObject;r.each.call("freeze,seal,preventExtensions,isFrozen,isSealed,isExtensible,getOwnPropertyDescriptor,getPrototypeOf,keys,getOwnPropertyNames".split(","),function(n,e){var s=(r.core.Object||{})[n]||Object[n],a=0,u={};u[n]=0==e?function(t){return i(t)?s(t):t}:1==e?function(t){return i(t)?s(t):t}:2==e?function(t){return i(t)?s(t):t}:3==e?function(t){return i(t)?s(t):!0}:4==e?function(t){return i(t)?s(t):!0}:5==e?function(t){return i(t)?s(t):!1}:6==e?function(t,n){return s(o(t),n)}:7==e?function(t){return s(Object(r.assertDefined(t)))}:8==e?function(t){return s(o(t))}:t("./$.get-names").get;try{s("z")}catch(t){a=1}A(A.S+A.F*a,"Object",u)})},{"./$":24,"./$.def":20,"./$.get-names":23}],27:[function(t,n,e){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function A(t){return"function"==typeof t}function i(t){return"number"==typeof t}function o(t){return"object"==typeof t&&null!==t}function s(t){return void 0===t}n.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(t){if(!i(t)||0>t||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},r.prototype.emit=function(t){var n,e,r,i,a,u;if(this._events||(this._events={}),"error"===t&&(!this._events.error||o(this._events.error)&&!this._events.error.length)){if(n=arguments[1],n instanceof Error)throw n;throw TypeError('Uncaught, unspecified "error" event.')}if(e=this._events[t],s(e))return!1;if(A(e))switch(arguments.length){case 1:e.call(this);break;case 2:e.call(this,arguments[1]);break;case 3:e.call(this,arguments[1],arguments[2]);break;default:for(r=arguments.length,i=new Array(r-1),a=1;r>a;a++)i[a-1]=arguments[a];e.apply(this,i)}else if(o(e)){for(r=arguments.length,i=new Array(r-1),a=1;r>a;a++)i[a-1]=arguments[a];for(u=e.slice(),r=u.length,a=0;r>a;a++)u[a].apply(this,i)}return!0},r.prototype.addListener=function(t,n){var e;if(!A(n))throw TypeError("listener must be a function");if(this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,A(n.listener)?n.listener:n),this._events[t]?o(this._events[t])?this._events[t].push(n):this._events[t]=[this._events[t],n]:this._events[t]=n,o(this._events[t])&&!this._events[t].warned){var e;e=s(this._maxListeners)?r.defaultMaxListeners:this._maxListeners,e&&e>0&&this._events[t].length>e&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),"function"==typeof console.trace&&console.trace())}return this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(t,n){function e(){this.removeListener(t,e),r||(r=!0,n.apply(this,arguments))}if(!A(n))throw TypeError("listener must be a function");var r=!1;return e.listener=n,this.on(t,e),this},r.prototype.removeListener=function(t,n){var e,r,i,s;if(!A(n))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(e=this._events[t],i=e.length,r=-1,e===n||A(e.listener)&&e.listener===n)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,n);else if(o(e)){for(s=i;s-->0;)if(e[s]===n||e[s].listener&&e[s].listener===n){r=s;break}if(0>r)return this;1===e.length?(e.length=0,delete this._events[t]):e.splice(r,1),this._events.removeListener&&this.emit("removeListener",t,n)}return this},r.prototype.removeAllListeners=function(t){var n,e;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[t]&&delete this._events[t],this;if(0===arguments.length){for(n in this._events)"removeListener"!==n&&this.removeAllListeners(n);return this.removeAllListeners("removeListener"),this._events={},this}if(e=this._events[t],A(e))this.removeListener(t,e);else for(;e.length;)this.removeListener(t,e[e.length-1]);return delete this._events[t],this},r.prototype.listeners=function(t){ +var n;return n=this._events&&this._events[t]?A(this._events[t])?[this._events[t]]:this._events[t].slice():[]},r.listenerCount=function(t,n){var e;return e=t._events&&t._events[n]?A(t._events[n])?1:t._events[n].length:0}},{}],28:[function(t,n,e){e.read=function(t,n,e,r,A){var i,o,s=8*A-r-1,a=(1<>1,h=-7,f=e?A-1:0,c=e?-1:1,g=t[n+f];for(f+=c,i=g&(1<<-h)-1,g>>=-h,h+=s;h>0;i=256*i+t[n+f],f+=c,h-=8);for(o=i&(1<<-h)-1,i>>=-h,h+=r;h>0;o=256*o+t[n+f],f+=c,h-=8);if(0===i)i=1-u;else{if(i===a)return o?NaN:(g?-1:1)*(1/0);o+=Math.pow(2,r),i-=u}return(g?-1:1)*o*Math.pow(2,i-r)},e.write=function(t,n,e,r,A,i){var o,s,a,u=8*i-A-1,h=(1<>1,c=23===A?Math.pow(2,-24)-Math.pow(2,-77):0,g=r?0:i-1,l=r?1:-1,E=0>n||0===n&&0>1/n?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(s=isNaN(n)?1:0,o=h):(o=Math.floor(Math.log(n)/Math.LN2),n*(a=Math.pow(2,-o))<1&&(o--,a*=2),n+=o+f>=1?c/a:c*Math.pow(2,1-f),n*a>=2&&(o++,a/=2),o+f>=h?(s=0,o=h):o+f>=1?(s=(n*a-1)*Math.pow(2,A),o+=f):(s=n*Math.pow(2,f-1)*Math.pow(2,A),o=0));A>=8;t[e+g]=255&s,g+=l,s/=256,A-=8);for(o=o<0;t[e+g]=255&o,g+=l,o/=256,u-=8);t[e+g-l]|=128*E}},{}],29:[function(t,n,e){"use strict";n.exports=function(){return document.createElement("canvas")}},{}],30:[function(t,n,e){(function(e){!function(e,r){var A=this;if("undefined"!=typeof n){try{var i=t("canvas")}catch(t){throw new Error(t.message+"\nPlease see https://github.com/HumbleSoftware/js-imagediff#cannot-find-module-canvas\n")}n.exports=r(A,e,i)}else"function"==typeof define&&"object"==typeof define.amd?define(r):A[e]=r(A,e)}("imagediff",function(r,A,i){function o(t,n){var e=i?new i:document.createElement("canvas");return t&&(e.width=t),n&&(e.height=n),e}function s(t,n){return D.width=t,D.height=n,K.clearRect(0,0,t,n),K.createImageData(t,n)}function a(){return i}function u(t){return l(t,M)}function h(t){return l(t,k)}function f(t){return l(t,x)}function c(t){return!(!t||!l(t,L)||typeof t.width===Y||typeof t.height===Y||typeof t.data===Y)}function g(t){return u(t)||h(t)||f(t)||c(t)}function l(t,n){return"object"==typeof t&&!!Object.prototype.toString.apply(t).match(n)}function E(t){var n,e,r,A=t.height,i=t.width,o=t.data;for(D.width=i,D.height=A,n=K.getImageData(0,0,i,A),e=n.data,r=t.data.length;r--;)e[r]=o[r];return n}function d(t){return u(t)?p(t):h(t)?I(t):f(t)?v(t):c(t)?t:void 0}function p(t){var n=t.height,e=t.width;return D.width=e,D.height=n,K.clearRect(0,0,e,n),K.drawImage(t,0,0),K.getImageData(0,0,e,n)}function I(t){var n=t.height,e=t.width,r=t.getContext("2d");return r.getImageData(0,0,e,n)}function v(t){var n=t.canvas,e=n.height,r=n.width;return t.getImageData(0,0,r,e)}function B(t){var n=d(t),e=o(n.width,n.height),r=e.getContext("2d");return r.putImageData(n,0,0),e}function w(t,n){return t.width===n.width}function U(t,n){return t.height===n.height}function R(t,n){return U(t,n)&&w(t,n)}function y(t,n,e){var r,A=t.data,i=n.data,o=A.length;if(e=e||0,!R(t,n))return!1;for(r=o;r--;)if(A[r]!==i[r]&&Math.abs(A[r]-i[r])>e)return!1;return!0}function C(t,n,e){return(R(t,n)?S:F)(t,n,e)}function S(t,n,e){var r,A=t.height,i=t.width,o=s(i,A),a=t.data,u=n.data,h=o.data,f=h.length;for(r=0;f>r;r+=4)h[r]=Math.abs(a[r]-u[r]),h[r+1]=Math.abs(a[r+1]-u[r+1]),h[r+2]=Math.abs(a[r+2]-u[r+2]),h[r+3]=Math.abs(255-Math.abs(a[r+3]-u[r+3]));return o}function F(t,n,e){function r(t){"top"===p?(A=0,i=0):(A=Math.floor((f-t.height)/2),i=Math.floor((c-t.width)/2))}var A,i,o,a,u,h,f=Math.max(t.height,n.height),c=Math.max(t.width,n.width),g=s(c,f),l=t.data,E=n.data,d=g.data,p=e&&e.align;for(u=d.length-1;u>0;u-=4)d[u]=255;for(r(t),o=t.height;o--;)for(a=t.width;a--;)u=4*((o+A)*c+(a+i)),h=4*(o*t.width+a),d[u+0]=l[h+0],d[u+1]=l[h+1],d[u+2]=l[h+2];for(r(n),o=n.height;o--;)for(a=n.width;a--;)u=4*((o+A)*c+(a+i)),h=4*(o*n.width+a),d[u+0]=Math.abs(d[u+0]-E[h+0]),d[u+1]=Math.abs(d[u+1]-E[h+1]),d[u+2]=Math.abs(d[u+2]-E[h+2]);return g}function Q(){var t;for(t=0;tActual:"),A=m("div","
Expected:
"),i=m("div","
Diff:
"),s=b.diff(this.actual,t),a=o();return a.height=s.height,a.width=s.width,e.style.overflow="hidden",r.style.float="left",A.style.float="left",i.style.float="left",n=a.getContext("2d"),n.putImageData(s,0,0),r.appendChild(B(this.actual)),A.appendChild(B(t)),i.appendChild(a),e.appendChild(r),e.appendChild(A),e.appendChild(i),[e,"Expected not to be equal."]}),b.equal(this.actual,t,n)}},b={createCanvas:o,createImageData:s,getCanvasRef:a,isImage:u,isCanvas:h,isContext:f,isImageData:c,isImageType:g,toImageData:function(t){return Q(t),c(t)?E(t):d(t)},equal:function(t,n,e){return Q(t,n),t=d(t),n=d(n),y(t,n,e)},diff:function(t,n,e){return Q(t,n),t=d(t),n=d(n),C(t,n,e)},jasmine:W,noConflict:function(){return r[A]=j,b}},"undefined"!=typeof n&&(b.imageDataToPNG=J),b})}).call(this,t("buffer").Buffer)},{buffer:14,canvas:29,fs:13}],31:[function(t,n,e){var r=Array.isArray,A=Object.prototype.toString;n.exports=r||function(t){return!!t&&"[object Array]"==A.call(t)}},{}],32:[function(t,n,e){"use strict";n.exports={portrait1:t("./portrait1")}},{"./portrait1":33}],33:[function(t,n,e){"use strict";var r=t("../../app/lib/make-image");n.exports=function(t){r("data:image/jpg;base64,\n/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB\nAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB\nAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA\nAGSgAwAEAAAAAQAAAJMAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA\nOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA\nDEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF\nQyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl\nc2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY\nWVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1\nZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl\nY2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl\neHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55\nAABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig\nSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA\nAAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ\nWiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj\nLmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF\nQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA\nAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g\nc1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug\nVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm\nZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD\nXJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA\nAAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU\nABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL\nAJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH\nAQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp\nAbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6\nAoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+\nA4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2\nBMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn\nBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS\nB+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6\nCc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh\nC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J\nDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1\nERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl\nFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd\nF0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe\nGsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q\nHpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC\nIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo\nJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud\nK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk\nMNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9\nNjc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq\nO+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs\nQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF\nSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63\nTwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC\nVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n\nXXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp\nZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I\nbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF\ndeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i\nfsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef\niASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/\nkaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC\nm6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp\nphqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1\nsOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun\nvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB\nx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE\n08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v\n4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG\n7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH\n+lf65/t3/Af8mP0p/br+S/7c/23////AABEIAJMAZAMBEgACEQEDEQH/xAAfAAAB\nBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B\nAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp\nKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK\nkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj\n5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ\n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",t)}},{"../../app/lib/make-image":2}],34:[function(t,n,e){"use strict";n.exports={singlePortrait:t("./single-portrait")}},{"./single-portrait":35}],35:[function(t,n,e){"use strict";var r=t("../../app/lib/make-image");n.exports=function(t){r("data:image/png;base64,\n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\nRWARCPwfuNDlwVfqKPUAAAAASUVORK5CYII=",t); +}},{"../../app/lib/make-image":2}]},{},[1]); //# sourceMappingURL=dist/comicbook.min.js.map \ No newline at end of file diff --git a/dist/comicbook.min.js.map b/dist/comicbook.min.js.map index 9bb4fcd..b014cc9 100644 --- a/dist/comicbook.min.js.map +++ b/dist/comicbook.min.js.map @@ -1 +1 @@ -{"version":3,"file":"dist/comicbook.min.js","sources":["dist/comicbook.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length",1,"module","Canvas","makeImages","testImages","canvas","drawImage","portrait1","document","body","appendChild","../test/data/image","./view/canvas",2,"src","cb","image","window","Image","onload",3,"_get","_inherits","_createClass","_classCallCheck","_Object$assign","EventEmitter","_EventEmitter","options","this","Object","getPrototypeOf","prototype","zoomMode","readDirection","doublePage","createElement","context","getContext","on","clearCanvas","bind","key","value","width","innerWidth","height","innerHeight","dimensions","offset","image2","emit","fitCanvasToImage","getDimensions","getOffset","babel-runtime/core-js/object/assign","babel-runtime/helpers/class-call-check","babel-runtime/helpers/create-class","babel-runtime/helpers/get","babel-runtime/helpers/inherits","events",4,"default","__esModule","core-js/library/fn/object/assign",5,"core-js/library/fn/object/create",6,"core-js/library/fn/object/define-property",7,"core-js/library/fn/object/get-own-property-descriptor",8,"instance","Constructor","TypeError",9,"_Object$defineProperty","defineProperties","target","props","descriptor","enumerable","configurable","writable","protoProps","staticProps","babel-runtime/core-js/object/define-property",10,"_Object$getOwnPropertyDescriptor","_x","_x2","_x3","_again","object","property","receiver","desc","parent","getter","undefined","Function","get","babel-runtime/core-js/object/get-own-property-descriptor",11,"_Object$create","subClass","superClass","constructor","__proto__","babel-runtime/core-js/object/create",12,"core","assign","../../modules/$","../../modules/es6.object.assign",13,"$","P","D","create",14,"it","setDesc",15,"getDesc","../../modules/es6.object.statics-accept-primitives",16,"enumKeys","source","T","assertDefined","arguments","S","ES5Object","keys","j","./$","./$.enum-keys",17,"ctx","fn","that","apply","$def","type","name","own","out","exp","isGlobal","G","isProto","global","F","isFunction","B","W","C","param","g",18,"getKeys","getSymbols","each","push",19,"FW","path",20,"getWindowNames","getNames","windowNames","slice","toString","getOwnPropertyNames","toObject",21,"toInteger","isNaN","floor","ceil","bitmap","simpleSet","createDefiner","DESC","isObject","self","defineProperty","hasOwnProperty","Math","max","min","hide","html","documentElement","toLength","toIndex","index","has","getProto","getOwnPropertyDescriptor","setDescs","getOwnPropertySymbols","def","set","Symbol","forEach","__e","__g","./$.fw",22,"./$.assign","./$.def",23,"split","KEY","ID","forced","method","./$.get-names",24,"_events","_maxListeners","arg","isNumber","isUndefined","defaultMaxListeners","setMaxListeners","er","handler","len","args","listeners","error","Array","addListener","listener","m","newListener","warned","console","trace","once","removeListener","fired","list","position","splice","removeAllListeners","ret","listenerCount","emitter",25,"makeImage","images","../../app/lib/make-image"],"mappings":"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","sourceRoot":"./"} \ No newline at end of file +{"version":3,"file":"dist/comicbook.min.js","sources":["dist/comicbook.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length",1,"module","Canvas","testImages","fixtureImages","imagediff","portrait1","testImage","singlePortrait","fixtureImage","canvas","drawImage","console","log","equal","width","height","document","body","appendChild","../test/data","../test/fixture","./view/canvas",2,"src","cb","image","window","Image","onload",3,"_get","_inherits","_createClass","_classCallCheck","_Object$assign","EventEmitter","_EventEmitter","options","this","Object","getPrototypeOf","prototype","zoomMode","readDirection","doublePage","createElement","context","getContext","on","clearCanvas","bind","key","value","innerWidth","innerHeight","dimensions","offset","image2","emit","fitCanvasToImage","getDimensions","getOffset","babel-runtime/core-js/object/assign","babel-runtime/helpers/class-call-check","babel-runtime/helpers/create-class","babel-runtime/helpers/get","babel-runtime/helpers/inherits","events",4,"default","__esModule","core-js/library/fn/object/assign",5,"core-js/library/fn/object/create",6,"core-js/library/fn/object/define-property",7,"core-js/library/fn/object/get-own-property-descriptor",8,"instance","Constructor","TypeError",9,"_Object$defineProperty","defineProperties","target","props","descriptor","enumerable","configurable","writable","protoProps","staticProps","babel-runtime/core-js/object/define-property",10,"_Object$getOwnPropertyDescriptor","_x","_x2","_x3","_again","object","property","receiver","desc","parent","getter","undefined","Function","get","babel-runtime/core-js/object/get-own-property-descriptor",11,"_Object$create","subClass","superClass","constructor","__proto__","babel-runtime/core-js/object/create",12,"lookup","decode","elt","charCodeAt","PLUS","PLUS_URL_SAFE","SLASH","SLASH_URL_SAFE","NUMBER","UPPER","LOWER","b64ToByteArray","b64","push","v","arr","L","j","tmp","placeHolders","len","charAt","Arr","uint8ToBase64","uint8","encode","num","tripletToBase64","temp","extraBytes","output","Uint8Array","Array","toByteArray","fromByteArray","base64js",13,14,"kMaxLength","Buffer","TYPED_ARRAY_SUPPORT","arg","fromNumber","fromString","arguments","fromObject","that","allocate","checked","string","encoding","byteLength","write","isBuffer","fromBuffer","isArray","fromArray","ArrayBuffer","buffer","fromTypedArray","fromArrayLike","fromJsonObject","copy","array","type","data","_augment","_isBuffer","fromPool","poolSize","rootParent","RangeError","toString","SlowBuffer","subject","buf","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","start","end","Infinity","hexSlice","utf8Slice","asciiSlice","binarySlice","base64Slice","utf16leSlice","hexWrite","Number","remaining","strLen","parsed","parseInt","substr","isNaN","utf8Write","blitBuffer","asciiWrite","asciiToBytes","binaryWrite","base64Write","ucs2Write","utf16leToBytes","base64","slice","res","Math","min","decodeUtf8Char","String","fromCharCode","ret","out","toHex","bytes","checkOffset","ext","checkInt","max","objectWriteUInt16","littleEndian","objectWriteUInt32","checkIEEE754","writeFloat","noAssert","ieee754","writeDouble","base64clean","str","stringtrim","replace","INVALID_BASE64_RE","trim","units","codePoint","leadSurrogate","byteArray","c","hi","lo","dst","decodeURIComponent","err","INSPECT_MAX_BYTES","Foo","foo","subarray","b","compare","x","y","isEncoding","concat","list","pos","item","apply","equals","inspect","match","join","indexOf","val","byteOffset","arrayIndexOf","foundIndex","readUInt8","set","writeUInt8","isFinite","swap","toJSON","_arr","newBuf","sliceLen","readUIntLE","mul","readUIntBE","readUInt16LE","readUInt16BE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","read","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","writeUIntBE","floor","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","_set","fill","toArrayBuffer","BP","toLocaleString","base64-js","is-array",15,"core","assign","../../modules/$","../../modules/es6.object.assign",16,"$","P","D","create",17,"it","setDesc",18,"getDesc","../../modules/es6.object.statics-accept-primitives",19,"enumKeys","source","T","assertDefined","S","ES5Object","keys","./$","./$.enum-keys",20,"ctx","fn","$def","name","own","exp","isGlobal","G","isProto","global","F","isFunction","B","W","C","param","g",21,"getKeys","getSymbols","each",22,"FW","path",23,"getWindowNames","getNames","windowNames","getOwnPropertyNames","toObject",24,"toInteger","ceil","bitmap","simpleSet","createDefiner","DESC","isObject","self","defineProperty","hasOwnProperty","hide","html","documentElement","toLength","toIndex","index","has","getProto","getOwnPropertyDescriptor","setDescs","getOwnPropertySymbols","def","Symbol","forEach","__e","__g","./$.fw",25,"./$.assign","./$.def",26,"split","KEY","ID","forced","method","./$.get-names",27,"_events","_maxListeners","isNumber","isUndefined","defaultMaxListeners","setMaxListeners","er","handler","args","listeners","error","addListener","listener","m","newListener","warned","trace","once","removeListener","fired","position","splice","removeAllListeners","listenerCount","emitter",28,"isLE","mLen","nBytes","eLen","eMax","eBias","nBits","d","NaN","rt","abs","LN2",29,30,"definition","root","message","define","amd","getCanvas","getImageData","clearRect","createImageData","getCanvasRef","isImage","isType","TYPE_IMAGE","isCanvas","TYPE_CANVAS","isContext","TYPE_CONTEXT","isImageData","TYPE_IMAGE_DATA","UNDEFINED","isImageType","copyImageData","imageData","newImageData","newData","toImageData","toImageDataFromImage","toImageDataFromCanvas","toImageDataFromContext","toCanvas","putImageData","equalWidth","equalHeight","equalDimensions","tolerance","aData","bData","diff","diffEqual","diffUnequal","cData","offsets","align","rowOffset","columnOffset","row","column","checkType","element","content","innerHTML","imageDataToPNG","outputFile","callback","base64Data","decodedImage","toDataURL","writeFile","jasmine","previous","toBeImageData","actual","toImageDiffEqual","expected","div","style","overflow","float","createCanvas","noConflict","fs",31,32,"./portrait1",33,"makeImage","../../app/lib/make-image",34,"./single-portrait",35],"mappings":"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","sourceRoot":"./"} \ No newline at end of file diff --git a/test/data/image.js b/test/data/image.js deleted file mode 100644 index 0e52af1..0000000 --- a/test/data/image.js +++ /dev/null @@ -1,455 +0,0 @@ -let makeImage = require('../../app/lib/make-image') - -let portrait1 = -`data:image/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB -AAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB -AAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA -ASygAwAEAAAAAQAAAbkAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA -OEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA -DEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF -QyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl -c2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY -WVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1 -ZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl -Y2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl -eHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55 -AABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig -SUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA -AAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ -WiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj -LmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF -QyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA -AAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g -c1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug -Vmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm -ZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD -XJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA -AAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU -ABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL -AJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH -AQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp -AbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6 -AoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+ -A4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2 -BMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn -BjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS -B+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6 -Cc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh -C/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J -DmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1 -ERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl -FAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd -F0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe -GsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q -HpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC -Iq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo -JxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud -K9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk -MNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9 -Njc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq -O+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs -Qe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF -SEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63 -TwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC -Vg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n -XXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp -ZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I -bWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF -deF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i -fsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef -iASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/ -kaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC -m6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp -phqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1 -sOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun -vCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB -x7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE -08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v -4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG -7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH -+lf65/t3/Af8mP0p/br+S/7c/23////AABEIAbkBLAMBEgACEQEDEQH/xAAfAAAB -BQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B -AgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp -KjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK -kpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj -5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ -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 -1/bC+L2seJ9C8NeHMWlnBcafb6tex2V150ckkoJiG7CnCgMdpA5KnmgD5u1zULvV -dWutRv7g3F3czPPcTEAeZK7FnbgAcsSelUaACigAooAKKACigAooAKKACigAooAK -KACigAooAKKAFAyQM496SgD1PxlLZN8APBKW2oWtzP8A2nqb3EMbfPas23ajg9yP -m9MGvLixIAJ4HSgBtFABRQAUUAf/1vjeigAooAKKACigAooAKKACigAooAKKACig -AooAKKACigAooAKKACigAooAf5jZBG1SOhVQD+lMoA0vC76VH4hsH1yOeTTVuEN0 -kJw7Rg/MARyCemRyM5HNZtAFrVZoLjUZ5raA28DyMYovNMnlpk7V3NyQFwMn0qrQ -AUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFKozn6E/pQAlbHjGxttN -8Q3VnaIUhjKhQWJIyinqfcmgDHooAKKACigD/9f43ooAKKACigAooAKKACigAooA -KKACigAooAKKACigAooAKKACigAooAKKACigAooAKKAHR7d67zhc802gDotc0zSn -0/TLnw9NdXmNMSbVsxsRa3HmOGXheE27CCeMk81X8H+Kde8Ja1HrHh/U7jT7yNWU -SQsMlSMFSCCrD2IIzz1oAx2Ur1wfcHIrqfEHidvGGprc+IIbGO+mZFm1G3txAWOQ -DJJHGMSEAHoATzQBylXtd09dL1SayS9tL5Yzhbi1k3xSDGdyt3H6g5B6UAUaKACi -gAooAKKACigAooAKKACigAooAKKAJry5nu52nuZXllfG52OSeAP5AVDQAUUAFFAB -RQB//9D43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK -ACigAooAKKACigAooAKKAFJJJJ5J60lABRQAUUAFXtF0rUNYvPsemWkt1P5byeXG -MsVUZYgd8CgCjVi/s7mwupLW7hkgmjOHjkQo6n3VgCPxFAFeigAooAKKACigApyK -WYKOtADa1fEmg6joFxbW+pwiGW4tIbtULZYJKu5Nw/hOOx6UAZVFABRQAUUAFFAH -/9H43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig -AooAKKACigAooAKKACigAooAKKAFU4PQH2IpKAOj8R+NfEniLTLbT9c1WfUo7Vi0 -T3SpJKpIx/rSvmEY7FiO+M81zlABRQAUUAFFABSqdpDDHHPNAHR/DZdKXxtpEuuo -H0qK7jlvVMe8NCh3upHTnaFOeze9Q+KdSup30+0ka0X7Bp8dkptU2gplnw5H32zI -ct0PHpQA/wCIvia58YeM9V8R3ShH1C7kuBGFAEak4RAB2VFRfwrnqACigAooAKKA -CigD/9L43ooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKK -ACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACigAooAKKACig -AooAKKAP/9k=` - -module.exports = function makeImages (cb) { - let images = {} - makeImage(portrait1, (image) => { - images.portrait1 = image - cb(images) - }) -} - diff --git a/test/data/index.js b/test/data/index.js new file mode 100644 index 0000000..9828267 --- /dev/null +++ b/test/data/index.js @@ -0,0 +1,3 @@ +module.exports = { + portrait1: require('./portrait1') +} diff --git a/test/data/portrait1.js b/test/data/portrait1.js new file mode 100644 index 0000000..64fa899 --- /dev/null +++ b/test/data/portrait1.js @@ -0,0 +1,170 @@ +let makeImage = require('../../app/lib/make-image') + +module.exports = (cb) => { + makeImage(`data:image/jpg;base64, +/9j/4AAQSkZJRgABAQEASABIAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAAB +AAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAAB +AAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAA +AGSgAwAEAAAAAQAAAJMAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAA +OEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/iDFhJQ0NfUFJPRklMRQABAQAA +DEhMaW5vAhAAAG1udHJSR0IgWFlaIAfOAAIACQAGADEAAGFjc3BNU0ZUAAAAAElF +QyBzUkdCAAAAAAAAAAAAAAAAAAD21gABAAAAANMtSFAgIAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEWNwcnQAAAFQAAAAM2Rl +c2MAAAGEAAAAbHd0cHQAAAHwAAAAFGJrcHQAAAIEAAAAFHJYWVoAAAIYAAAAFGdY +WVoAAAIsAAAAFGJYWVoAAAJAAAAAFGRtbmQAAAJUAAAAcGRtZGQAAALEAAAAiHZ1 +ZWQAAANMAAAAhnZpZXcAAAPUAAAAJGx1bWkAAAP4AAAAFG1lYXMAAAQMAAAAJHRl +Y2gAAAQwAAAADHJUUkMAAAQ8AAAIDGdUUkMAAAQ8AAAIDGJUUkMAAAQ8AAAIDHRl +eHQAAAAAQ29weXJpZ2h0IChjKSAxOTk4IEhld2xldHQtUGFja2FyZCBDb21wYW55 +AABkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAEnNSR0Ig +SUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAA +AAAAAAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZ +WiAAAAAAAAAkoAAAD4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVj +LmNoAAAAAAAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALklF +QyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0gc1JHQgAAAAAA +AAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g +c1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2Ug +Vmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVm +ZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAdmlldwAAAAAAE6T+ABRfLgAQzxQAA+3MAAQTCwAD +XJ4AAAABWFlaIAAAAAAATAlWAFAAAABXH+dtZWFzAAAAAAAAAAEAAAAAAAAAAAAA +AAAAAAAAAAACjwAAAAJzaWcgAAAAAENSVCBjdXJ2AAAAAAAABAAAAAAFAAoADwAU +ABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL +AJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEH +AQ0BEwEZAR8BJQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGp +AbEBuQHBAckB0QHZAeEB6QHyAfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6 +AoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwADCwMWAyEDLQM4A0MDTwNaA2YDcgN+ +A4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRjBHEEfgSMBJoEqAS2 +BMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYGFgYn +BjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfS +B+UH+AgLCB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6 +Cc8J5Qn7ChEKJwo9ClQKagqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvh +C/kMEgwqDEMMXAx1DI4MpwzADNkM8w0NDSYNQA1aDXQNjg2pDcMN3g34DhMOLg5J +DmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQJhBDEGEQfhCbELkQ1xD1 +ERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxODE6QTxRPl +FAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcd +F0EXZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqe +GsUa7BsUGzsbYxuKG7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5q +HpQevh7pHxMfPh9pH5Qfvx/qIBUgQSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKC +Iq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4JWgllyXHJfcmJyZXJocmtybo +JxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsqzysCKzYraSud +K9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk +MNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9 +Njc2cjauNuk3JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuq +O+g8JzxlPKQ84z0iPWE9oT3gPiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGs +Qe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJFVUWaRd5GIkZnRqtG8Ec1R3tHwEgF +SEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0CTUpNk03cTiVObk63 +TwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShVdVXC +Vg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0n +XXhdyV4aXmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTp +ZT1lkmXnZj1mkmboZz1nk2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20I +bWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWF +deF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7wnwhfIF84X1BfaF+AX5i +fsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZyhteHO4ef +iASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/ +kaiSEZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtC +m6+cHJyJnPedZJ3SnkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWp +phqmi6b9p26n4KhSqMSpN6mpqhyqj6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1 +sOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldot+C4WbjRuUq5wro7urW7Lrun +vCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7FS8XIxkbGw8dB +x7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE +08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v +4DbgveFE4cziU+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG +7RHtnO4o7rTvQO/M8Fjw5fFy8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH ++lf65/t3/Af8mP0p/br+S/7c/23////AABEIAJMAZAMBEgACEQEDEQH/xAAfAAAB +BQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B +AgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp +KjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK +kpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj +5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ +Cgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGh +scEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZ +WmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1 +tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDAAUD +BAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0d +Hx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4e +Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/3QAEAA3/2gAMAwEA +AhEDEQA/APjmigAp0aNIwVcZP+f8igBoGTgV9T/Cr9nax0XRn134vyNpH28rZ6TY +rcxiZrlz8jPnMfUAKjFlJb5x0AAPKPhz8CfiN45tYb7SdBaOxmj82O6vJ0t43TOA +y7ssynsQuDjrXTfGTxV8WfCHj640vxTrl/A0tpLbQSF4fN/s+V2VD+42qWC7tpIG +GL4GMEAFnWf2YvEcdvNbeH/EvhjxJrlqu660nTrzFzGBgMQHODtJAIO3r+FeZ6D8 +RfEHhmK3t/Cl5Jo0UFytwZLYBZrl1+60zHPmYycIfkGfunrQBD8Qfh14v8BSWkXi +rRbjTJLxXaBJniLOF+8QEdjgZ68V7H4I+Lvgvxfay6Z8Zp9f1BrjT5IDf3DRXUEE +xyVmSKKJZImXoCpPXnOc0AfN9dF4+8OQeG9ZFtZa5peuWUsfm219YS7o5o8lQSp5 +jfj5kPKnuRQBztFABRQAUUAFFABRQAUUAf/Q+OaKAPVv2U9TTTvjVoCvplpqH2yc +2apcgFEaTG2T7p+4U3D3xyOa5f4NXLWfxU8K3KjJi1uyc8E8eeqngcn73SgD6J+O +mu3+rfFa88OaRomufEjw4tlLdX9hfK23z4yVlks5RGGhMY2gmMsCX27cnNfZVhNY +6mwv7dCzwvLArvEUZSGw4wQDjK/jigD8i9Zv5tQvWuJZbiRTxH507SsEydo3NycD +j8D05r2D9s/w7ZaD8eNaSwtILS3u0gvfLhTaN0iN5jY6ZLISccZPqTQB4tBDLPII +4kZ2PZRk+35ngep4r71/ZF+A3h7QfDGk+Pddjt9W1rULeO8sQfnhsY3UMu0dGl55 +ft0XA6gHyR42+DXxG8G6Hb63r3hi8tLCaNX+0KyyrHkZxJsyYiP9rA96/UTVoIrn +TLq2mt1uYpYXR4WGRICpG0jvnpQB+RNhYyX8d9IZlEttbtPtcgM4UgMMkjkA57k4 +wK7rwd8MNU8T+OfEHhy7CeG7vRbC4vbqC8idvIEZUJFyQST5iKGyeBn5s0AebMME +g9qlvraWzu5bWZdssTsjr6MpII/MGgCGigAooAKKACigAooA/9H45ooAltZ5ba4S +eB2SRGDKysQQQcggjkHIByOlRUAfoZ+xp8XL74geGdS0rXoR/aejJFLJeqMfao5N +43uB/wAtAUO4gYbIOASRXzJ+xh4+Pgz4w2FrdTBNN1rGnXWc4VmOYW4B6SfL2/1n +tQB7J/wUBtdIvvDfhfxbpUVhcytdS2kl9Cod2VYnkSMsP4Qwc7T0Oa9A8efA2Pxl +8arbxA895o+g2ax3d60F0Q+p3gb5cLjCbUAQy/eYNtGMZoA89/ZQ/aG0DSfAE/hr +4gavZaXFoNtEumzFWL3EAUgpgZLupXjaOQyjrXreh/CX4f6v4b8VaVqvhiyWxufE +N1cqUGxonUKgkjYcxkBT93Hf1NAGp8Evixb/ABTk1a80zTY7LSLS4NtbPNchrqdl ++8zQgfulwVxubJz0GMnU+DHg7TfBXhj+zPDus/2n4dlYXGnlljLR7h8/7xABIGPz +bmy2SeSMYAPmvx2LMyfHzx+ong1lL2Hw/ZytOVSJHEKORjqxKKe5GBjHNdl8U9P+ +Hvhv4f8Ai+98XadcXcWuavd6pBGRmcMxW1jaIH7pZWcqTjjnjsAfCF3M9xcyzyMz +NI7OSxyckk8/nVzV9NktiLiJZ5LKZpPs1xJAYhcKjFS6g5HbkAnacg9KAM6igAoo +AKKACigAooA//9L45ooAKKANPwtFqs3iCwh0ISnVJLiNbIRNhzPuHl7f9rftI/Xj +Nekfs/eLYvB1n4q1uKxmutSstLjuLLy0UlJFn27yT0UeYCSPSgD7Uk8daFcfCx9V +8d6lPYTeGtSig1eKBysk95AVZE2ockSNscIOGBweM1+d+seLvEmr20llquuajfQu +8TSC5l8ws0YYIxJ5yN7d+5HNAH1Zon7RniYTa03gX4ca7raarqjahEbxSYrdGSNZ +IlaIMpBZHbcWGNx645+YfD3xC8aeHdITSdH8Tanaaek3nJbxT/ulc8khWBAPfjvz +QB9rfsz/ABl8Gagup+GX8PN4Nv4nudRuLTe5so0VUMrqXA8nruKYAzk/xc/Dh1VY +tMvJ5Lm7m1jUJN0twt02PKbJlSQD77SNgtuyMAdzQB3/AO0x8UIPH3i+f+x7u/n0 +dCpSS6JBuJBvAlWM/wCqTa+1E64yzfM1eQsSzFmJJJySepoA+mv2T/EvgjXfCWvf +DT4mJBJo4STV7K4upSBaMijz/Lb70bYxICvcv75+aLeZ4JlkQsCD/CxU/mORxn86 +APTPjr8ItU+HOowXkEo1Lw5qbPLpOpRuHE8P3k3FQAJNhBwPvAFhjkV7r8FPjL4O +8f8AgbQfgn478O3cnn28WmQ3ySI6F0U+XIeQ8bDauGAPPoKAPjquq+Kvg+98D+Od +U8O3iSZtLiRI5GjKiaMOQsq8cqcdRxuDDsKAOVooAKKACigD/9P45ooAKdCoaVFP +QsAfzoA9+8H3S+Ev2V9W1G90uOaLxNrF5ohfyUWTZ9m3xSB+pCTRt8pI+82O2eU+ +J2txR/CP4feFbW9uWENjcaneQniMXFzOxVu2T5YcDrgH3oA8sZgxJPU989+5pASD +x6YoA9B+HegWF/Hap4htba10a4nmjn1dpHjktXFs8oTGRnCoGA2lSWGT2qjP4guP +FGiW+jto1lLrYnZzqikR3E0CwbfJc8IyqEBBJBGAMHqQDkry3e3aMMHAkiSRSy4y +GUHj2zkfhUJySBnPpQAlFABRQAqkBgSoYdweh9qSgD7U+D0Ph39oj4IP4T8TLB/w +l3hy3MFjqTHdcBGX93KcnLLkBJFJIYqT3FfIPhPxBqvhjXrPW9GvJbS9s5VlhljY +gqwIPYjKnGCp4IyDQBBr+lX2iavc6XqVrJaXlrK0M8LjBjdThl/P9CD3r2z41X+j +fGXSJviR4Z037Drum20Y8UWGVGVC4S9iPWSMEGNv41+TK4FAHglSXEMtvM0M8bRy +KcMrDBFAEdFAH//U+OaKAJLZQ9zEhzhnUHHuRTYX8uVJMZ2sG/I5oA7P4naTaaZZ +eFZLXzt174es7ubzJS/7x2mB25+6vyDCjgc46mqPjXxNB4h0zw5Atk9vPpWkR6dK +/mBlm8uRyjgdvlcgigDmKMUAeh/DXUrG78G+LfBl5YT3VzqdrHeaW0SmRo7y1LOF +CYORJGXUn0T3rj/DEWsTa5aw6ALw6k8m22W03ea0hBCqu3kk5I+hPbNAFa0kgt9S +jlltxdQJKGMTkqJUyDtJ6jcOM9s5r3jxd+z1eW/iS08H+GZnvvE/9lnVrm1ubyIC +K3HlpsIRMiQO+ACSGVSRg0AeNeKtHNpN/aVha3I0W7kc2Nw8bbHXqUDHgsmdrDOR +tyRzX0loPh+81j4H678F9e0Gax8V+F0k1TRTKNgvw0zklS+0HPzpnjcjDoQQAD5Q +qW8ge2upYJEdGjdlKupVhgkYIPIPHIoAipVBYgAZJOBQAlTXltcWd1La3ULwzROU +kRxhlYdQaAOk+GdxI3iOPSPMjih1hf7LmlYE+VHcPHG0gAPJUYOO+K5uyd47pGjd +o3zhXUkFW7MMehwfwoA6T4svbN8RNdWziEVtHfzRQgDB8uNzEpPuRHk/Wug+P8ml +aj4i03xNpVh9gGv6Ta6ncwKPkW5cOk+04GQXjBz6sfWgDzWigD//1fjmigAooAUg +jGe9JQAU5QWcKoyWOAKAN74fab4m1TxXYW3hG3vp9ZMytaLZnEokB4YN/Dju5wFH +X0P1l+x54P8AFmkfDi51yPTrWyttamhltr2O/jt7ieFAU8os0blELjcNvJ3Hp3AK +/wAWPg58Y7DxLpfjzwlcT3euro9qmtXWn3ixXc94uRM4QgK6lRGMd9g4OBX0HoGl +NoN8kdr4t1jTo5MJ/ZWtyC8i3kkkxSyHzGJJxgSEDjCigD5d/aS0nXfEfwD8D/Ef +xLDex+JrUnSdXSW2MUhO9wrlCBhw6cYwD5hI6ivqf9oDSLDV/g34jj1Szt75bOya +/SKYN5bywDzUDBSCVLKAQCMgkZoA/Nz4rrajxO0iXIm1CWCGXU9hBRbxkBnVSOoB +2/iW54rE8VX1jqWu3V9pukQ6RbTsJI7OGVpEhBUfKpbnGcn2zjoBQBmL1HIHPU0L +jPPSgC1qURSSOU3sV008aysUZmKs3VWz/EMc9eor0DTvB+h+OrF5PBVzdxa3b2Yk +m0a7gY+aUwJGt7jJUr8y4WTDZ4B5AoA82ibZKjkZ2sDT7qCW2uHgnjaORGKsrAgg +g4IIPIOcjB6EYoA6jxv4uGv+H/C2kRWohi0PSvsW5gN0rmVpGbIPTlQB161hnSLo +aAuslW+zNdG2BxxuEYkPOfQjtQBnUUAf/9b45ooAfbx+bPHEZEj3sF3ucKuTjJPY +DvTKAHSLsdl3K2CRlTkH3HtTaAFVirBlOCDkH0NJQB6r8PfiJ4svbOHwfP4rubaz +TT5bPSYp9htLeZmRo9ylcc7WQOwYqX4xkmvKwSDkUAfUnwU/af8AEHhXULbwv8Qo +21jSLaTyXvGG+8slUkFyefOCkYP8WASC/f5r0LU10y9NzJpun6hlCnl3sRkRc4+Y +KGHIxxnjk8UAfo9+1t4ssNE/Z/1x/tCl9btxp1l82PNMwwSPYJuY+wNfnx4k8aaz +rfhbRPD11qN7LY6UJmhgklJjjaQ42oM8IqAKoPTJA4NAHNTMHmdlGFLEqPQdhTKA +CigDovBfiq58MLq32WIO2o6ZcaeW3lTGsuzLjjkjYMDjr14rnaALms6leavqc+o6 +hO091cSGSWRsbnY9ScADPHXFU6AOzldv+FQwJn5f7dk79/saA1yMkEscEUzpiOXd +sbjnBwf1oAiooA//1/jmigAooAKKACigAooAKKAAY7jIooA29Z1HTtVt45WtPsd9 +HEfNkiJKXL7hg7MARcf3cisSgA78U+FxHKkjRpIFYEo+drY7HHODQAyrWrT2txfy +zWdr9kgY5SHzWk2cDjc3J5z1oAq1f0OG1kvle+YC1hxLMu/azorDcqHH3yCQOnNA +FFmYgKScL0BPSrOrzWk+p3M1ja/ZbZ5XaGHdu8tCx2rnvgYGe5yaAKtFAH//0Pjm +igAooAKKACigAooAKKACigAooAKKACigAFFABRQAUUAf/9k=` + , cb) +} diff --git a/test/fixture/image.js b/test/fixture/image.js deleted file mode 100644 index 206eaf1..0000000 --- a/test/fixture/image.js +++ /dev/null @@ -1,1826 +0,0 @@ -let makeImage = require('../../app/lib/make-image') - -let singlePortrait = -`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAJsCAYAAAALLQSJAAAgAElEQVR4XuydeZRV -1Z22d770FDMoIjIJiCLIoGIUifOsiIhjFCOKI4hExAFRERVFREAUARXnARQnFEWN -oAEnFFFEBEFGAZlEcEon6e6k+1vPr/u9fayGqpIauLfqPWvVqqp7z9ln7+dc+OOp -d737Jz/96U//K/kwARMwgQIg8Pe///0nBTBNT9EETMAETMAETMAETMAETMAETMAE -TMAETOB/CPzEAtqfBRMwgUIhYAFdKE/K8zQBEzABEzABEzABEzABEzABEzABEzCB -/yZgAe1PggmYQMEQsIAumEfliZqACZiACZiACZiACZiACZiACZiACZiABbQ/AyZg -AoVFwAK6sJ6XZ2sCJmACJmACJmACJmACJmACJmACJmACTkD7M2ACJlAwBCygC+ZR -eaImYAImYAImYAImYAImYAImYAImYAImEAQsoP1BMAETKBgCFtAF86g8URMwARMw -ARMwARMwARMwARMwARMwAROwgPZnwARMoLAIWEAX1vPybE3ABEzABEzABEzABEzA -BEzABEzABEzACWh/BkzABAqGgAV0wTwqT9QETMAETMAETMAETMAETMAETMAETMAE -goAFdDl9EH7yk59sdKT/+q//itf5zjk6j9//8z//M/2///f/4iv7+z/8wz+kv/3t -b/H105/+NP3jP/5j+utf/5p+9rOfxTX/9m//Fq/9x3/8R/qnf/qnOI/rOZexOIev -Tc2pnJbsYUyg0glYQFc6ct/QBEzABEzABEzABEzABEzABEzABEzABMpEwAK6TPj+ -9+KNyV7JZ52l3yWd+Y5ElixGIP/973+P3/kZ4fyXv/wlXvv5z3+e/vVf/zWG4nXG -QjxzX87nYDwOfud9ie1yWqKHMYEtTsACeos/Ak/ABEzABEzABEzABEzABEzABEzA -BEzABH4UAQvoH4Xr/55cknhGAmdTz8jkbBoaWfzP//zPcc6///u/x3ukm5HLnMvP -fP+Xf/mXkNEknnntT3/6U0hqrsuOpyQ1M+V9yekyLtOXm0BeELCAzovH4EmYgAmY -gAmYgAmYgAmYgAmYgAmYgAmYQKkJWECXGtXGT8ymjIsmnrkCeczBeVlhzLl8IZ8R -y/pZqWh+RzYjpankoHYjW8eBkNZrkswS3VkpvbE5lXHJvtwEthgBC+gtht43NgET -MAETMAETMAETMAETMAETMAETMIHNImABvVnY/veibLo5O1RWBqsSg/clh7PJZGQy -tRrIaNLNCGclpxHYiGi+8/o333wTVRxcs27dunhNnc+Mr2sRz1zjHugyPmBfnlcE -LKDz6nF4MiZgAiZgAiZgAiZgAiZgAiZgAiZgAiZQIgEL6BIRFX+ChDJnZaswJH4R -yYhgVW8oCa009LbbbhsJ6D//+c+Rdpakzkrr7Ax+9atfxYaEnFu3bt20fv36uG/R -8S2gy/hgfXleErCAzsvH4kmZgAmYgAmYgAmYgAmYgAmYgAmYgAmYwCYJWECX04dD -VReIZ76UYKYmg98RznzxOilnpZ1XrVoVGwwecMABqUOHDqlhw4bp66+/jnqNbbbZ -Jr4rAY103mqrrdKMGTPSAw88EOeRhGZc7s+Ghko9qxrEFRzl9IA9TF4QsIDOi8fg -SZiACZiACZiACZiACZiACZiACZiACZhAqQlYQJca1aZPzEreogKaxDICGUmMQGbz -QNLOJJyRxEcddVTq1KlT6tixYwhnJDLncyCTuU4SWhsVUrPxzjvvpK5du6Zly5bF -+bzHeaSjmY+qONRBXQ7L9BAmsMUJWEBv8UfgCZiACZiACZiACZiACZiACZiACZiA -CZjAjyJgAV0CLnUwI4sRyFnBzO+kl+lk5uA9upyVckY0a6NAxlH9BtKZ6g1Sz126 -dIk0NEJagpnfEckS0YytnmfOIUHNsWbNmnTjjTeme++9N2T1zjvvnP72t7/FfOiK -1gaHmjPXaPNDzZc5cSC+SVNLWCO+mQPffZhAvhCwgM6XJ+F5mIAJmIAJmIAJmIAJ -mIAJmIAJmIAJmEDpCFhAl8BJSWWJaGSuai5IGdPfjIQm6fyLX/wiEs5r165NNWrU -CKnbtm3bdNppp6XWrVtH8rlmzZpp++23j/focEbyMiZjSfYyJiL7u+++i3ElsTkH -gcw1ksXffvttWr58eZoyZUq64oor4n0E9dZbbx0r47zsUXRTQtYikY60Zr3ff/99 -yHLVeJTuo+SzTKDiCVhAVzxj38EETMAETMAETMAETMAETMAETMAETMAEypOABXQJ -NBHGX375ZchhZDC9y/Qw8zuSF8GL9F28ePEPRurbt2/63e9+l+rUqZN++ctfhhRG -9GZTzUV/RywjmSWaGZdzENDcC7mN5OZAYCsJze/I7fHjx4ccHzt2bJo2bVquE7q4 -Go7sJoqsi3FITnNfdUuX5wfOY5lAWQhYQJeFnq81ARMwARMwARMwARMwARMwARMw -ARMwgconYAFdAnPkLWlkvlNvIQFMOhlBq2R07969I+1MuhlpXb9+/RDEyGQEMkIX -Ec13UsZIXgQzPzMuQpkktSoxkM3acHD27Nnp3HPPzfVII7G5hvsjkEksZ69dunRp -dEMjx6njYGzO536q41ClB+cgq19//fVY5xtvvJE7VyK88j+WvqMJbJyABbQ/GSZg -AiZgAiZgAiZgAiZgAiZgAiZgAiZQWAQsoEt4XkhepLDSyUhcpPMJJ5yQ9t5779g4 -EOF85JFHRq+zKjqUHkYkI54RwIyjxDHjSWwjejmQwrxOhcfHH3+cbrvttjRs2LC0 -++67J6Qy8pp7I42R0IjlHXfcMWS2xiWhzTyKHozN3LNz4DVJdL5z7ZAhQ9LQoUNz -3dac48ME8oWABXS+PAnPwwRMwARMwARMwARMwARMwARMwARMwARKR8ACuhSckLsI -3z333DN179497bHHHnEV8pfksXqVV65cmZYsWZJ22223eB1BjGSWlKavOSuHEcpI -YQ7S0p988knIZ+o7Pvjgg9SuXbuQwc8991zq169fnKPNDBHadEvfc889kZRGLCOL -dQ4/q+5DSWvmoYS1ls17JKAXLlwY17/77rvp/vvvj+Q215Pe9mEC+ULAAjpfnoTn -YQImYAImYAImYAImYAImYAImYAImYAKlI2ABXQInhC6JY/qf2ewPoXzrrbemAw88 -MDYW5CCtjKx96qmn0g033JBmzpwZEppUsVLLSGIOhC+p6Pnz56d169al9u3bx+vT -p09PPXr0SB9++GHcj9Q08pdENGM0aNAgrV+/Pie8N2zYkObMmZNLQCOmOT97H17T -xobco+gGhFo6YnzUqFEhvjmQzwh0Xs9eX7qPlM8ygYojYAFdcWw9sgmYgAmYgAmY -gAmYgAmYgAmYgAmYgAlUBAEL6BKoImLpUSYdPHz48LTXXnulffbZJyQtchhZ/PDD -D6dzzjkn+p/ZsPCjjz6K2gwdpI7/8pe/hMzlZ6598sknQxh36tQpRDLjcuywww4J -uazOab4jo9XzTOp67ty56a677krnn39+jMXcOA9ZTuqa+2xKHCsNrbmpUmTq1Kmp -Q4cOaZdddom6D+amNHVFfPA8pglsDgEL6M2h5mtMwARMwARMwARMwARMwARMwARM -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 -awG9pZ+A728CJmACJmACJmACJmACJmACJmACJmACP45AwQvoostVR7EqN6idQJaS -Jka8UqPRqVOneA25q4oMRC0ilQoJ9SDz3qRJk9LRRx8dt0HKIqcR1lyPiC0p4cuY -kr+IZSpA6IJGOtM/TRqb10gQI7e/+eabuJcEMfPKJrqL1oxovZt67HofEaxajDp1 -6uQ2UiQBzZp4jWoSBLJSzDNnzgwJTS0I6W0O9WXrO1J/xowZsZ5PP/00bbfddjEe -64aNKzh+3D9In108AQtof0JMwARMwARMwARMwARMwARMwARMwARMoLAIVBkBrSQt -whVxjPxUjQSpYwT0K6+8ktq1axe1E6qyQKRKJiNeEcHjx48PAUzCefTo0enDDz9M -O+64Y5o3b148XdV68LMqOzb12CVhlVamuoMaDoTtypUr09ixY+M+jKMuZm36pw0C -JdO5h2R0SeJZ81F/dK1atdK6detCLouV3mNOyHFkPe8j2j/55JNIRF922WXp1FNP -DUashbnDE6mOgFfC++OPP04DBgxIEyZMiEoPzkdOexPCwvoPId9nawGd70/I8zMB -EzABEzABEzABEzABEzABEzABEzCBHxIoeAGtRHBWQCNK1eHcpEmTdMQRR0TSuGnT -plFDgXgloavN9ZC/iFLE8ldffRXS9emnnw4hrPEZDwlNhzTCWHK4pAQ099JcSBdz -H9LEpKCRtIhu7snB78yLL35mXkppMzfJZ75LoJdUYSFRzPmsHWnMz+q3VkWHJL1k -PClwkt4cffv2TVdeeWXMPTueRD/JcpiQ3h40aFAaPHhwXEfCmw0PiztKmr//wZpA -loAFtD8PJmACJmACJmACJmACJmACJmACJmACJlBYBPJeQCuliwimooKKDNVnqMMZ -eUqKN/s74rNPnz6pe/fukehFdJJ2RgYjeCV2GQ8JjFAmAcxBlcS9996bRo0alc44 -44zUoUOHNGfOnNS/f//YcI9OaOZC1QSidsOGDbk5aVzGYT7cLytZJW0lvEkeb8mj -qNjOJsh5j27s9evXx6aNSPysfFfvM1w1DjzfeeeddNFFF0XCm2oPKjzgwnnq2dZz -3ZJr970Lj4AFdOE9M8/YBEzABEzABEzABEzABEzABEzABEygehPIewGNwFWNA7I2 -K0AljJGeSvTyOEn6kh6m05jUMklexkFSI585+B3pfOutt0bdBElpajEQrojjRYsW -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 -5ZVXUocOHVKjRo0i5ayaD85TxzHVGxwS4819eUkAACAASURBVMhnxLQqQsrrYXgc -EzCB4glYQPsTYgImYAImYAImYAImYAImYAImYAImYAKFRWCLC2gkL1KZxHO2w5lq -DF6vVatWeu2111LTpk1zXc9ZxN99910kkpHHffr0idTzt99+m95///24lpQzYvqw -ww6LFDRJaSRz7969U8uWLRPXDxgwIN12220xLBsKIrC5hjlo8zwltfnOnJHPiOl8 -2EiwsD5ynq0JbD4BC+jNZ+crTcAETMAETMAETMAETMAETMAETMAETGBLENjiAhqB -qx5obRhIKvpnP/tZJI6RyRMmTEjHHXdcCGl1OnMOIpnqDA7Ec8+ePSPRzHv169dP -1GMgijmQxbzOGBzDhw9P55xzTiShv/jii3gP0c0mhYhrDiWrSTwjpBHPzJWDuSmN -vSUenO9pAtWRgAV0dXzqXrMJmIAJmIAJmIAJmIAJmIAJmIAJmEAhE9jiAprUsw4k -MAd1G6SP6V1evXp1GjRoULr00ktD+iKDJaq32mqrSD6vWLEijRs3Lt10002RpG7Y -sGHIYWo0qPNAHnNwLWPS7bx+/frUuXPnSD/T8czYL774YurYsWPIb12jzQaZD/Mj -EY2IZt7MQ+8X8ofAczeBQiFgAV0oT8rzNAETMAETMAETMAETMAETMAETMAETMIH/ -JrDFBTSTQOxqQ0F+Rv4ikqnMQC4jiS+77LIQvohgBDUCmFTzkCFD0sCBA+N3Es1U -bNx11125pDLX8B7X8Z2x2ZSQJDMimuOFF16Iig7uzZjLly9PY8aMSUuWLEnLli1L -c+bMifckpRHfnOcOaP8zMoHKJWABXbm8fTcTMAETMAETMAETMAETMAETMAETMAET -KCuBLS6gEcRFk8Ta4I+08ldffZWuv/761K9fvxDGCGbSzchgEs933HFHJJlPOeWU -dOihh6YNGzaEUF66dGlI4gYNGqTJkydHvQbVGl9//XUIbKo7VOOB/H7mmWfSySef -HDwZm/dITA8ePDgkNz3Ta9eujfszD1LSpKGV2i7rg6io61Vxog0bteljNnnOvbO/ -q9e6PBLePEv+mBB/7fifZ03anA0l+aMAr2lTR85TJzjfnS6vqE9F4Y5rAV24z84z -NwETMAETMAETMAETMAETMAETMAETqJ4EtriABrsS0JKUSEuqM0gqI31vvvnmdPHF -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 -R10K0n/NmjUxZL7Xm5T+KfnM8iJgAV1eJD2OCZiACZiACZiACZiACZiACZiACZiA -CVQOgbwX0BKstWrVCim83377pTFjxqTtt98+EtBK2K5duzYkaYcOHdIHH3yQ6tSp -k1asWJGjiGhFXktsqgYCAcpX586dQ2gvX748vfbaa6lu3bpp9erVMT5zQKKq8oPv -XK+N+irnUW38LtlkMvNBMCN3mR8yl7UxfzZjPOecc3KyXqMp6Qwb1k7FycMPPxws -YE4ymuslkPmZ9xhf3dglCWjOQ/wrMS12MOaedHUvW7YsHXPMMdHjjaTmWXO+6kG2 -JGPfO38IWEDnz7PwTEzABEzABEzABEzABEzABEzABEzABEygNATyXkCrqkFCctq0 -aWmfffaJtal645ZbbkmPPfZY2nHHHaP3GamJMEVwKrlLWpeUM8ln1UAgWFetWpUu -vPDCNGDAgJCfS5cuTS1btoxksOooEKiS3chXfmZe6okuDeiKOoe1KLXMGpHjSGfW -jcjdc889Q0RTSbL33nvnNmuEJ4fS0boGIU2CvHv37iHdYcpa6cjmi3uxflhxjTYs -3NT6JJHVJ82YSkTzRwIk/+jRo0M+n3766ZFuV10K93MKuqI+OYU5rgV0YT43z9oE -TMAETMAETMAETMAETMAETMAETKD6Esh7AY24REIiMqmAmDJlSjrkkENyFQ6vv/56 -OvLIIyNhixhFwtavXz+e6JIlS/7Pk2Uc5KzS0GxQeOCBB4akReZyPPnkkyFDda5E -N+9zH4RsvghopbDVUc38qSohCU0q/IEHHoi1MHde40AcI56ValavNXUl9C9//fXX -IfLvueeedO+998Z11HQgo0kqI+a/++67kNCkrYs7ENTMMdsBjWBmDtxX8z733HNj -I0LS68h/njX3kSivvv9EvfIsAQtofx5MwARMwARMwARMwARMwARMwARMwARMoLAI -5L2A1saCSjdvs802af78+al27dqRZn7rrbdCGCOpSe6q35nHgFhGVktykq5FYFPf -sWHDhnTeeeelO++8M54YopOxEa2Mgdhm076JEyfG70ho7seh2o98edTMR7UVyHXE -LTK+adOmUalx0EEHxdwRv0ow8zObDSKrkcl0PnNwHWMpqYyEnjdvXnAhZc55CGok -MdeVlFBWT7bui3TWpojcj/kqYS6enFva8fPlGXgelUPAArpyOPsuJmACJmACJmAC -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 -brvtFtUdzFsCne9KQlfPf7JLQFX5AAAgAElEQVTVe9UW0NX7+Xv1JmACJmACJmAC -JmACJmACJmACJmAChUegygtoHgkCGKmqKg5St7yGLKYmAjk8YMCASOaSiOY8bfJX -XBpY9ROIUzqMd91116izIIHMWIzNfdgYkHoLBDjj8x7CFhnLz2UR0FwrkctamZP6 -rnmP8ZVQ5ncS0kp/z507N2o6Xn755TRt2rSowKAug+RxtmKkNB9rxiYBjXRmTIR2 -165d0+23356T+shq5krdB5sfkgzndwn9Bx54IHqr33vvvZDSVHHwXoMGDULk81zo -7ybFLYlfmrn5nKpDwAK66jxLr8QETMAETMAETMAETMAETMAETMAETKB6EKjyAlqp -X3U7I36Rq3whZxHNiOLnnnsutWvXLmSwhC6CGFlbVMZmN+r74osv0q233hqb75Ek -RjDznRqJE044IQ0ePDjqKCSySVgjUoumlsvSAS3xzHy1uR+vId15TZUcrF291Jwn -gf7OO++k2bNnpw0bNqTDDz88BHR2fsX9UxAbdW2fdNJJsYkiR4cOHaIPWt3VnMMc -rr/++thk8Oyzzw5RDWOYc92JJ56Y7r///tSlS5f0/vvvp8mTJ6cbbrghNjbkOWmN -iGl+9iaF1eM/Kq3SArp6PW+v1gRMwARMwARMwARMwARMwARMwARMoPAJVHkBLemJ -AFbSGGmp35s0aZIWLVqURo4cmS644IIQmuoqVg1F0c3/spvn/fGPfwxpi1Cl1xjZ -S00E6d0nnngiNtJTmlqiuGjFRVkS0NkNCRlfvxeV5vpdncvauFDVGIjpn//85yGo -+a65lqZjGT4kq5Haxx9/fPRLI/PZWHDPPfeM8XQfxiVtzjxuvPHG3L8g6k/ojmYT -w9atW6dHH300tWzZMp5Tr1694vmo3gQ5zuuu4ij8/4B+7AosoH8sMZ9vAiZgAiZg -AiZgAiZgAiZgAiZgAiZgAluWQJUX0FmRqnoK0raIVSSo0sr0DrMpH3UPHAhTUrZI -6KKdz3pkJHBnzZoVG+c1bNgwNhSk1oLuYjqhqZnQWEhtBC3iFxmc7YEui4CWHNcc -uR/ja0zJ7qIiWRsqMq+iUlrrU0K6uI8o1zKG7k/VCB3QnTp1iv5n0t+Sz0hqxhw3 -blyaOHFipMbZkJG5MR/qPxDNbOS4bNmyNGXKlNS2bdtENQc1KVR2fP755yH5uS8C -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 -o0/Ec7z44oupS5cu6cEHH0yDBg2KaA7iOhCNBx98cHr55ZfTE088kW677bbItuY7 -LYLI+aqmFp/sYnfKus4uWlfe+deVMeGr2j01L6lgppJ94MCBMX48hKBSXwKZ45T7 -zfxgowKeLOhnnnkmqt6R0Mx7jmMu6Zyq1udc2mMBnQs9n2sCJmACJmACJmACJmAC -JmACJmACJmACFU8g7wU0yBBuyn9GziGVyX4mV3fKlCkh47ILunHsLbfcku65556I -sKhMAU0FNAKZKBGqlRHGqnJFQNI+vp8wYULk/XL8I488ki655JJUv379kMxISPpK -7vPNN98cVbBcJxu9QdW3YhuIH5kxY0ZkRVNty7HKkeYYVUBbQJf/D5IxYpwZ8wYN -GkQUx9ixY2MBSTZVPzNGipnRWGnBQV6Zz7feemssQknlOw9juG72gUL596b872AB -Xf6MfQcTMAETMAETMAETMAETMAETMAETMAETKEsCeS+gFVchaYqcIyOZmIqOHTum -SZMmhYRD8CpqgkgKcnNHjhxZ6REcVLgiH2k3chl5jBTWgoRUtBK/MX78+KJca6q6 -//SnP/1bBEfPnj2jWpbsZ+QjYhMxrYXoeKXfvE6bNi099NBD8ar7Izgl87MsC01g -luWPp6yuBXseNDAP4M2YP/vsszF/mQvMXeaH8p95zzl8pyxvfgd//OMf0/3331+U -B12IUSoW0GU163wdEzABEzABEzABEzABEzABEzABEzABE6gYAgUhoJG1quRFuiFy -kXhHHHFEmjp1atpll11CPlMFjIDlO+QzVaOVnQGt7GeqnDt37pyaNWuW7r333qja -prKV13322SetXr26SBAjG1X9St+o4D766KNj33vvvRd9VO4zVbD0HSHN9+zv0aNH -+vrrr9MXX3wRx6rq2gK6Yn502bvAngcGzGHeU6nPOPEA5bXXXkuHH354UfU+Aprv -GE+919znlcrnfv36pXnz5sWDBWWjV3yvyu+OFtDlx9ZXNgETMAETMAETMAETMAET -MAETMAETMIHyIJD3AprqUElWxDN5yXvssUfasGFDyLjRo0dHBSl/WoQQqUvO7l13 -3RW5uXzmPOR1duE3gJd3DAXSkeiF7777LvKbWYjukEMOiSpuZLHEObnNyGJVwm7Z -siWkMp+Rj4cddlhUPC9dujSOk8BW7AbHKROYVz4rY7o8JpavWToCGiNFoZxyyikh -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 -7otFLqmOJm+cqvuS8sGrIhML6Ko4Km6TCZiACZiACZiACZiACZiACZiACZiACfw6 -gbwX0Mg0KoAl5Kjw7NixY2QlI2ap9Pzb3/4WC/ohoHfeeef0448/FkURVLaAllRE -BiIL6QcCGnHOd+wntxqJyEZ/GzVqlFq3bp0effTRomxgCWyOyWZZuwI6v3/+W6uA -Zk4gphXfwrxhscoBAwbEHOIcHlxQJc1DFn4DCxYsSG3atImKeeJptHBlZc//7R0d -C+jtJebjTcAETMAETMAETMAETMAETMAETMAETKByCeS9gFbMANJNC62x8OCUKVOi -OhhZh4zr1atXevXVV0PAIaAReFm5V1nDQDuQxKrkRhbyHnHIpsgN+qaFFumPNs6V -ZFbWsxZPdAV0ZY1q2d2XMc1WQGdzu5k7ZDszL9asWZPefffd1LJly5DLks8S1cx5 -fgOzZ8+O43lok7122bW4fK9kAV2+fH11EzABEzABEzABEzABEzABEzABEzABEyhr -AnkvoJFzxAog05BuP/30U2rfvn167rnnotpZCwl269YtvfzyyyGlEbZUGBNXUFUq -QFXBTAV0dgFEKp5pK9Xc9E/RCQhpFlHkWDZFefCZa/FZedBlPWl8vYojoIckyvTW -Q4bswpI8VGGBwfPOOy/ynqmC1sKWvOc3wLx69tlnQ0I3btw4bdiwIR7MVJX5v61E -LaC3lZSPMwETMAETMAETMAETMAETMAETMAETMIGqQSDvBTSCjWphqjoRcYi1k046 -KT3//PNFebfsO+2009JXX30VYpbjFXFR2cOAWFTUht7zyh99o52q5GYf0hwpTawI -UpHvJZ/VF47LCsrK7qPvX3oCeoigXO/i48r3bPqfAIMHD07HHHNMOuigg+J/BPDQ -AgHN9zywuPjii9OkSZPiO6qiLaBLPzY+0wRMwARMwARMwARMwARMwARMwARMwARM -oGQCeS+glYNLV/fZZ5+IIujcuXORgP7HP/6RXnjhhagOrVmzZlRIqzqURduoLK7M -TdJZMRwIwayAZqE5xKEqWWkrld3sY1OUCO8lnhXTYBFdmSNbdveWdNa80JU1vsS2 -EKnBopvkO2vr0aNHCGeyn5lXzJW5c+cm/jcA1c88yEBC59PmCuh8Gi231QRMwARM -wARMwARMwARMwARMwARMwARSynsBTQQHkpaqZoQyYhYB/dRTT6WddtopKoHvu+++ -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 -VFBAAQUUUEABBRRQQAEFFFBAAQUUUEABBQygfQYUUEABBRRQQAEFFFBAAQUUUEAB -BRRQQAEFahEwgK6F1UEVUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDKB9BhRQQAEF -FFBAAQUUUEABBRRQQAEFFFBAAQVqETCAroXVQRVQQAEFFFBAAQUUUEABBRRQQAEF -FFBAAQUMoH0GFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABBWoRMICuhdVBFVBAAQUU -UEABBRRQQAEFFFBAAQUUUEABBQygfQYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEF -ahEwgK6F1UEVUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDKB9BhRQQAEFFFBAAQUU -UEABBRRQQAEFFFBAAQVqETCAroXVQRVQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUM -oH0GFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABBWoRMICuhdVBFVBAAQUUUEABBRRQ -QAEFFFBAAQUUUEABBQygfQYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFahEwgK6F -1UEVUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDKB9BhRQQAEFFFBAAQUUUEABBRRQ -QAEFFFBAAQVqETCAroXVQRVQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUMoH0GFFBA -AQUUUEABBRRQQAEFFFBAAQUUUEABBWoRMICuhdVBFVBAAQUUUEABBRRQQAEFFFBA -AQUUUEABBQygfQYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFahEwgK6F1UEVUEAB -BRRQQAEFFFBAAQUUUEABBRRQQAEFDKB9BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBA -AQVqETCAroXVQRVQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUMoH0GFFBAAQUUUEAB -BRRQQAEFFFBAAQUUUEABBWoRMICuhdVBFVBAAQUUUEABBRRQQAEFFFBAAQUUUEAB -BQygfQYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFahEwgK6F1UEVUEABBRRQQAEF -FFBAAQUUUEABBRRQQAEFDKB9BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVqETCA -roXVQRVQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUMoH0GFFBAAQUUUEABBRRQQAEF -FFBAAQUUUEABBWoRMICuhdVBFVBAAQUUUEABBRRQQAEFFFBAAQUUUEABBQygfQYU -UEABBRRQQAEFFFBAAQUUUEABBRRQQAEFahEwgK6F1UEVUEABBRRQQAEFFFBAAQUU -UEABBRRQQAEFDKB9BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVqETCAroXVQRVQ -QAEFFFBAAQUUUEABBRRQQAEFFFBAAQUMoH0GFFBAAQUUUEABBRRQQAEFFFBAAQUU -UEABBWoRMICuhdVBFVBAAQUUUEABBRRQQAEFFFBAAQUUUEABBQygfQYUUEABBRRQ -QAEFFFBAAQUUUEABBRRQQAEFahEwgK6F1UEVUEABBRRQQAEFFFBAAQUUUEABBRRQ -QAEFDKB9BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVqETCAroXVQRVQQAEFFFBA -AQUUUEABBRRQQAEFFFBAAQUMoH0GFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABBWoR -MICuhdVBFVBAAQUUUEABBRRQQAEFFFBAAQUUUEABBQygfQYUUEABBRRQQAEFFFBA -AQUUUEABBRRQQAEFahEwgK6F1UEVUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDKB9 -BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVqETCAroXVQRVQQAEFFFBAAQUUUEAB -BRRQQAEFFFBAAQUMoH0GFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABBWoRMICuhdVB -FVBAAQUUUEABBRRQQAEFFFBAAQUUUEABBQygfQYUUEABBRRQQAEFFFBAAQUUUEAB -BRRQQAEFahEwgK6F1UEVUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDKB9BhRQQAEF -FFBAAQUUUEABBRRQQAEFFFBAAQVqETCAroXVQRVQQAEFFFBAAQUUUEABBRRQQAEF -FFBAAQUMoH0GFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABBWoRMICuhdVBFVBAAQUU -UEABBRRQQAEFFFBAAQUUUEABBQygfQYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEF -ahEwgK6F1UEVUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDKB9BhRQQAEF/r927JAG -AACAYZh/11MxVgMHzdEIECBAgAABAgQIECBAgAABAgQWAQF6YTVKgAABAgQIECBA -gAABAgQIECBAgAABAgK0DxAgQIAAAQIECBAgQIAAAQIECBAgQIDAIiBAL6xGCRAg -QIAAAQIECBAgQIAAAQIECBAgQECA9gECBAgQIECAAAECBAgQIECAAAECBAgQWAQE -6IXVKAECBAgQIECAAAECBAgQIECAAAECBAgI0D5AgAABAgQIECBAgAABAgQIECBA -gAABAouAAL2wGiVAgAABAgQIECBAgAABAgQIECBAgAABAdoHCBAgQIAAAQIECBAg -QIAAAQIECBAgQGAREKAXVqMECBAgQIAAAQIECBAgQIAAAQIECBAgIED7AAECBAgQ -IECAAAECBAgQIECAAAECBAgsAgL0wmqUAAECBAgQIECAAAECBAgQIECAAAECBARo -HyBAgAABAgQIECBAgAABAgQIECBAgACBRUCAXliNEiBAgAABAgQIECBAgAABAgQI -ECBAgIAA7QMECBAgQIAAAQIECBAgQIAAAQIECBAgsAgI0AurUQIECBAgQIAAAQIE -CBAgQIAAAQIECBAQoH2AAAECBAgQIECAAAECBAgQIECAAAECBBYBAXphNUqAAAEC -BAgQIECAAAECBAgQIECAAAECArQPECBAgAABAgQIECBAgAABAgQIECBAgMAiIEAv -rEYJECBAgAABAgQIECBAgAABAgQIECBAQID2AQIECBAgQIAAAQIECBAgQIAAAQIE -CBBYBATohdUoAQIECBAgQIAAAQIECBAgQIAAAQIECAjQPkCAAAECBAgQIECAAAEC -BAgQIECAAAECi4AAvbAaJUCAAAECBAgQIECAAAECBAgQIECAAAEB2gcIECBAgAAB -AgQIECBAgAABAgQIECBAYBEQoBdWowQIECBAgAABAgQIECBAgAABAgQIECAgQPsA -AQIECBAgQIAAAQIECBAgQIAAAQIECCwCAvTCapQAAQIECBAgQIAAAQIECBAgQIAA -AQIEBGgfIECAAAECBAgQIECAAAECBAgQIECAAIFFQIBeWI0SIECAAAECBAgQIECA -AAECBAgQIECAgADtAwQIECBAgAABAgQIECBAgAABAgQIECCwCAjQC6tRAgQIECBA -gAABAgQIECBAgAABAgQIEBCgfYAAAQIECBAgQIAAAQIECBAgQIAAAQIEFgEBemE1 -SoAAAQIECBAgQIAAAQIECBAgQIAAAQICtA8QIECAAAECBAgQIECAAAECBAgQIECA -wCIgQC+sRgkQIECAAAECBAgQIECAAAECBAgQIEBAgPYBAgQIECBAgAABAgQIECBA -gAABAgQIEFgEBOiF1SgBAgQIECBAgAABAgQIECBAgAABAgQICNA+QIAAAQIECBAg -QIAAAQIECBAgQIAAAQKLgAC9sBolQIAAAQIECBAgQIAAAQIECBAgQIAAAQHaBwgQ -IECAAAECBAgQIECAAAECBAgQIEBgERCgF1ajBAgQIECAAAECBAgQIECAAAECBAgQ -ICBA+wABAgQIECBAgAABAgQIECBAgAABAgQILAIC9MJqlAABAgQIECBAgAABAgQI -ECBAgAABAgQEaB8gQIAAAQIECBAgQIAAAQIECBAgQIAAgUVAgF5YjRIgQIAAAQIE -CBAgQIAAAQIECBAgQICAAO0DBAgQIECAAAECBAgQIECAAAECBAgQILAICNALq1EC -BAgQIECAAAECBAgQIECAAAECBAgQEKB9gAABAgQIECBAgAABAgQIECBAgAABAgQW -AQF6YTVKgAABAgQIECBAgAABAgQIECBAgAABAgK0DxAgQIAAAQIECBAgQIAAAQIE -CBAgQIDAIiBAL6xGCRAgQIAAAQIECBAgQIAAAQIECBAgQECA9gECBAgQIECAAAEC -BAgQIECAAAECBAgQWAQE6IXVKAECBAgQIECAAAECBAgQIECAAAECBAgI0D5AgAAB -AgQIECBAgAABAgQIECBAgAABAouAAL2wGiVAgAABAgQIECBAgAABAgQIECBAgAAB -AdoHCBAgQIAAAQIECBAgQIAAAQIECBAgQGAREKAXVqMECBAgQIAAAQIECBAgQIAA -AQIECBAgIED7AAECBAgQIECAAAECBAgQIECAAAECBAgsAgL0wmqUAAECBAgQIECA -AAECBAgQIECAAAECBARoHyBAgAABAgQIECBAgAABAgQIECBAgACBRUCAXliNEiBA -gAABAgQIECBAgAABAgQIECBAgIAA7QMECBAgQIAAAQIECBAgQIAAAQIECBAgsAgI -0AurUQIECBAgQIAAAQIECBAgQIAAAQIECBAQoH2AAAECBAgQIECAAAECBAgQIECA -AAECBBYBAXphNUqAAAECBAgQIECAAAECBAgQIECAAAECArQPECBAgAABAgQIECBA -gAABAgQIECBAgMAiIEAvrEYJECBAgAABAgQIECBAgAABAgQIECBAQID2AQIECBAg -QIAAAQIECBAgQIAAAQIECBBYBATohdUoAQIECBAgQIAAAQIECBAgQIAAAQIECAjQ -PkCAAAECBAgQIECAAAECBAgQIECAAAECi4AAvbAaJUCAAAECBAgQIECAAAECBAgQ -IECAAAEB2gcIECBAgAABAgQIECBAgAABAgQIECBAYBEQoBdWowQIECBAgAABAgQI -ECBAgAABAgQIECAgQPsAAQIECBAgQIAAAQIECBAgQIAAAQIECCwCAvTCapQAAQIE -CBAgQIAAAQIECBAgQIAAAQIEBGgfIECAAAECBAgQIECAAAECBAgQIECAAIFFQIBe -WI0SIECAAAECBAgQIECAAAECBAgQIECAgADtAwQIECBAgAABAgQIECBAgAABAgQI -ECCwCAjQC6tRAgQIECBAgAABAgQIECBAgAABAgQIEBCgfYAAAQIECBAgQIAAAQIE -CBAgQIAAAQIEFgEBemE1SoAAAQIECBAgQIAAAQIECBAgQIAAAQICtA8QIECAAAEC -BAgQIECAAAECBAgQIECAwCIgQC+sRgkQIECAAAECBAgQIECAAAECBAgQIEBAgPYB -AgQIECBAgAABAgQIECBAgAABAgQIEFgEBOiF1SgBAgQIECBAgAABAgQIECBAgAAB -AgQICNA+QIAAAQIECBAgQIAAAQIECBAgQIAAAQKLgAC9sBolQIAAAQIECBAgQIAA -AQIECBAgQIAAAQHaBwgQIECAAAECBAgQIECAAAECBAgQIEBgERCgF1ajBAgQIECA -AAECBAgQIECAAAECBAgQICBA+wABAgQIECBAgAABAgQIECBAgAABAgQILAIC9MJq -lAABAgQIECBAgAABAgQIECBAgAABAgQEaB8gQIAAAQIECBAgQIAAAQIECBAgQIAA -gUVAgF5YjRIgQIAAAQIECBAgQIAAAQIECBAgQICAAO0DBAgQIECAAAECBAgQIECA -AAECBAgQILAICNALq1ECBAgQIECAAAECBAgQIECAAAECBAgQEKB9gAABAgQIECBA -gAABAgQIECBAgAABAgQWAQF6YTVKgAABAgQIECBAgAABAgQIECBAgAABAgK0DxAg -QIAAAQIECBAgQIAAAQIECBAgQIDAIiBAL6xGCRAgQIAAAQIECBAgQIAAAQIECBAg -QECA9gECBAgQIECAAAECBAgQIECAAAECBAgQWAQE6IXVKAECBAgQIECAAAECBAgQ -IECAAAECBAgI0D5AgAABAgQIECBAgAABAgQIECBAgAABAouAAL2wGiVAgAABAgQI -ECBAgAABAgQIECBAgAABAdoHCBAgQIAAAQIECBAgQIAAAQIECBAgQGAREKAXVqME -CBAgQIAAAQIECBAgQIAAAQIECBAgIED7AAECBAgQIECAAAECBAgQIECAAAECBAgs -AgL0wmqUAAECBAgQIECAAAECBAgQIECAAAECBARoHyBAgAABAgQIECBAgAABAgQI -ECBAgACBRUCAXliNEiBAgAABAgQIECBAgAABAgQIECBAgIAA7QMECBAgQIAAAQIE -CBAgQIAAAQIECBAgsAgI0AurUQIECBAgQIAAAQIECBAgQIAAAQIECBAQoH2AAAEC -BAgQIECAAAECBAgQIECAAAECBBYBAXphNUqAAAECBAgQIECAAAECBAgQIECAAAEC -ArQPECBAgAABAgQIECBAgAABAgQIECBAgMAiIEAvrEYJECBAgAABAgQIECBAgAAB -AgQIECBAIBsqBCbsggzYAAAAAElFTkSuQmCC` - -module.exports = function makeImages (cb) { - let images = {} - makeImage(singlePortrait, (image) => { - images.singlePortrait = image - cb(images) - }) -} - diff --git a/test/fixture/index.js b/test/fixture/index.js new file mode 100644 index 0000000..ae9b0ba --- /dev/null +++ b/test/fixture/index.js @@ -0,0 +1,3 @@ +module.exports = { + singlePortrait: require('./single-portrait') +} diff --git a/test/fixture/single-portrait.js b/test/fixture/single-portrait.js new file mode 100644 index 0000000..be71e82 --- /dev/null +++ b/test/fixture/single-portrait.js @@ -0,0 +1,393 @@ +let makeImage = require('../../app/lib/make-image') + +module.exports = (cb) => { + makeImage(`data:image/png;base64, +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 +RWARCPwfuNDlwVfqKPUAAAAASUVORK5CYII=` + , cb) +} diff --git a/test/view/canvas.test.js b/test/view/canvas.test.js index 14d4240..d7732d1 100644 --- a/test/view/canvas.test.js +++ b/test/view/canvas.test.js @@ -1,8 +1,8 @@ let assert = require('assert') let imagediff = require('imagediff') let Canvas = require('../../app/view/canvas') -let makeTestImages = require('../data/image') -let makeImageFixtures = require('../fixture/image') +let testImage = require('../data') +let fixtureImage = require('../fixture') describe('Canvas', function () { @@ -18,14 +18,14 @@ describe('Canvas', function () { assert.doesNotThrow(canvas.drawImage.bind(canvas, image, image), 'Invalid image') }) - it('should draw a single page', () => { + it('should draw a single page', (done) => { let canvas = new Canvas() - // TODO refactor how images are generated (do one at a time) // TODO update fixture once centering is working again - makeTestImages((testImages) => { - makeImageFixtures((fixtureImages) => { - canvas.drawImage(testImages.portrait1) - assert(imagediff.equal(canvas.canvas, fixtureImages.singlePortrait)) + testImage.portrait1((testImage) => { + fixtureImage.singlePortrait((fixtureImage) => { + canvas.drawImage(testImage) + assert(imagediff.equal(canvas.canvas, fixtureImage, 5)) + done() }) }) })