diff --git a/README.md b/README.md
index 85bb623e..13306d9f 100644
--- a/README.md
+++ b/README.md
@@ -81,13 +81,14 @@
### Technologies Used
* PHP/MySQL
+* Bootstrap
* AdminLTE3
* fontawesome
* chart.js
* moments.js
* Jquery
* PHPmailer
-* mPDF
+* pdfmake
* FullCalendar.io
* Select2
* Date Range Picker
diff --git a/guest_post.php b/guest_post.php
index 209dab29..5cd5f493 100644
--- a/guest_post.php
+++ b/guest_post.php
@@ -3,9 +3,6 @@
include("config.php");
include("functions.php");
-$mpdf_path = (getenv('MPDF_ROOT')) ? getenv('MPDF_ROOT') : __DIR__;
-require_once $mpdf_path . '/vendor/autoload.php';
-
if(isset($_GET['pdf_invoice'], $_GET['url_key'])){
$invoice_id = intval($_GET['pdf_invoice']);
diff --git a/plugins/pdfmake/fonts/Roboto/Roboto-Italic.ttf b/plugins/pdfmake/fonts/Roboto/Roboto-Italic.ttf
new file mode 100644
index 00000000..6a1cee5b
Binary files /dev/null and b/plugins/pdfmake/fonts/Roboto/Roboto-Italic.ttf differ
diff --git a/plugins/pdfmake/fonts/Roboto/Roboto-Medium.ttf b/plugins/pdfmake/fonts/Roboto/Roboto-Medium.ttf
new file mode 100644
index 00000000..1a7f3b0b
Binary files /dev/null and b/plugins/pdfmake/fonts/Roboto/Roboto-Medium.ttf differ
diff --git a/plugins/pdfmake/fonts/Roboto/Roboto-MediumItalic.ttf b/plugins/pdfmake/fonts/Roboto/Roboto-MediumItalic.ttf
new file mode 100644
index 00000000..00302952
Binary files /dev/null and b/plugins/pdfmake/fonts/Roboto/Roboto-MediumItalic.ttf differ
diff --git a/plugins/pdfmake/fonts/Roboto/Roboto-Regular.ttf b/plugins/pdfmake/fonts/Roboto/Roboto-Regular.ttf
new file mode 100644
index 00000000..2c97eead
Binary files /dev/null and b/plugins/pdfmake/fonts/Roboto/Roboto-Regular.ttf differ
diff --git a/plugins/pdfmake/pdfmake.js b/plugins/pdfmake/pdfmake.js
index 1a123b96..20a8e3f0 100644
--- a/plugins/pdfmake/pdfmake.js
+++ b/plugins/pdfmake/pdfmake.js
@@ -1,4 +1,4 @@
-/*! pdfmake v0.1.65, @license MIT, @link http://pdfmake.org */
+/*! pdfmake v0.1.70, @license MIT, @link http://pdfmake.org */
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
@@ -92,7 +92,7 @@ return /******/ (function(modules) { // webpackBootstrap
/******/
/******/
/******/ // Load entry module and return exports
-/******/ return __webpack_require__(__webpack_require__.s = 214);
+/******/ return __webpack_require__(__webpack_require__.s = 302);
/******/ })
/************************************************************************/
/******/ ([
@@ -100,125 +100,185 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-function isString(variable) {
- return typeof variable === 'string' || variable instanceof String;
-}
-
-function isNumber(variable) {
- return typeof variable === 'number' || variable instanceof Number;
-}
-
-function isBoolean(variable) {
- return typeof variable === 'boolean';
-}
-
-function isArray(variable) {
- return Array.isArray(variable);
-}
-
-function isFunction(variable) {
- return typeof variable === 'function';
-}
-
-function isObject(variable) {
- return variable !== null && typeof variable === 'object';
-}
-
-function isNull(variable) {
- return variable === null;
-}
-
-function isUndefined(variable) {
- return variable === undefined;
-}
-
-function pack() {
- var result = {};
-
- for (var i = 0, l = arguments.length; i < l; i++) {
- var obj = arguments[i];
-
- if (obj) {
- for (var key in obj) {
- if (obj.hasOwnProperty(key)) {
- result[key] = obj[key];
- }
- }
- }
- }
-
- return result;
-}
-
-function offsetVector(vector, x, y) {
- switch (vector.type) {
- case 'ellipse':
- case 'rect':
- vector.x += x;
- vector.y += y;
- break;
- case 'line':
- vector.x1 += x;
- vector.x2 += x;
- vector.y1 += y;
- vector.y2 += y;
- break;
- case 'polyline':
- for (var i = 0, l = vector.points.length; i < l; i++) {
- vector.points[i].x += x;
- vector.points[i].y += y;
- }
- break;
- }
-}
-
-function fontStringify(key, val) {
- if (key === 'font') {
- return 'font';
- }
- return val;
-}
-
-function getNodeId(node) {
- if (node.id) {
- return node.id;
- }
-
- if (isArray(node.text)) {
- for (var i = 0, l = node.text.length; i < l; i++) {
- var n = node.text[i];
- var nodeId = getNodeId(n);
- if (nodeId) {
- return nodeId;
- }
- }
- }
-
- return null;
-}
-
-module.exports = {
- isString: isString,
- isNumber: isNumber,
- isBoolean: isBoolean,
- isArray: isArray,
- isFunction: isFunction,
- isObject: isObject,
- isNull: isNull,
- isUndefined: isUndefined,
- pack: pack,
- fontStringify: fontStringify,
- offsetVector: offsetVector,
- getNodeId: getNodeId
-};
+
+
+function isString(variable) {
+ return typeof variable === 'string' || variable instanceof String;
+}
+
+function isNumber(variable) {
+ return typeof variable === 'number' || variable instanceof Number;
+}
+
+function isBoolean(variable) {
+ return typeof variable === 'boolean';
+}
+
+function isArray(variable) {
+ return Array.isArray(variable);
+}
+
+function isFunction(variable) {
+ return typeof variable === 'function';
+}
+
+function isObject(variable) {
+ return variable !== null && typeof variable === 'object';
+}
+
+function isNull(variable) {
+ return variable === null;
+}
+
+function isUndefined(variable) {
+ return variable === undefined;
+}
+
+function pack() {
+ var result = {};
+
+ for (var i = 0, l = arguments.length; i < l; i++) {
+ var obj = arguments[i];
+
+ if (obj) {
+ for (var key in obj) {
+ if (obj.hasOwnProperty(key)) {
+ result[key] = obj[key];
+ }
+ }
+ }
+ }
+
+ return result;
+}
+
+function offsetVector(vector, x, y) {
+ switch (vector.type) {
+ case 'ellipse':
+ case 'rect':
+ vector.x += x;
+ vector.y += y;
+ break;
+ case 'line':
+ vector.x1 += x;
+ vector.x2 += x;
+ vector.y1 += y;
+ vector.y2 += y;
+ break;
+ case 'polyline':
+ for (var i = 0, l = vector.points.length; i < l; i++) {
+ vector.points[i].x += x;
+ vector.points[i].y += y;
+ }
+ break;
+ }
+}
+
+function fontStringify(key, val) {
+ if (key === 'font') {
+ return 'font';
+ }
+ return val;
+}
+
+function getNodeId(node) {
+ if (node.id) {
+ return node.id;
+ }
+
+ if (isArray(node.text)) {
+ for (var i = 0, l = node.text.length; i < l; i++) {
+ var n = node.text[i];
+ var nodeId = getNodeId(n);
+ if (nodeId) {
+ return nodeId;
+ }
+ }
+ }
+
+ return null;
+}
+
+module.exports = {
+ isString: isString,
+ isNumber: isNumber,
+ isBoolean: isBoolean,
+ isArray: isArray,
+ isFunction: isFunction,
+ isObject: isObject,
+ isNull: isNull,
+ isUndefined: isUndefined,
+ pack: pack,
+ fontStringify: fontStringify,
+ offsetVector: offsetVector,
+ getNodeId: getNodeId
+};
/***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) {
+var global = __webpack_require__(3);
+var getOwnPropertyDescriptor = __webpack_require__(54).f;
+var createNonEnumerableProperty = __webpack_require__(18);
+var redefine = __webpack_require__(25);
+var setGlobal = __webpack_require__(139);
+var copyConstructorProperties = __webpack_require__(203);
+var isForced = __webpack_require__(145);
+
+/*
+ options.target - name of the target object
+ options.global - target is the global object
+ options.stat - export as static methods of target
+ options.proto - export as prototype methods of target
+ options.real - real prototype method for the `pure` version
+ options.forced - export even if the native feature is available
+ options.bind - bind methods to the target, required for the `pure` version
+ options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
+ options.unsafe - use the simple assignment of property instead of delete + defineProperty
+ options.sham - add a flag to not completely full polyfills
+ options.enumerable - export as enumerable property
+ options.noTargetGet - prevent calling a getter on target
+*/
+module.exports = function (options, source) {
+ var TARGET = options.target;
+ var GLOBAL = options.global;
+ var STATIC = options.stat;
+ var FORCED, target, key, targetProperty, sourceProperty, descriptor;
+ if (GLOBAL) {
+ target = global;
+ } else if (STATIC) {
+ target = global[TARGET] || setGlobal(TARGET, {});
+ } else {
+ target = (global[TARGET] || {}).prototype;
+ }
+ if (target) for (key in source) {
+ sourceProperty = source[key];
+ if (options.noTargetGet) {
+ descriptor = getOwnPropertyDescriptor(target, key);
+ targetProperty = descriptor && descriptor.value;
+ } else targetProperty = target[key];
+ FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
+ // contained in target
+ if (!FORCED && targetProperty !== undefined) {
+ if (typeof sourceProperty === typeof targetProperty) continue;
+ copyConstructorProperties(sourceProperty, targetProperty);
+ }
+ // add a flag to not completely full polyfills
+ if (options.sham || (targetProperty && targetProperty.sham)) {
+ createNonEnumerableProperty(sourceProperty, 'sham', true);
+ }
+ // extend global
+ redefine(target, key, sourceProperty, options);
+ }
+};
+
+
+/***/ }),
+/* 2 */
+/***/ (function(module, exports, __webpack_require__) {
+
;(function (root, factory) {
if (true) {
// CommonJS
@@ -974,32 +1034,328 @@ module.exports = {
}));
/***/ }),
-/* 2 */
+/* 3 */
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(global) {var check = function (it) {
+ return it && it.Math == Math && it;
+};
+
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+module.exports =
+ // eslint-disable-next-line no-undef
+ check(typeof globalThis == 'object' && globalThis) ||
+ check(typeof window == 'object' && window) ||
+ check(typeof self == 'object' && self) ||
+ check(typeof global == 'object' && global) ||
+ // eslint-disable-next-line no-new-func
+ (function () { return this; })() || Function('return this')();
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24)))
+
+/***/ }),
+/* 4 */
/***/ (function(module, exports) {
-var core = module.exports = { version: '2.6.11' };
+module.exports = function (exec) {
+ try {
+ return !!exec();
+ } catch (error) {
+ return true;
+ }
+};
+
+
+/***/ }),
+/* 5 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var NATIVE_ARRAY_BUFFER = __webpack_require__(221);
+var DESCRIPTORS = __webpack_require__(13);
+var global = __webpack_require__(3);
+var isObject = __webpack_require__(14);
+var has = __webpack_require__(15);
+var classof = __webpack_require__(117);
+var createNonEnumerableProperty = __webpack_require__(18);
+var redefine = __webpack_require__(25);
+var defineProperty = __webpack_require__(16).f;
+var getPrototypeOf = __webpack_require__(60);
+var setPrototypeOf = __webpack_require__(45);
+var wellKnownSymbol = __webpack_require__(6);
+var uid = __webpack_require__(112);
+
+var Int8Array = global.Int8Array;
+var Int8ArrayPrototype = Int8Array && Int8Array.prototype;
+var Uint8ClampedArray = global.Uint8ClampedArray;
+var Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;
+var TypedArray = Int8Array && getPrototypeOf(Int8Array);
+var TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);
+var ObjectPrototype = Object.prototype;
+var isPrototypeOf = ObjectPrototype.isPrototypeOf;
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+var TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');
+// Fixing native typed arrays in Opera Presto crashes the browser, see #595
+var NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';
+var TYPED_ARRAY_TAG_REQIRED = false;
+var NAME;
+
+var TypedArrayConstructorsList = {
+ Int8Array: 1,
+ Uint8Array: 1,
+ Uint8ClampedArray: 1,
+ Int16Array: 2,
+ Uint16Array: 2,
+ Int32Array: 4,
+ Uint32Array: 4,
+ Float32Array: 4,
+ Float64Array: 8
+};
+
+var BigIntArrayConstructorsList = {
+ BigInt64Array: 8,
+ BigUint64Array: 8
+};
+
+var isView = function isView(it) {
+ if (!isObject(it)) return false;
+ var klass = classof(it);
+ return klass === 'DataView'
+ || has(TypedArrayConstructorsList, klass)
+ || has(BigIntArrayConstructorsList, klass);
+};
+
+var isTypedArray = function (it) {
+ if (!isObject(it)) return false;
+ var klass = classof(it);
+ return has(TypedArrayConstructorsList, klass)
+ || has(BigIntArrayConstructorsList, klass);
+};
+
+var aTypedArray = function (it) {
+ if (isTypedArray(it)) return it;
+ throw TypeError('Target is not a typed array');
+};
+
+var aTypedArrayConstructor = function (C) {
+ if (setPrototypeOf) {
+ if (isPrototypeOf.call(TypedArray, C)) return C;
+ } else for (var ARRAY in TypedArrayConstructorsList) if (has(TypedArrayConstructorsList, NAME)) {
+ var TypedArrayConstructor = global[ARRAY];
+ if (TypedArrayConstructor && (C === TypedArrayConstructor || isPrototypeOf.call(TypedArrayConstructor, C))) {
+ return C;
+ }
+ } throw TypeError('Target is not a typed array constructor');
+};
+
+var exportTypedArrayMethod = function (KEY, property, forced) {
+ if (!DESCRIPTORS) return;
+ if (forced) for (var ARRAY in TypedArrayConstructorsList) {
+ var TypedArrayConstructor = global[ARRAY];
+ if (TypedArrayConstructor && has(TypedArrayConstructor.prototype, KEY)) {
+ delete TypedArrayConstructor.prototype[KEY];
+ }
+ }
+ if (!TypedArrayPrototype[KEY] || forced) {
+ redefine(TypedArrayPrototype, KEY, forced ? property
+ : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property);
+ }
+};
+
+var exportTypedArrayStaticMethod = function (KEY, property, forced) {
+ var ARRAY, TypedArrayConstructor;
+ if (!DESCRIPTORS) return;
+ if (setPrototypeOf) {
+ if (forced) for (ARRAY in TypedArrayConstructorsList) {
+ TypedArrayConstructor = global[ARRAY];
+ if (TypedArrayConstructor && has(TypedArrayConstructor, KEY)) {
+ delete TypedArrayConstructor[KEY];
+ }
+ }
+ if (!TypedArray[KEY] || forced) {
+ // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable
+ try {
+ return redefine(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && Int8Array[KEY] || property);
+ } catch (error) { /* empty */ }
+ } else return;
+ }
+ for (ARRAY in TypedArrayConstructorsList) {
+ TypedArrayConstructor = global[ARRAY];
+ if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {
+ redefine(TypedArrayConstructor, KEY, property);
+ }
+ }
+};
+
+for (NAME in TypedArrayConstructorsList) {
+ if (!global[NAME]) NATIVE_ARRAY_BUFFER_VIEWS = false;
+}
+
+// WebKit bug - typed arrays constructors prototype is Object.prototype
+if (!NATIVE_ARRAY_BUFFER_VIEWS || typeof TypedArray != 'function' || TypedArray === Function.prototype) {
+ // eslint-disable-next-line no-shadow
+ TypedArray = function TypedArray() {
+ throw TypeError('Incorrect invocation');
+ };
+ if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {
+ if (global[NAME]) setPrototypeOf(global[NAME], TypedArray);
+ }
+}
+
+if (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {
+ TypedArrayPrototype = TypedArray.prototype;
+ if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {
+ if (global[NAME]) setPrototypeOf(global[NAME].prototype, TypedArrayPrototype);
+ }
+}
+
+// WebKit bug - one more object in Uint8ClampedArray prototype chain
+if (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {
+ setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);
+}
+
+if (DESCRIPTORS && !has(TypedArrayPrototype, TO_STRING_TAG)) {
+ TYPED_ARRAY_TAG_REQIRED = true;
+ defineProperty(TypedArrayPrototype, TO_STRING_TAG, { get: function () {
+ return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;
+ } });
+ for (NAME in TypedArrayConstructorsList) if (global[NAME]) {
+ createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME);
+ }
+}
+
+module.exports = {
+ NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,
+ TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQIRED && TYPED_ARRAY_TAG,
+ aTypedArray: aTypedArray,
+ aTypedArrayConstructor: aTypedArrayConstructor,
+ exportTypedArrayMethod: exportTypedArrayMethod,
+ exportTypedArrayStaticMethod: exportTypedArrayStaticMethod,
+ isView: isView,
+ isTypedArray: isTypedArray,
+ TypedArray: TypedArray,
+ TypedArrayPrototype: TypedArrayPrototype
+};
+
+
+/***/ }),
+/* 6 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+var shared = __webpack_require__(142);
+var has = __webpack_require__(15);
+var uid = __webpack_require__(112);
+var NATIVE_SYMBOL = __webpack_require__(146);
+var USE_SYMBOL_AS_UID = __webpack_require__(205);
+
+var WellKnownSymbolsStore = shared('wks');
+var Symbol = global.Symbol;
+var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
+
+module.exports = function (name) {
+ if (!has(WellKnownSymbolsStore, name)) {
+ if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];
+ else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
+ } return WellKnownSymbolsStore[name];
+};
+
+
+/***/ }),
+/* 7 */
+/***/ (function(module, exports) {
+
+var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
/***/ }),
-/* 3 */
+/* 8 */
/***/ (function(module, exports, __webpack_require__) {
-var store = __webpack_require__(61)('wks');
-var uid = __webpack_require__(29);
-var Symbol = __webpack_require__(8).Symbol;
-var USE_SYMBOL = typeof Symbol == 'function';
+var toInteger = __webpack_require__(35);
-var $exports = module.exports = function (name) {
- return store[name] || (store[name] =
- USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
+var min = Math.min;
+
+// `ToLength` abstract operation
+// https://tc39.es/ecma262/#sec-tolength
+module.exports = function (argument) {
+ return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
};
-$exports.store = store;
-
/***/ }),
-/* 4 */
+/* 9 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(17);
+var core = __webpack_require__(7);
+var ctx = __webpack_require__(32);
+var hide = __webpack_require__(39);
+var has = __webpack_require__(51);
+var PROTOTYPE = 'prototype';
+
+var $export = function (type, name, source) {
+ var IS_FORCED = type & $export.F;
+ var IS_GLOBAL = type & $export.G;
+ var IS_STATIC = type & $export.S;
+ var IS_PROTO = type & $export.P;
+ var IS_BIND = type & $export.B;
+ var IS_WRAP = type & $export.W;
+ var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
+ var expProto = exports[PROTOTYPE];
+ var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
+ var key, own, out;
+ if (IS_GLOBAL) source = name;
+ for (key in source) {
+ // contains in native
+ own = !IS_FORCED && target && target[key] !== undefined;
+ if (own && has(exports, key)) continue;
+ // export native or passed
+ out = own ? target[key] : source[key];
+ // prevent global pollution for namespaces
+ exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+ // bind timers to global for call from export context
+ : IS_BIND && own ? ctx(out, global)
+ // wrap global constructors for prevent change them in library
+ : IS_WRAP && target[key] == out ? (function (C) {
+ var F = function (a, b, c) {
+ if (this instanceof C) {
+ switch (arguments.length) {
+ case 0: return new C();
+ case 1: return new C(a);
+ case 2: return new C(a, b);
+ } return new C(a, b, c);
+ } return C.apply(this, arguments);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
+ if (IS_PROTO) {
+ (exports.virtual || (exports.virtual = {}))[key] = out;
+ // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
+ if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
+ }
+ }
+};
+// type bitmap
+$export.F = 1; // forced
+$export.G = 2; // global
+$export.S = 4; // static
+$export.P = 8; // proto
+$export.B = 16; // bind
+$export.W = 32; // wrap
+$export.U = 64; // safe
+$export.R = 128; // real proto method for `library`
+module.exports = $export;
+
+
+/***/ }),
+/* 10 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -1013,9 +1369,9 @@ $exports.store = store;
-var base64 = __webpack_require__(216)
-var ieee754 = __webpack_require__(217)
-var isArray = __webpack_require__(132)
+var base64 = __webpack_require__(304)
+var ieee754 = __webpack_require__(305)
+var isArray = __webpack_require__(200)
exports.Buffer = Buffer
exports.SlowBuffer = SlowBuffer
@@ -2793,65 +3149,29 @@ function isnan (val) {
return val !== val // eslint-disable-line no-self-compare
}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(22)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24)))
/***/ }),
-/* 5 */
+/* 11 */
/***/ (function(module, exports, __webpack_require__) {
-var global = __webpack_require__(8);
-var core = __webpack_require__(39);
-var hide = __webpack_require__(15);
-var redefine = __webpack_require__(23);
-var ctx = __webpack_require__(52);
-var PROTOTYPE = 'prototype';
+var isObject = __webpack_require__(14);
-var $export = function (type, name, source) {
- var IS_FORCED = type & $export.F;
- var IS_GLOBAL = type & $export.G;
- var IS_STATIC = type & $export.S;
- var IS_PROTO = type & $export.P;
- var IS_BIND = type & $export.B;
- var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
- var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
- var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
- var key, own, out, exp;
- if (IS_GLOBAL) source = name;
- for (key in source) {
- // contains in native
- own = !IS_FORCED && target && target[key] !== undefined;
- // export native or passed
- out = (own ? target : source)[key];
- // bind timers to global for call from export context
- exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
- // extend global
- if (target) redefine(target, key, out, type & $export.U);
- // export
- if (exports[key] != out) hide(exports, key, exp);
- if (IS_PROTO && expProto[key] != out) expProto[key] = out;
- }
+module.exports = function (it) {
+ if (!isObject(it)) {
+ throw TypeError(String(it) + ' is not an object');
+ } return it;
};
-global.core = core;
-// type bitmap
-$export.F = 1; // forced
-$export.G = 2; // global
-$export.S = 4; // static
-$export.P = 8; // proto
-$export.B = 16; // bind
-$export.W = 32; // wrap
-$export.U = 64; // safe
-$export.R = 128; // real proto method for `library`
-module.exports = $export;
/***/ }),
-/* 6 */
+/* 12 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(33));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(49));
}
else {}
}(this, function (CryptoJS) {
@@ -3723,75 +4043,65 @@ module.exports = $export;
}));
/***/ }),
-/* 7 */
+/* 13 */
/***/ (function(module, exports, __webpack_require__) {
-var global = __webpack_require__(21);
-var core = __webpack_require__(2);
-var ctx = __webpack_require__(38);
-var hide = __webpack_require__(27);
-var has = __webpack_require__(36);
-var PROTOTYPE = 'prototype';
+var fails = __webpack_require__(4);
-var $export = function (type, name, source) {
- var IS_FORCED = type & $export.F;
- var IS_GLOBAL = type & $export.G;
- var IS_STATIC = type & $export.S;
- var IS_PROTO = type & $export.P;
- var IS_BIND = type & $export.B;
- var IS_WRAP = type & $export.W;
- var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
- var expProto = exports[PROTOTYPE];
- var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
- var key, own, out;
- if (IS_GLOBAL) source = name;
- for (key in source) {
- // contains in native
- own = !IS_FORCED && target && target[key] !== undefined;
- if (own && has(exports, key)) continue;
- // export native or passed
- out = own ? target[key] : source[key];
- // prevent global pollution for namespaces
- exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
- // bind timers to global for call from export context
- : IS_BIND && own ? ctx(out, global)
- // wrap global constructors for prevent change them in library
- : IS_WRAP && target[key] == out ? (function (C) {
- var F = function (a, b, c) {
- if (this instanceof C) {
- switch (arguments.length) {
- case 0: return new C();
- case 1: return new C(a);
- case 2: return new C(a, b);
- } return new C(a, b, c);
- } return C.apply(this, arguments);
- };
- F[PROTOTYPE] = C[PROTOTYPE];
- return F;
- // make static versions for prototype methods
- })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
- // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
- if (IS_PROTO) {
- (exports.virtual || (exports.virtual = {}))[key] = out;
- // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
- if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
- }
- }
-};
-// type bitmap
-$export.F = 1; // forced
-$export.G = 2; // global
-$export.S = 4; // static
-$export.P = 8; // proto
-$export.B = 16; // bind
-$export.W = 32; // wrap
-$export.U = 64; // safe
-$export.R = 128; // real proto method for `library`
-module.exports = $export;
+// Detect IE8's incomplete defineProperty implementation
+module.exports = !fails(function () {
+ return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
+});
/***/ }),
-/* 8 */
+/* 14 */
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+};
+
+
+/***/ }),
+/* 15 */
+/***/ (function(module, exports) {
+
+var hasOwnProperty = {}.hasOwnProperty;
+
+module.exports = function (it, key) {
+ return hasOwnProperty.call(it, key);
+};
+
+
+/***/ }),
+/* 16 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__(13);
+var IE8_DOM_DEFINE = __webpack_require__(202);
+var anObject = __webpack_require__(11);
+var toPrimitive = __webpack_require__(55);
+
+var nativeDefineProperty = Object.defineProperty;
+
+// `Object.defineProperty` method
+// https://tc39.es/ecma262/#sec-object.defineproperty
+exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
+ anObject(O);
+ P = toPrimitive(P, true);
+ anObject(Attributes);
+ if (IE8_DOM_DEFINE) try {
+ return nativeDefineProperty(O, P, Attributes);
+ } catch (error) { /* empty */ }
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
+ if ('value' in Attributes) O[P] = Attributes.value;
+ return O;
+};
+
+
+/***/ }),
+/* 17 */
/***/ (function(module, exports) {
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
@@ -3803,78 +4113,119 @@ if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
/***/ }),
-/* 9 */
+/* 18 */
/***/ (function(module, exports, __webpack_require__) {
-// Thank's IE8 for his funny defineProperty
-module.exports = !__webpack_require__(10)(function () {
- return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
-});
+var DESCRIPTORS = __webpack_require__(13);
+var definePropertyModule = __webpack_require__(16);
+var createPropertyDescriptor = __webpack_require__(40);
-
-/***/ }),
-/* 10 */
-/***/ (function(module, exports) {
-
-module.exports = function (exec) {
- try {
- return !!exec();
- } catch (e) {
- return true;
- }
+module.exports = DESCRIPTORS ? function (object, key, value) {
+ return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
+} : function (object, key, value) {
+ object[key] = value;
+ return object;
};
/***/ }),
-/* 11 */
+/* 19 */
/***/ (function(module, exports, __webpack_require__) {
-var anObject = __webpack_require__(12);
-var IE8_DOM_DEFINE = __webpack_require__(134);
-var toPrimitive = __webpack_require__(51);
-var dP = Object.defineProperty;
+var requireObjectCoercible = __webpack_require__(33);
-exports.f = __webpack_require__(9) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
- anObject(O);
- P = toPrimitive(P, true);
- anObject(Attributes);
- if (IE8_DOM_DEFINE) try {
- return dP(O, P, Attributes);
- } catch (e) { /* empty */ }
- if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
- if ('value' in Attributes) O[P] = Attributes.value;
- return O;
+// `ToObject` abstract operation
+// https://tc39.es/ecma262/#sec-toobject
+module.exports = function (argument) {
+ return Object(requireObjectCoercible(argument));
};
/***/ }),
-/* 12 */
+/* 20 */
/***/ (function(module, exports, __webpack_require__) {
-var isObject = __webpack_require__(18);
-module.exports = function (it) {
- if (!isObject(it)) throw TypeError(it + ' is not an object!');
- return it;
+var bind = __webpack_require__(96);
+var IndexedObject = __webpack_require__(92);
+var toObject = __webpack_require__(19);
+var toLength = __webpack_require__(8);
+var arraySpeciesCreate = __webpack_require__(209);
+
+var push = [].push;
+
+// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
+var createMethod = function (TYPE) {
+ var IS_MAP = TYPE == 1;
+ var IS_FILTER = TYPE == 2;
+ var IS_SOME = TYPE == 3;
+ var IS_EVERY = TYPE == 4;
+ var IS_FIND_INDEX = TYPE == 6;
+ var IS_FILTER_OUT = TYPE == 7;
+ var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+ return function ($this, callbackfn, that, specificCreate) {
+ var O = toObject($this);
+ var self = IndexedObject(O);
+ var boundFunction = bind(callbackfn, that, 3);
+ var length = toLength(self.length);
+ var index = 0;
+ var create = specificCreate || arraySpeciesCreate;
+ var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
+ var value, result;
+ for (;length > index; index++) if (NO_HOLES || index in self) {
+ value = self[index];
+ result = boundFunction(value, index, O);
+ if (TYPE) {
+ if (IS_MAP) target[index] = result; // map
+ else if (result) switch (TYPE) {
+ case 3: return true; // some
+ case 5: return value; // find
+ case 6: return index; // findIndex
+ case 2: push.call(target, value); // filter
+ } else switch (TYPE) {
+ case 4: return false; // every
+ case 7: push.call(target, value); // filterOut
+ }
+ }
+ }
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
+ };
+};
+
+module.exports = {
+ // `Array.prototype.forEach` method
+ // https://tc39.es/ecma262/#sec-array.prototype.foreach
+ forEach: createMethod(0),
+ // `Array.prototype.map` method
+ // https://tc39.es/ecma262/#sec-array.prototype.map
+ map: createMethod(1),
+ // `Array.prototype.filter` method
+ // https://tc39.es/ecma262/#sec-array.prototype.filter
+ filter: createMethod(2),
+ // `Array.prototype.some` method
+ // https://tc39.es/ecma262/#sec-array.prototype.some
+ some: createMethod(3),
+ // `Array.prototype.every` method
+ // https://tc39.es/ecma262/#sec-array.prototype.every
+ every: createMethod(4),
+ // `Array.prototype.find` method
+ // https://tc39.es/ecma262/#sec-array.prototype.find
+ find: createMethod(5),
+ // `Array.prototype.findIndex` method
+ // https://tc39.es/ecma262/#sec-array.prototype.findIndex
+ findIndex: createMethod(6),
+ // `Array.prototype.filterOut` method
+ // https://github.com/tc39/proposal-array-filtering
+ filterOut: createMethod(7)
};
/***/ }),
-/* 13 */
+/* 21 */
/***/ (function(module, exports, __webpack_require__) {
-// Thank's IE8 for his funny defineProperty
-module.exports = !__webpack_require__(37)(function () {
- return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
-});
-
-
-/***/ }),
-/* 14 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var store = __webpack_require__(119)('wks');
-var uid = __webpack_require__(78);
-var Symbol = __webpack_require__(21).Symbol;
+var store = __webpack_require__(182)('wks');
+var uid = __webpack_require__(131);
+var Symbol = __webpack_require__(17).Symbol;
var USE_SYMBOL = typeof Symbol == 'function';
var $exports = module.exports = function (name) {
@@ -3885,99 +4236,29 @@ var $exports = module.exports = function (name) {
$exports.store = store;
-/***/ }),
-/* 15 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var dP = __webpack_require__(11);
-var createDesc = __webpack_require__(40);
-module.exports = __webpack_require__(9) ? function (object, key, value) {
- return dP.f(object, key, createDesc(1, value));
-} : function (object, key, value) {
- object[key] = value;
- return object;
-};
-
-
-/***/ }),
-/* 16 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 7.1.15 ToLength
-var toInteger = __webpack_require__(31);
-var min = Math.min;
-module.exports = function (it) {
- return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
-};
-
-
-/***/ }),
-/* 17 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var anObject = __webpack_require__(28);
-var IE8_DOM_DEFINE = __webpack_require__(180);
-var toPrimitive = __webpack_require__(114);
-var dP = Object.defineProperty;
-
-exports.f = __webpack_require__(13) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
- anObject(O);
- P = toPrimitive(P, true);
- anObject(Attributes);
- if (IE8_DOM_DEFINE) try {
- return dP(O, P, Attributes);
- } catch (e) { /* empty */ }
- if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
- if ('value' in Attributes) O[P] = Attributes.value;
- return O;
-};
-
-
-/***/ }),
-/* 18 */
-/***/ (function(module, exports) {
-
-module.exports = function (it) {
- return typeof it === 'object' ? it !== null : typeof it === 'function';
-};
-
-
-/***/ }),
-/* 19 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 7.1.13 ToObject(argument)
-var defined = __webpack_require__(30);
-module.exports = function (it) {
- return Object(defined(it));
-};
-
-
-/***/ }),
-/* 20 */
-/***/ (function(module, exports) {
-
-module.exports = function (it) {
- return typeof it === 'object' ? it !== null : typeof it === 'function';
-};
-
-
-/***/ }),
-/* 21 */
-/***/ (function(module, exports) {
-
-// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
-var global = module.exports = typeof window != 'undefined' && window.Math == Math
- ? window : typeof self != 'undefined' && self.Math == Math ? self
- // eslint-disable-next-line no-new-func
- : Function('return this')();
-if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
-
-
/***/ }),
/* 22 */
/***/ (function(module, exports) {
+module.exports = function (it) {
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+};
+
+
+/***/ }),
+/* 23 */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Thank's IE8 for his funny defineProperty
+module.exports = !__webpack_require__(52)(function () {
+ return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
+});
+
+
+/***/ }),
+/* 24 */
+/***/ (function(module, exports) {
+
var g;
// This works in non-strict mode
@@ -4001,54 +4282,654 @@ module.exports = g;
/***/ }),
-/* 23 */
+/* 25 */
/***/ (function(module, exports, __webpack_require__) {
-var global = __webpack_require__(8);
-var hide = __webpack_require__(15);
-var has = __webpack_require__(24);
-var SRC = __webpack_require__(29)('src');
-var $toString = __webpack_require__(223);
-var TO_STRING = 'toString';
-var TPL = ('' + $toString).split(TO_STRING);
+var global = __webpack_require__(3);
+var createNonEnumerableProperty = __webpack_require__(18);
+var has = __webpack_require__(15);
+var setGlobal = __webpack_require__(139);
+var inspectSource = __webpack_require__(140);
+var InternalStateModule = __webpack_require__(42);
-__webpack_require__(39).inspectSource = function (it) {
- return $toString.call(it);
-};
+var getInternalState = InternalStateModule.get;
+var enforceInternalState = InternalStateModule.enforce;
+var TEMPLATE = String(String).split('String');
-(module.exports = function (O, key, val, safe) {
- var isFunction = typeof val == 'function';
- if (isFunction) has(val, 'name') || hide(val, 'name', key);
- if (O[key] === val) return;
- if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
- if (O === global) {
- O[key] = val;
- } else if (!safe) {
- delete O[key];
- hide(O, key, val);
- } else if (O[key]) {
- O[key] = val;
- } else {
- hide(O, key, val);
+(module.exports = function (O, key, value, options) {
+ var unsafe = options ? !!options.unsafe : false;
+ var simple = options ? !!options.enumerable : false;
+ var noTargetGet = options ? !!options.noTargetGet : false;
+ var state;
+ if (typeof value == 'function') {
+ if (typeof key == 'string' && !has(value, 'name')) {
+ createNonEnumerableProperty(value, 'name', key);
+ }
+ state = enforceInternalState(value);
+ if (!state.source) {
+ state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
+ }
}
+ if (O === global) {
+ if (simple) O[key] = value;
+ else setGlobal(key, value);
+ return;
+ } else if (!unsafe) {
+ delete O[key];
+ } else if (!noTargetGet && O[key]) {
+ simple = true;
+ }
+ if (simple) O[key] = value;
+ else createNonEnumerableProperty(O, key, value);
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
-})(Function.prototype, TO_STRING, function toString() {
- return typeof this == 'function' && this[SRC] || $toString.call(this);
+})(Function.prototype, 'toString', function toString() {
+ return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
});
/***/ }),
-/* 24 */
-/***/ (function(module, exports) {
+/* 26 */
+/***/ (function(module, exports, __webpack_require__) {
-var hasOwnProperty = {}.hasOwnProperty;
-module.exports = function (it, key) {
- return hasOwnProperty.call(it, key);
+var anObject = __webpack_require__(29);
+var IE8_DOM_DEFINE = __webpack_require__(255);
+var toPrimitive = __webpack_require__(176);
+var dP = Object.defineProperty;
+
+exports.f = __webpack_require__(23) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
+ anObject(O);
+ P = toPrimitive(P, true);
+ anObject(Attributes);
+ if (IE8_DOM_DEFINE) try {
+ return dP(O, P, Attributes);
+ } catch (e) { /* empty */ }
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
+ if ('value' in Attributes) O[P] = Attributes.value;
+ return O;
};
/***/ }),
-/* 25 */
+/* 27 */
+/***/ (function(module, exports, __webpack_require__) {
+
+// toObject with fallback for non-array-like ES3 strings
+var IndexedObject = __webpack_require__(92);
+var requireObjectCoercible = __webpack_require__(33);
+
+module.exports = function (it) {
+ return IndexedObject(requireObjectCoercible(it));
+};
+
+
+/***/ }),
+/* 28 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var toIndexedObject = __webpack_require__(27);
+var addToUnscopables = __webpack_require__(151);
+var Iterators = __webpack_require__(97);
+var InternalStateModule = __webpack_require__(42);
+var defineIterator = __webpack_require__(217);
+
+var ARRAY_ITERATOR = 'Array Iterator';
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
+
+// `Array.prototype.entries` method
+// https://tc39.es/ecma262/#sec-array.prototype.entries
+// `Array.prototype.keys` method
+// https://tc39.es/ecma262/#sec-array.prototype.keys
+// `Array.prototype.values` method
+// https://tc39.es/ecma262/#sec-array.prototype.values
+// `Array.prototype[@@iterator]` method
+// https://tc39.es/ecma262/#sec-array.prototype-@@iterator
+// `CreateArrayIterator` internal method
+// https://tc39.es/ecma262/#sec-createarrayiterator
+module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
+ setInternalState(this, {
+ type: ARRAY_ITERATOR,
+ target: toIndexedObject(iterated), // target
+ index: 0, // next index
+ kind: kind // kind
+ });
+// `%ArrayIteratorPrototype%.next` method
+// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
+}, function () {
+ var state = getInternalState(this);
+ var target = state.target;
+ var kind = state.kind;
+ var index = state.index++;
+ if (!target || index >= target.length) {
+ state.target = undefined;
+ return { value: undefined, done: true };
+ }
+ if (kind == 'keys') return { value: index, done: false };
+ if (kind == 'values') return { value: target[index], done: false };
+ return { value: [index, target[index]], done: false };
+}, 'values');
+
+// argumentsList[@@iterator] is %ArrayProto_values%
+// https://tc39.es/ecma262/#sec-createunmappedargumentsobject
+// https://tc39.es/ecma262/#sec-createmappedargumentsobject
+Iterators.Arguments = Iterators.Array;
+
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+addToUnscopables('keys');
+addToUnscopables('values');
+addToUnscopables('entries');
+
+
+/***/ }),
+/* 29 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(22);
+module.exports = function (it) {
+ if (!isObject(it)) throw TypeError(it + ' is not an object!');
+ return it;
+};
+
+
+/***/ }),
+/* 30 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__(13);
+var fails = __webpack_require__(4);
+var has = __webpack_require__(15);
+
+var defineProperty = Object.defineProperty;
+var cache = {};
+
+var thrower = function (it) { throw it; };
+
+module.exports = function (METHOD_NAME, options) {
+ if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];
+ if (!options) options = {};
+ var method = [][METHOD_NAME];
+ var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;
+ var argument0 = has(options, 0) ? options[0] : thrower;
+ var argument1 = has(options, 1) ? options[1] : undefined;
+
+ return cache[METHOD_NAME] = !!method && !fails(function () {
+ if (ACCESSORS && !DESCRIPTORS) return true;
+ var O = { length: -1 };
+
+ if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });
+ else O[1] = 1;
+
+ method.call(O, argument0, argument1);
+ });
+};
+
+
+/***/ }),
+/* 31 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__(154);
+var redefine = __webpack_require__(25);
+var toString = __webpack_require__(332);
+
+// `Object.prototype.toString` method
+// https://tc39.es/ecma262/#sec-object.prototype.tostring
+if (!TO_STRING_TAG_SUPPORT) {
+ redefine(Object.prototype, 'toString', toString, { unsafe: true });
+}
+
+
+/***/ }),
+/* 32 */
+/***/ (function(module, exports, __webpack_require__) {
+
+// optional / simple context binding
+var aFunction = __webpack_require__(101);
+module.exports = function (fn, that, length) {
+ aFunction(fn);
+ if (that === undefined) return fn;
+ switch (length) {
+ case 1: return function (a) {
+ return fn.call(that, a);
+ };
+ case 2: return function (a, b) {
+ return fn.call(that, a, b);
+ };
+ case 3: return function (a, b, c) {
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function (/* ...args */) {
+ return fn.apply(that, arguments);
+ };
+};
+
+
+/***/ }),
+/* 33 */
+/***/ (function(module, exports) {
+
+// `RequireObjectCoercible` abstract operation
+// https://tc39.es/ecma262/#sec-requireobjectcoercible
+module.exports = function (it) {
+ if (it == undefined) throw TypeError("Can't call method on " + it);
+ return it;
+};
+
+
+/***/ }),
+/* 34 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var path = __webpack_require__(114);
+var global = __webpack_require__(3);
+
+var aFunction = function (variable) {
+ return typeof variable == 'function' ? variable : undefined;
+};
+
+module.exports = function (namespace, method) {
+ return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])
+ : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
+};
+
+
+/***/ }),
+/* 35 */
+/***/ (function(module, exports) {
+
+var ceil = Math.ceil;
+var floor = Math.floor;
+
+// `ToInteger` abstract operation
+// https://tc39.es/ecma262/#sec-tointeger
+module.exports = function (argument) {
+ return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
+};
+
+
+/***/ }),
+/* 36 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__(11);
+var aFunction = __webpack_require__(44);
+var wellKnownSymbol = __webpack_require__(6);
+
+var SPECIES = wellKnownSymbol('species');
+
+// `SpeciesConstructor` abstract operation
+// https://tc39.es/ecma262/#sec-speciesconstructor
+module.exports = function (O, defaultConstructor) {
+ var C = anObject(O).constructor;
+ var S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);
+};
+
+
+/***/ }),
+/* 37 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(process) {/* eslint-disable node/no-deprecated-api */
+
+
+
+var buffer = __webpack_require__(10)
+var Buffer = buffer.Buffer
+
+var safer = {}
+
+var key
+
+for (key in buffer) {
+ if (!buffer.hasOwnProperty(key)) continue
+ if (key === 'SlowBuffer' || key === 'Buffer') continue
+ safer[key] = buffer[key]
+}
+
+var Safer = safer.Buffer = {}
+for (key in Buffer) {
+ if (!Buffer.hasOwnProperty(key)) continue
+ if (key === 'allocUnsafe' || key === 'allocUnsafeSlow') continue
+ Safer[key] = Buffer[key]
+}
+
+safer.Buffer.prototype = Buffer.prototype
+
+if (!Safer.from || Safer.from === Uint8Array.from) {
+ Safer.from = function (value, encodingOrOffset, length) {
+ if (typeof value === 'number') {
+ throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value)
+ }
+ if (value && typeof value.length === 'undefined') {
+ throw new TypeError('The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type ' + typeof value)
+ }
+ return Buffer(value, encodingOrOffset, length)
+ }
+}
+
+if (!Safer.alloc) {
+ Safer.alloc = function (size, fill, encoding) {
+ if (typeof size !== 'number') {
+ throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size)
+ }
+ if (size < 0 || size >= 2 * (1 << 30)) {
+ throw new RangeError('The value "' + size + '" is invalid for option "size"')
+ }
+ var buf = Buffer(size)
+ if (!fill || fill.length === 0) {
+ buf.fill(0)
+ } else if (typeof encoding === 'string') {
+ buf.fill(fill, encoding)
+ } else {
+ buf.fill(fill)
+ }
+ return buf
+ }
+}
+
+if (!safer.kStringMaxLength) {
+ try {
+ safer.kStringMaxLength = process.binding('buffer').kStringMaxLength
+ } catch (e) {
+ // we can't determine kStringMaxLength in environments where process.binding
+ // is unsupported, so let's not set it
+ }
+}
+
+if (!safer.constants) {
+ safer.constants = {
+ MAX_LENGTH: safer.kMaxLength
+ }
+ if (safer.kStringMaxLength) {
+ safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength
+ }
+}
+
+module.exports = safer
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(47)))
+
+/***/ }),
+/* 38 */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Generated by CoffeeScript 1.7.1
+(function() {
+ var NumberT, PropertyDescriptor;
+
+ NumberT = __webpack_require__(89).Number;
+
+ exports.resolveLength = function(length, stream, parent) {
+ var res;
+ if (typeof length === 'number') {
+ res = length;
+ } else if (typeof length === 'function') {
+ res = length.call(parent, parent);
+ } else if (parent && typeof length === 'string') {
+ res = parent[length];
+ } else if (stream && length instanceof NumberT) {
+ res = length.decode(stream);
+ }
+ if (isNaN(res)) {
+ throw new Error('Not a fixed size');
+ }
+ return res;
+ };
+
+ PropertyDescriptor = (function() {
+ function PropertyDescriptor(opts) {
+ var key, val;
+ if (opts == null) {
+ opts = {};
+ }
+ this.enumerable = true;
+ this.configurable = true;
+ for (key in opts) {
+ val = opts[key];
+ this[key] = val;
+ }
+ }
+
+ return PropertyDescriptor;
+
+ })();
+
+ exports.PropertyDescriptor = PropertyDescriptor;
+
+}).call(this);
+
+
+/***/ }),
+/* 39 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var dP = __webpack_require__(26);
+var createDesc = __webpack_require__(100);
+module.exports = __webpack_require__(23) ? function (object, key, value) {
+ return dP.f(object, key, createDesc(1, value));
+} : function (object, key, value) {
+ object[key] = value;
+ return object;
+};
+
+
+/***/ }),
+/* 40 */
+/***/ (function(module, exports) {
+
+module.exports = function (bitmap, value) {
+ return {
+ enumerable: !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable: !(bitmap & 4),
+ value: value
+ };
+};
+
+
+/***/ }),
+/* 41 */
+/***/ (function(module, exports) {
+
+var toString = {}.toString;
+
+module.exports = function (it) {
+ return toString.call(it).slice(8, -1);
+};
+
+
+/***/ }),
+/* 42 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var NATIVE_WEAK_MAP = __webpack_require__(310);
+var global = __webpack_require__(3);
+var isObject = __webpack_require__(14);
+var createNonEnumerableProperty = __webpack_require__(18);
+var objectHas = __webpack_require__(15);
+var shared = __webpack_require__(141);
+var sharedKey = __webpack_require__(111);
+var hiddenKeys = __webpack_require__(113);
+
+var WeakMap = global.WeakMap;
+var set, get, has;
+
+var enforce = function (it) {
+ return has(it) ? get(it) : set(it, {});
+};
+
+var getterFor = function (TYPE) {
+ return function (it) {
+ var state;
+ if (!isObject(it) || (state = get(it)).type !== TYPE) {
+ throw TypeError('Incompatible receiver, ' + TYPE + ' required');
+ } return state;
+ };
+};
+
+if (NATIVE_WEAK_MAP) {
+ var store = shared.state || (shared.state = new WeakMap());
+ var wmget = store.get;
+ var wmhas = store.has;
+ var wmset = store.set;
+ set = function (it, metadata) {
+ metadata.facade = it;
+ wmset.call(store, it, metadata);
+ return metadata;
+ };
+ get = function (it) {
+ return wmget.call(store, it) || {};
+ };
+ has = function (it) {
+ return wmhas.call(store, it);
+ };
+} else {
+ var STATE = sharedKey('state');
+ hiddenKeys[STATE] = true;
+ set = function (it, metadata) {
+ metadata.facade = it;
+ createNonEnumerableProperty(it, STATE, metadata);
+ return metadata;
+ };
+ get = function (it) {
+ return objectHas(it, STATE) ? it[STATE] : {};
+ };
+ has = function (it) {
+ return objectHas(it, STATE);
+ };
+}
+
+module.exports = {
+ set: set,
+ get: get,
+ has: has,
+ enforce: enforce,
+ getterFor: getterFor
+};
+
+
+/***/ }),
+/* 43 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__(35);
+
+var max = Math.max;
+var min = Math.min;
+
+// Helper for a popular repeating case of the spec:
+// Let integer be ? ToInteger(index).
+// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
+module.exports = function (index, length) {
+ var integer = toInteger(index);
+ return integer < 0 ? max(integer + length, 0) : min(integer, length);
+};
+
+
+/***/ }),
+/* 44 */
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+ if (typeof it != 'function') {
+ throw TypeError(String(it) + ' is not a function');
+ } return it;
+};
+
+
+/***/ }),
+/* 45 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__(11);
+var aPossiblePrototype = __webpack_require__(321);
+
+// `Object.setPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.setprototypeof
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+/* eslint-disable no-proto */
+module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
+ var CORRECT_SETTER = false;
+ var test = {};
+ var setter;
+ try {
+ setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
+ setter.call(test, []);
+ CORRECT_SETTER = test instanceof Array;
+ } catch (error) { /* empty */ }
+ return function setPrototypeOf(O, proto) {
+ anObject(O);
+ aPossiblePrototype(proto);
+ if (CORRECT_SETTER) setter.call(O, proto);
+ else O.__proto__ = proto;
+ return O;
+ };
+}() : undefined);
+
+
+/***/ }),
+/* 46 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var isObject = __webpack_require__(14);
+var isArray = __webpack_require__(115);
+var toAbsoluteIndex = __webpack_require__(43);
+var toLength = __webpack_require__(8);
+var toIndexedObject = __webpack_require__(27);
+var createProperty = __webpack_require__(147);
+var wellKnownSymbol = __webpack_require__(6);
+var arrayMethodHasSpeciesSupport = __webpack_require__(116);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');
+var USES_TO_LENGTH = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 });
+
+var SPECIES = wellKnownSymbol('species');
+var nativeSlice = [].slice;
+var max = Math.max;
+
+// `Array.prototype.slice` method
+// https://tc39.es/ecma262/#sec-array.prototype.slice
+// fallback for not array-like ES3 strings and DOM objects
+$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
+ slice: function slice(start, end) {
+ var O = toIndexedObject(this);
+ var length = toLength(O.length);
+ var k = toAbsoluteIndex(start, length);
+ var fin = toAbsoluteIndex(end === undefined ? length : end, length);
+ // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
+ var Constructor, result, n;
+ if (isArray(O)) {
+ Constructor = O.constructor;
+ // cross-realm fallback
+ if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {
+ Constructor = undefined;
+ } else if (isObject(Constructor)) {
+ Constructor = Constructor[SPECIES];
+ if (Constructor === null) Constructor = undefined;
+ }
+ if (Constructor === Array || Constructor === undefined) {
+ return nativeSlice.call(O, k, fin);
+ }
+ }
+ result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));
+ for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
+ result.length = n;
+ return result;
+ }
+});
+
+
+/***/ }),
+/* 47 */
/***/ (function(module, exports) {
// shim for using process in browser
@@ -4238,116 +5119,7 @@ process.umask = function() { return 0; };
/***/ }),
-/* 26 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// Generated by CoffeeScript 1.7.1
-(function() {
- var NumberT, PropertyDescriptor;
-
- NumberT = __webpack_require__(49).Number;
-
- exports.resolveLength = function(length, stream, parent) {
- var res;
- if (typeof length === 'number') {
- res = length;
- } else if (typeof length === 'function') {
- res = length.call(parent, parent);
- } else if (parent && typeof length === 'string') {
- res = parent[length];
- } else if (stream && length instanceof NumberT) {
- res = length.decode(stream);
- }
- if (isNaN(res)) {
- throw new Error('Not a fixed size');
- }
- return res;
- };
-
- PropertyDescriptor = (function() {
- function PropertyDescriptor(opts) {
- var key, val;
- if (opts == null) {
- opts = {};
- }
- this.enumerable = true;
- this.configurable = true;
- for (key in opts) {
- val = opts[key];
- this[key] = val;
- }
- }
-
- return PropertyDescriptor;
-
- })();
-
- exports.PropertyDescriptor = PropertyDescriptor;
-
-}).call(this);
-
-
-/***/ }),
-/* 27 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var dP = __webpack_require__(17);
-var createDesc = __webpack_require__(57);
-module.exports = __webpack_require__(13) ? function (object, key, value) {
- return dP.f(object, key, createDesc(1, value));
-} : function (object, key, value) {
- object[key] = value;
- return object;
-};
-
-
-/***/ }),
-/* 28 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var isObject = __webpack_require__(20);
-module.exports = function (it) {
- if (!isObject(it)) throw TypeError(it + ' is not an object!');
- return it;
-};
-
-
-/***/ }),
-/* 29 */
-/***/ (function(module, exports) {
-
-var id = 0;
-var px = Math.random();
-module.exports = function (key) {
- return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
-};
-
-
-/***/ }),
-/* 30 */
-/***/ (function(module, exports) {
-
-// 7.2.1 RequireObjectCoercible(argument)
-module.exports = function (it) {
- if (it == undefined) throw TypeError("Can't call method on " + it);
- return it;
-};
-
-
-/***/ }),
-/* 31 */
-/***/ (function(module, exports) {
-
-// 7.1.4 ToInteger
-var ceil = Math.ceil;
-var floor = Math.floor;
-module.exports = function (it) {
- return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
-};
-
-
-/***/ }),
-/* 32 */
+/* 48 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -4381,7 +5153,7 @@ module.exports = function (it) {
/**/
-var pna = __webpack_require__(69);
+var pna = __webpack_require__(123);
/**/
/**/
@@ -4396,12 +5168,12 @@ var objectKeys = Object.keys || function (obj) {
module.exports = Duplex;
/**/
-var util = Object.create(__webpack_require__(56));
-util.inherits = __webpack_require__(46);
+var util = Object.create(__webpack_require__(98));
+util.inherits = __webpack_require__(86);
/**/
-var Readable = __webpack_require__(166);
-var Writable = __webpack_require__(102);
+var Readable = __webpack_require__(241);
+var Writable = __webpack_require__(166);
util.inherits(Duplex, Readable);
@@ -4484,13 +5256,13 @@ Duplex.prototype._destroy = function (err, cb) {
};
/***/ }),
-/* 33 */
+/* 49 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(105), __webpack_require__(106));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(168), __webpack_require__(169));
}
else {}
}(this, function (CryptoJS) {
@@ -4614,104 +5386,19 @@ Duplex.prototype._destroy = function (err, cb) {
}));
/***/ }),
-/* 34 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {/* eslint-disable node/no-deprecated-api */
-
-
-
-var buffer = __webpack_require__(4)
-var Buffer = buffer.Buffer
-
-var safer = {}
-
-var key
-
-for (key in buffer) {
- if (!buffer.hasOwnProperty(key)) continue
- if (key === 'SlowBuffer' || key === 'Buffer') continue
- safer[key] = buffer[key]
-}
-
-var Safer = safer.Buffer = {}
-for (key in Buffer) {
- if (!Buffer.hasOwnProperty(key)) continue
- if (key === 'allocUnsafe' || key === 'allocUnsafeSlow') continue
- Safer[key] = Buffer[key]
-}
-
-safer.Buffer.prototype = Buffer.prototype
-
-if (!Safer.from || Safer.from === Uint8Array.from) {
- Safer.from = function (value, encodingOrOffset, length) {
- if (typeof value === 'number') {
- throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value)
- }
- if (value && typeof value.length === 'undefined') {
- throw new TypeError('The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type ' + typeof value)
- }
- return Buffer(value, encodingOrOffset, length)
- }
-}
-
-if (!Safer.alloc) {
- Safer.alloc = function (size, fill, encoding) {
- if (typeof size !== 'number') {
- throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size)
- }
- if (size < 0 || size >= 2 * (1 << 30)) {
- throw new RangeError('The value "' + size + '" is invalid for option "size"')
- }
- var buf = Buffer(size)
- if (!fill || fill.length === 0) {
- buf.fill(0)
- } else if (typeof encoding === 'string') {
- buf.fill(fill, encoding)
- } else {
- buf.fill(fill)
- }
- return buf
- }
-}
-
-if (!safer.kStringMaxLength) {
- try {
- safer.kStringMaxLength = process.binding('buffer').kStringMaxLength
- } catch (e) {
- // we can't determine kStringMaxLength in environments where process.binding
- // is unsupported, so let's not set it
- }
-}
-
-if (!safer.constants) {
- safer.constants = {
- MAX_LENGTH: safer.kMaxLength
- }
- if (safer.kStringMaxLength) {
- safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength
- }
-}
-
-module.exports = safer
-
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(25)))
-
-/***/ }),
-/* 35 */
+/* 50 */
/***/ (function(module, exports, __webpack_require__) {
// to indexed object, toObject with fallback for non-array-like ES3 strings
-var IObject = __webpack_require__(110);
-var defined = __webpack_require__(112);
+var IObject = __webpack_require__(173);
+var defined = __webpack_require__(174);
module.exports = function (it) {
return IObject(defined(it));
};
/***/ }),
-/* 36 */
+/* 51 */
/***/ (function(module, exports) {
var hasOwnProperty = {}.hasOwnProperty;
@@ -4721,7 +5408,7 @@ module.exports = function (it, key) {
/***/ }),
-/* 37 */
+/* 52 */
/***/ (function(module, exports) {
module.exports = function (exec) {
@@ -4734,90 +5421,313 @@ module.exports = function (exec) {
/***/ }),
-/* 38 */
+/* 53 */
/***/ (function(module, exports, __webpack_require__) {
-// optional / simple context binding
-var aFunction = __webpack_require__(182);
-module.exports = function (fn, that, length) {
- aFunction(fn);
- if (that === undefined) return fn;
- switch (length) {
- case 1: return function (a) {
- return fn.call(that, a);
- };
- case 2: return function (a, b) {
- return fn.call(that, a, b);
- };
- case 3: return function (a, b, c) {
- return fn.call(that, a, b, c);
- };
- }
- return function (/* ...args */) {
- return fn.apply(that, arguments);
- };
+"use strict";
+/* WEBPACK VAR INJECTION */(function(Buffer, __dirname) {
+
+function VirtualFileSystem() {
+ this.fileSystem = {};
+ this.dataSystem = {};
+}
+
+VirtualFileSystem.prototype.existsSync = function (filename) {
+ filename = fixFilename(filename);
+ return typeof this.fileSystem[filename] !== 'undefined'
+ || typeof this.dataSystem[filename] !== 'undefined';
+}
+
+VirtualFileSystem.prototype.readFileSync = function (filename, options) {
+ filename = fixFilename(filename);
+
+ var dataContent = this.dataSystem[filename];
+ if (typeof dataContent === 'string' && options === 'utf8') {
+ return dataContent;
+ }
+
+ if (dataContent) {
+ return new Buffer(dataContent, typeof dataContent === 'string' ? 'base64' : undefined);
+ }
+
+ var content = this.fileSystem[filename];
+ if (content) {
+ return content;
+ }
+
+ throw 'File \'' + filename + '\' not found in virtual file system';
+};
+
+VirtualFileSystem.prototype.writeFileSync = function (filename, content) {
+ this.fileSystem[fixFilename(filename)] = content;
+};
+
+VirtualFileSystem.prototype.bindFS = function (data) {
+ this.dataSystem = data || {};
+};
+
+
+function fixFilename(filename) {
+ if (filename.indexOf(__dirname) === 0) {
+ filename = filename.substring(__dirname.length);
+ }
+
+ if (filename.indexOf('/') === 0) {
+ filename = filename.substring(1);
+ }
+
+ return filename;
+}
+
+module.exports = new VirtualFileSystem();
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer, "/"))
+
+/***/ }),
+/* 54 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__(13);
+var propertyIsEnumerableModule = __webpack_require__(110);
+var createPropertyDescriptor = __webpack_require__(40);
+var toIndexedObject = __webpack_require__(27);
+var toPrimitive = __webpack_require__(55);
+var has = __webpack_require__(15);
+var IE8_DOM_DEFINE = __webpack_require__(202);
+
+var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
+
+// `Object.getOwnPropertyDescriptor` method
+// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
+exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
+ O = toIndexedObject(O);
+ P = toPrimitive(P, true);
+ if (IE8_DOM_DEFINE) try {
+ return nativeGetOwnPropertyDescriptor(O, P);
+ } catch (error) { /* empty */ }
+ if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
};
/***/ }),
-/* 39 */
-/***/ (function(module, exports) {
+/* 55 */
+/***/ (function(module, exports, __webpack_require__) {
-var core = module.exports = { version: '2.6.11' };
-if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
+var isObject = __webpack_require__(14);
-
-/***/ }),
-/* 40 */
-/***/ (function(module, exports) {
-
-module.exports = function (bitmap, value) {
- return {
- enumerable: !(bitmap & 1),
- configurable: !(bitmap & 2),
- writable: !(bitmap & 4),
- value: value
- };
+// `ToPrimitive` abstract operation
+// https://tc39.es/ecma262/#sec-toprimitive
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
+// and the second argument - flag - preferred type is a string
+module.exports = function (input, PREFERRED_STRING) {
+ if (!isObject(input)) return input;
+ var fn, val;
+ if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
+ if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
+ if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
+ throw TypeError("Can't convert object to primitive value");
};
/***/ }),
-/* 41 */
+/* 56 */
/***/ (function(module, exports) {
module.exports = false;
/***/ }),
-/* 42 */
+/* 57 */
/***/ (function(module, exports, __webpack_require__) {
-// 19.1.2.14 / 15.2.3.14 Object.keys(O)
-var $keys = __webpack_require__(138);
-var enumBugKeys = __webpack_require__(88);
+var internalObjectKeys = __webpack_require__(204);
+var enumBugKeys = __webpack_require__(143);
-module.exports = Object.keys || function keys(O) {
- return $keys(O, enumBugKeys);
+var hiddenKeys = enumBugKeys.concat('length', 'prototype');
+
+// `Object.getOwnPropertyNames` method
+// https://tc39.es/ecma262/#sec-object.getownpropertynames
+exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
+ return internalObjectKeys(O, hiddenKeys);
};
/***/ }),
-/* 43 */
+/* 58 */
/***/ (function(module, exports, __webpack_require__) {
-// to indexed object, toObject with fallback for non-array-like ES3 strings
-var IObject = __webpack_require__(85);
-var defined = __webpack_require__(30);
-module.exports = function (it) {
- return IObject(defined(it));
+var anObject = __webpack_require__(11);
+var defineProperties = __webpack_require__(312);
+var enumBugKeys = __webpack_require__(143);
+var hiddenKeys = __webpack_require__(113);
+var html = __webpack_require__(206);
+var documentCreateElement = __webpack_require__(138);
+var sharedKey = __webpack_require__(111);
+
+var GT = '>';
+var LT = '<';
+var PROTOTYPE = 'prototype';
+var SCRIPT = 'script';
+var IE_PROTO = sharedKey('IE_PROTO');
+
+var EmptyConstructor = function () { /* empty */ };
+
+var scriptTag = function (content) {
+ return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
+};
+
+// Create object with fake `null` prototype: use ActiveX Object with cleared prototype
+var NullProtoObjectViaActiveX = function (activeXDocument) {
+ activeXDocument.write(scriptTag(''));
+ activeXDocument.close();
+ var temp = activeXDocument.parentWindow.Object;
+ activeXDocument = null; // avoid memory leak
+ return temp;
+};
+
+// Create object with fake `null` prototype: use iframe Object with cleared prototype
+var NullProtoObjectViaIFrame = function () {
+ // Thrash, waste and sodomy: IE GC bug
+ var iframe = documentCreateElement('iframe');
+ var JS = 'java' + SCRIPT + ':';
+ var iframeDocument;
+ iframe.style.display = 'none';
+ html.appendChild(iframe);
+ // https://github.com/zloirock/core-js/issues/475
+ iframe.src = String(JS);
+ iframeDocument = iframe.contentWindow.document;
+ iframeDocument.open();
+ iframeDocument.write(scriptTag('document.F=Object'));
+ iframeDocument.close();
+ return iframeDocument.F;
+};
+
+// Check for document.domain and active x support
+// No need to use active x approach when document.domain is not set
+// see https://github.com/es-shims/es5-shim/issues/150
+// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
+// avoid IE GC bug
+var activeXDocument;
+var NullProtoObject = function () {
+ try {
+ /* global ActiveXObject */
+ activeXDocument = document.domain && new ActiveXObject('htmlfile');
+ } catch (error) { /* ignore */ }
+ NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
+ var length = enumBugKeys.length;
+ while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
+ return NullProtoObject();
+};
+
+hiddenKeys[IE_PROTO] = true;
+
+// `Object.create` method
+// https://tc39.es/ecma262/#sec-object.create
+module.exports = Object.create || function create(O, Properties) {
+ var result;
+ if (O !== null) {
+ EmptyConstructor[PROTOTYPE] = anObject(O);
+ result = new EmptyConstructor();
+ EmptyConstructor[PROTOTYPE] = null;
+ // add "__proto__" for Object.getPrototypeOf polyfill
+ result[IE_PROTO] = O;
+ } else result = NullProtoObject();
+ return Properties === undefined ? result : defineProperties(result, Properties);
};
/***/ }),
-/* 44 */
+/* 59 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(140)('Uint8', 1, function (init) {
+"use strict";
+
+var fails = __webpack_require__(4);
+
+module.exports = function (METHOD_NAME, argument) {
+ var method = [][METHOD_NAME];
+ return !!method && fails(function () {
+ // eslint-disable-next-line no-useless-call,no-throw-literal
+ method.call(null, argument || function () { throw 1; }, 1);
+ });
+};
+
+
+/***/ }),
+/* 60 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__(15);
+var toObject = __webpack_require__(19);
+var sharedKey = __webpack_require__(111);
+var CORRECT_PROTOTYPE_GETTER = __webpack_require__(219);
+
+var IE_PROTO = sharedKey('IE_PROTO');
+var ObjectPrototype = Object.prototype;
+
+// `Object.getPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.getprototypeof
+module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {
+ O = toObject(O);
+ if (has(O, IE_PROTO)) return O[IE_PROTO];
+ if (typeof O.constructor == 'function' && O instanceof O.constructor) {
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectPrototype : null;
+};
+
+
+/***/ }),
+/* 61 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var fails = __webpack_require__(4);
+var ArrayBufferModule = __webpack_require__(156);
+var anObject = __webpack_require__(11);
+var toAbsoluteIndex = __webpack_require__(43);
+var toLength = __webpack_require__(8);
+var speciesConstructor = __webpack_require__(36);
+
+var ArrayBuffer = ArrayBufferModule.ArrayBuffer;
+var DataView = ArrayBufferModule.DataView;
+var nativeArrayBufferSlice = ArrayBuffer.prototype.slice;
+
+var INCORRECT_SLICE = fails(function () {
+ return !new ArrayBuffer(2).slice(1, undefined).byteLength;
+});
+
+// `ArrayBuffer.prototype.slice` method
+// https://tc39.es/ecma262/#sec-arraybuffer.prototype.slice
+$({ target: 'ArrayBuffer', proto: true, unsafe: true, forced: INCORRECT_SLICE }, {
+ slice: function slice(start, end) {
+ if (nativeArrayBufferSlice !== undefined && end === undefined) {
+ return nativeArrayBufferSlice.call(anObject(this), start); // FF fix
+ }
+ var length = anObject(this).byteLength;
+ var first = toAbsoluteIndex(start, length);
+ var fin = toAbsoluteIndex(end === undefined ? length : end, length);
+ var result = new (speciesConstructor(this, ArrayBuffer))(toLength(fin - first));
+ var viewSource = new DataView(this);
+ var viewTarget = new DataView(result);
+ var index = 0;
+ while (first < fin) {
+ viewTarget.setUint8(index++, viewSource.getUint8(first++));
+ } return result;
+ }
+});
+
+
+/***/ }),
+/* 62 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var createTypedArrayConstructor = __webpack_require__(237);
+
+// `Uint8Array` constructor
+// https://tc39.es/ecma262/#sec-typedarray-objects
+createTypedArrayConstructor('Uint8', function (init) {
return function Uint8Array(data, byteOffset, length) {
return init(this, data, byteOffset, length);
};
@@ -4825,14 +5735,556 @@ __webpack_require__(140)('Uint8', 1, function (init) {
/***/ }),
-/* 45 */
-/***/ (function(module, exports) {
+/* 63 */
+/***/ (function(module, exports, __webpack_require__) {
-module.exports = {};
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $copyWithin = __webpack_require__(344);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.copyWithin` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.copywithin
+exportTypedArrayMethod('copyWithin', function copyWithin(target, start /* , end */) {
+ return $copyWithin.call(aTypedArray(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
+});
/***/ }),
-/* 46 */
+/* 64 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $every = __webpack_require__(20).every;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.every` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.every
+exportTypedArrayMethod('every', function every(callbackfn /* , thisArg */) {
+ return $every(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 65 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $fill = __webpack_require__(150);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.fill` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.fill
+// eslint-disable-next-line no-unused-vars
+exportTypedArrayMethod('fill', function fill(value /* , start, end */) {
+ return $fill.apply(aTypedArray(this), arguments);
+});
+
+
+/***/ }),
+/* 66 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $filter = __webpack_require__(20).filter;
+var speciesConstructor = __webpack_require__(36);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.filter` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.filter
+exportTypedArrayMethod('filter', function filter(callbackfn /* , thisArg */) {
+ var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ var C = speciesConstructor(this, this.constructor);
+ var index = 0;
+ var length = list.length;
+ var result = new (aTypedArrayConstructor(C))(length);
+ while (length > index) result[index] = list[index++];
+ return result;
+});
+
+
+/***/ }),
+/* 67 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $find = __webpack_require__(20).find;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.find` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.find
+exportTypedArrayMethod('find', function find(predicate /* , thisArg */) {
+ return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 68 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $findIndex = __webpack_require__(20).findIndex;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.findIndex` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findindex
+exportTypedArrayMethod('findIndex', function findIndex(predicate /* , thisArg */) {
+ return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 69 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $forEach = __webpack_require__(20).forEach;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.forEach` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.foreach
+exportTypedArrayMethod('forEach', function forEach(callbackfn /* , thisArg */) {
+ $forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 70 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $includes = __webpack_require__(93).includes;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.includes` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.includes
+exportTypedArrayMethod('includes', function includes(searchElement /* , fromIndex */) {
+ return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 71 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $indexOf = __webpack_require__(93).indexOf;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.indexOf` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.indexof
+exportTypedArrayMethod('indexOf', function indexOf(searchElement /* , fromIndex */) {
+ return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 72 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var global = __webpack_require__(3);
+var ArrayBufferViewCore = __webpack_require__(5);
+var ArrayIterators = __webpack_require__(28);
+var wellKnownSymbol = __webpack_require__(6);
+
+var ITERATOR = wellKnownSymbol('iterator');
+var Uint8Array = global.Uint8Array;
+var arrayValues = ArrayIterators.values;
+var arrayKeys = ArrayIterators.keys;
+var arrayEntries = ArrayIterators.entries;
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+var nativeTypedArrayIterator = Uint8Array && Uint8Array.prototype[ITERATOR];
+
+var CORRECT_ITER_NAME = !!nativeTypedArrayIterator
+ && (nativeTypedArrayIterator.name == 'values' || nativeTypedArrayIterator.name == undefined);
+
+var typedArrayValues = function values() {
+ return arrayValues.call(aTypedArray(this));
+};
+
+// `%TypedArray%.prototype.entries` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.entries
+exportTypedArrayMethod('entries', function entries() {
+ return arrayEntries.call(aTypedArray(this));
+});
+// `%TypedArray%.prototype.keys` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.keys
+exportTypedArrayMethod('keys', function keys() {
+ return arrayKeys.call(aTypedArray(this));
+});
+// `%TypedArray%.prototype.values` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.values
+exportTypedArrayMethod('values', typedArrayValues, !CORRECT_ITER_NAME);
+// `%TypedArray%.prototype[@@iterator]` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype-@@iterator
+exportTypedArrayMethod(ITERATOR, typedArrayValues, !CORRECT_ITER_NAME);
+
+
+/***/ }),
+/* 73 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+var $join = [].join;
+
+// `%TypedArray%.prototype.join` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.join
+// eslint-disable-next-line no-unused-vars
+exportTypedArrayMethod('join', function join(separator) {
+ return $join.apply(aTypedArray(this), arguments);
+});
+
+
+/***/ }),
+/* 74 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $lastIndexOf = __webpack_require__(345);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.lastIndexOf` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.lastindexof
+// eslint-disable-next-line no-unused-vars
+exportTypedArrayMethod('lastIndexOf', function lastIndexOf(searchElement /* , fromIndex */) {
+ return $lastIndexOf.apply(aTypedArray(this), arguments);
+});
+
+
+/***/ }),
+/* 75 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $map = __webpack_require__(20).map;
+var speciesConstructor = __webpack_require__(36);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.map` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.map
+exportTypedArrayMethod('map', function map(mapfn /* , thisArg */) {
+ return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) {
+ return new (aTypedArrayConstructor(speciesConstructor(O, O.constructor)))(length);
+ });
+});
+
+
+/***/ }),
+/* 76 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $reduce = __webpack_require__(239).left;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.reduce` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduce
+exportTypedArrayMethod('reduce', function reduce(callbackfn /* , initialValue */) {
+ return $reduce(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 77 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $reduceRight = __webpack_require__(239).right;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.reduceRicht` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduceright
+exportTypedArrayMethod('reduceRight', function reduceRight(callbackfn /* , initialValue */) {
+ return $reduceRight(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 78 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+var floor = Math.floor;
+
+// `%TypedArray%.prototype.reverse` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reverse
+exportTypedArrayMethod('reverse', function reverse() {
+ var that = this;
+ var length = aTypedArray(that).length;
+ var middle = floor(length / 2);
+ var index = 0;
+ var value;
+ while (index < middle) {
+ value = that[index];
+ that[index++] = that[--length];
+ that[length] = value;
+ } return that;
+});
+
+
+/***/ }),
+/* 79 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var toLength = __webpack_require__(8);
+var toOffset = __webpack_require__(238);
+var toObject = __webpack_require__(19);
+var fails = __webpack_require__(4);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+var FORCED = fails(function () {
+ // eslint-disable-next-line no-undef
+ new Int8Array(1).set({});
+});
+
+// `%TypedArray%.prototype.set` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set
+exportTypedArrayMethod('set', function set(arrayLike /* , offset */) {
+ aTypedArray(this);
+ var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);
+ var length = this.length;
+ var src = toObject(arrayLike);
+ var len = toLength(src.length);
+ var index = 0;
+ if (len + offset > length) throw RangeError('Wrong length');
+ while (index < len) this[offset + index] = src[index++];
+}, FORCED);
+
+
+/***/ }),
+/* 80 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var speciesConstructor = __webpack_require__(36);
+var fails = __webpack_require__(4);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+var $slice = [].slice;
+
+var FORCED = fails(function () {
+ // eslint-disable-next-line no-undef
+ new Int8Array(1).slice();
+});
+
+// `%TypedArray%.prototype.slice` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.slice
+exportTypedArrayMethod('slice', function slice(start, end) {
+ var list = $slice.call(aTypedArray(this), start, end);
+ var C = speciesConstructor(this, this.constructor);
+ var index = 0;
+ var length = list.length;
+ var result = new (aTypedArrayConstructor(C))(length);
+ while (length > index) result[index] = list[index++];
+ return result;
+}, FORCED);
+
+
+/***/ }),
+/* 81 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var $some = __webpack_require__(20).some;
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.some` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.some
+exportTypedArrayMethod('some', function some(callbackfn /* , thisArg */) {
+ return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+});
+
+
+/***/ }),
+/* 82 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+var $sort = [].sort;
+
+// `%TypedArray%.prototype.sort` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort
+exportTypedArrayMethod('sort', function sort(comparefn) {
+ return $sort.call(aTypedArray(this), comparefn);
+});
+
+
+/***/ }),
+/* 83 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var ArrayBufferViewCore = __webpack_require__(5);
+var toLength = __webpack_require__(8);
+var toAbsoluteIndex = __webpack_require__(43);
+var speciesConstructor = __webpack_require__(36);
+
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+
+// `%TypedArray%.prototype.subarray` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.subarray
+exportTypedArrayMethod('subarray', function subarray(begin, end) {
+ var O = aTypedArray(this);
+ var length = O.length;
+ var beginIndex = toAbsoluteIndex(begin, length);
+ return new (speciesConstructor(O, O.constructor))(
+ O.buffer,
+ O.byteOffset + beginIndex * O.BYTES_PER_ELEMENT,
+ toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - beginIndex)
+ );
+});
+
+
+/***/ }),
+/* 84 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var global = __webpack_require__(3);
+var ArrayBufferViewCore = __webpack_require__(5);
+var fails = __webpack_require__(4);
+
+var Int8Array = global.Int8Array;
+var aTypedArray = ArrayBufferViewCore.aTypedArray;
+var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
+var $toLocaleString = [].toLocaleString;
+var $slice = [].slice;
+
+// iOS Safari 6.x fails here
+var TO_LOCALE_STRING_BUG = !!Int8Array && fails(function () {
+ $toLocaleString.call(new Int8Array(1));
+});
+
+var FORCED = fails(function () {
+ return [1, 2].toLocaleString() != new Int8Array([1, 2]).toLocaleString();
+}) || !fails(function () {
+ Int8Array.prototype.toLocaleString.call([1, 2]);
+});
+
+// `%TypedArray%.prototype.toLocaleString` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tolocalestring
+exportTypedArrayMethod('toLocaleString', function toLocaleString() {
+ return $toLocaleString.apply(TO_LOCALE_STRING_BUG ? $slice.call(aTypedArray(this)) : aTypedArray(this), arguments);
+}, FORCED);
+
+
+/***/ }),
+/* 85 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var exportTypedArrayMethod = __webpack_require__(5).exportTypedArrayMethod;
+var fails = __webpack_require__(4);
+var global = __webpack_require__(3);
+
+var Uint8Array = global.Uint8Array;
+var Uint8ArrayPrototype = Uint8Array && Uint8Array.prototype || {};
+var arrayToString = [].toString;
+var arrayJoin = [].join;
+
+if (fails(function () { arrayToString.call({}); })) {
+ arrayToString = function toString() {
+ return arrayJoin.call(this);
+ };
+}
+
+var IS_NOT_ARRAY_METHOD = Uint8ArrayPrototype.toString != arrayToString;
+
+// `%TypedArray%.prototype.toString` method
+// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tostring
+exportTypedArrayMethod('toString', arrayToString, IS_NOT_ARRAY_METHOD);
+
+
+/***/ }),
+/* 86 */
/***/ (function(module, exports) {
if (typeof Object.create === 'function') {
@@ -4865,13 +6317,13 @@ if (typeof Object.create === 'function') {
/***/ }),
-/* 47 */
+/* 87 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -4998,13 +6450,13 @@ if (typeof Object.create === 'function') {
}));
/***/ }),
-/* 48 */
+/* 88 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -5264,7 +6716,7 @@ if (typeof Object.create === 'function') {
}));
/***/ }),
-/* 49 */
+/* 89 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
@@ -5273,7 +6725,7 @@ if (typeof Object.create === 'function') {
__hasProp = {}.hasOwnProperty,
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
- DecodeStream = __webpack_require__(107);
+ DecodeStream = __webpack_require__(170);
NumberT = (function() {
function NumberT(type, endian) {
@@ -5376,44 +6828,142 @@ if (typeof Object.create === 'function') {
/***/ }),
-/* 50 */
+/* 90 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.13 ToObject(argument)
-var defined = __webpack_require__(112);
+var defined = __webpack_require__(174);
module.exports = function (it) {
return Object(defined(it));
};
/***/ }),
-/* 51 */
+/* 91 */
/***/ (function(module, exports, __webpack_require__) {
-// 7.1.1 ToPrimitive(input [, PreferredType])
-var isObject = __webpack_require__(18);
-// instead of the ES6 spec version, we didn't implement @@toPrimitive case
-// and the second argument - flag - preferred type is a string
-module.exports = function (it, S) {
- if (!isObject(it)) return it;
- var fn, val;
- if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
- if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
- if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
- throw TypeError("Can't convert object to primitive value");
+"use strict";
+
+var $at = __webpack_require__(433)(true);
+
+// 21.1.3.27 String.prototype[@@iterator]()
+__webpack_require__(179)(String, 'String', function (iterated) {
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+// 21.1.5.2.1 %StringIteratorPrototype%.next()
+}, function () {
+ var O = this._t;
+ var index = this._i;
+ var point;
+ if (index >= O.length) return { value: undefined, done: true };
+ point = $at(O, index);
+ this._i += point.length;
+ return { value: point, done: false };
+});
+
+
+/***/ }),
+/* 92 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__(4);
+var classof = __webpack_require__(41);
+
+var split = ''.split;
+
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
+module.exports = fails(function () {
+ // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
+ // eslint-disable-next-line no-prototype-builtins
+ return !Object('z').propertyIsEnumerable(0);
+}) ? function (it) {
+ return classof(it) == 'String' ? split.call(it, '') : Object(it);
+} : Object;
+
+
+/***/ }),
+/* 93 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toIndexedObject = __webpack_require__(27);
+var toLength = __webpack_require__(8);
+var toAbsoluteIndex = __webpack_require__(43);
+
+// `Array.prototype.{ indexOf, includes }` methods implementation
+var createMethod = function (IS_INCLUDES) {
+ return function ($this, el, fromIndex) {
+ var O = toIndexedObject($this);
+ var length = toLength(O.length);
+ var index = toAbsoluteIndex(fromIndex, length);
+ var value;
+ // Array#includes uses SameValueZero equality algorithm
+ // eslint-disable-next-line no-self-compare
+ if (IS_INCLUDES && el != el) while (length > index) {
+ value = O[index++];
+ // eslint-disable-next-line no-self-compare
+ if (value != value) return true;
+ // Array#indexOf ignores holes, Array#includes - not
+ } else for (;length > index; index++) {
+ if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
+ } return !IS_INCLUDES && -1;
+ };
+};
+
+module.exports = {
+ // `Array.prototype.includes` method
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
+ includes: createMethod(true),
+ // `Array.prototype.indexOf` method
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
+ indexOf: createMethod(false)
};
/***/ }),
-/* 52 */
+/* 94 */
/***/ (function(module, exports, __webpack_require__) {
+var internalObjectKeys = __webpack_require__(204);
+var enumBugKeys = __webpack_require__(143);
+
+// `Object.keys` method
+// https://tc39.es/ecma262/#sec-object.keys
+module.exports = Object.keys || function keys(O) {
+ return internalObjectKeys(O, enumBugKeys);
+};
+
+
+/***/ }),
+/* 95 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var defineProperty = __webpack_require__(16).f;
+var has = __webpack_require__(15);
+var wellKnownSymbol = __webpack_require__(6);
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+
+module.exports = function (it, TAG, STATIC) {
+ if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
+ defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });
+ }
+};
+
+
+/***/ }),
+/* 96 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var aFunction = __webpack_require__(44);
+
// optional / simple context binding
-var aFunction = __webpack_require__(136);
module.exports = function (fn, that, length) {
aFunction(fn);
if (that === undefined) return fn;
switch (length) {
+ case 0: return function () {
+ return fn.call(that);
+ };
case 1: return function (a) {
return fn.call(that, a);
};
@@ -5431,44 +6981,14 @@ module.exports = function (fn, that, length) {
/***/ }),
-/* 53 */
+/* 97 */
/***/ (function(module, exports) {
-var toString = {}.toString;
-
-module.exports = function (it) {
- return toString.call(it).slice(8, -1);
-};
+module.exports = {};
/***/ }),
-/* 54 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var toInteger = __webpack_require__(31);
-var max = Math.max;
-var min = Math.min;
-module.exports = function (index, length) {
- index = toInteger(index);
- return index < 0 ? max(index + length, 0) : min(index, length);
-};
-
-
-/***/ }),
-/* 55 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
-var $keys = __webpack_require__(138);
-var hiddenKeys = __webpack_require__(88).concat('length', 'prototype');
-
-exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
- return $keys(O, hiddenKeys);
-};
-
-
-/***/ }),
-/* 56 */
+/* 98 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(Buffer) {// Copyright Joyent, Inc. and other Node contributors.
@@ -5579,10 +7099,21 @@ function objectToString(o) {
return Object.prototype.toString.call(o);
}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 57 */
+/* 99 */
+/***/ (function(module, exports) {
+
+var toString = {}.toString;
+
+module.exports = function (it) {
+ return toString.call(it).slice(8, -1);
+};
+
+
+/***/ }),
+/* 100 */
/***/ (function(module, exports) {
module.exports = function (bitmap, value) {
@@ -5596,19 +7127,61 @@ module.exports = function (bitmap, value) {
/***/ }),
-/* 58 */
+/* 101 */
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+ if (typeof it != 'function') throw TypeError(it + ' is not a function!');
+ return it;
+};
+
+
+/***/ }),
+/* 102 */
+/***/ (function(module, exports, __webpack_require__) {
+
+__webpack_require__(428);
+var global = __webpack_require__(17);
+var hide = __webpack_require__(39);
+var Iterators = __webpack_require__(103);
+var TO_STRING_TAG = __webpack_require__(21)('toStringTag');
+
+var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
+ 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
+ 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
+ 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
+ 'TextTrackList,TouchList').split(',');
+
+for (var i = 0; i < DOMIterables.length; i++) {
+ var NAME = DOMIterables[i];
+ var Collection = global[NAME];
+ var proto = Collection && Collection.prototype;
+ if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
+ Iterators[NAME] = Iterators.Array;
+}
+
+
+/***/ }),
+/* 103 */
/***/ (function(module, exports) {
module.exports = {};
/***/ }),
-/* 59 */
+/* 104 */
+/***/ (function(module, exports) {
+
+module.exports = true;
+
+
+/***/ }),
+/* 105 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.14 / 15.2.3.14 Object.keys(O)
-var $keys = __webpack_require__(186);
-var enumBugKeys = __webpack_require__(120);
+var $keys = __webpack_require__(259);
+var enumBugKeys = __webpack_require__(183);
module.exports = Object.keys || function keys(O) {
return $keys(O, enumBugKeys);
@@ -5616,61 +7189,12 @@ module.exports = Object.keys || function keys(O) {
/***/ }),
-/* 60 */
+/* 106 */
/***/ (function(module, exports, __webpack_require__) {
-"use strict";
-
-var $at = __webpack_require__(343)(true);
-
-// 21.1.3.27 String.prototype[@@iterator]()
-__webpack_require__(116)(String, 'String', function (iterated) {
- this._t = String(iterated); // target
- this._i = 0; // next index
-// 21.1.5.2.1 %StringIteratorPrototype%.next()
-}, function () {
- var O = this._t;
- var index = this._i;
- var point;
- if (index >= O.length) return { value: undefined, done: true };
- point = $at(O, index);
- this._i += point.length;
- return { value: point, done: false };
-});
-
-
-/***/ }),
-/* 61 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var core = __webpack_require__(39);
-var global = __webpack_require__(8);
-var SHARED = '__core-js_shared__';
-var store = global[SHARED] || (global[SHARED] = {});
-
-(module.exports = function (key, value) {
- return store[key] || (store[key] = value !== undefined ? value : {});
-})('versions', []).push({
- version: core.version,
- mode: __webpack_require__(41) ? 'pure' : 'global',
- copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
-});
-
-
-/***/ }),
-/* 62 */
-/***/ (function(module, exports) {
-
-exports.f = {}.propertyIsEnumerable;
-
-
-/***/ }),
-/* 63 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var def = __webpack_require__(11).f;
-var has = __webpack_require__(24);
-var TAG = __webpack_require__(3)('toStringTag');
+var def = __webpack_require__(26).f;
+var has = __webpack_require__(51);
+var TAG = __webpack_require__(21)('toStringTag');
module.exports = function (it, tag, stat) {
if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
@@ -5678,146 +7202,542 @@ module.exports = function (it, tag, stat) {
/***/ }),
-/* 64 */
+/* 107 */
/***/ (function(module, exports, __webpack_require__) {
-// getting tag from 19.1.3.6 Object.prototype.toString()
-var cof = __webpack_require__(53);
-var TAG = __webpack_require__(3)('toStringTag');
+var ctx = __webpack_require__(32);
+var call = __webpack_require__(266);
+var isArrayIter = __webpack_require__(267);
+var anObject = __webpack_require__(29);
+var toLength = __webpack_require__(130);
+var getIterFn = __webpack_require__(184);
+var BREAK = {};
+var RETURN = {};
+var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
+ var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
+ var f = ctx(fn, that, entries ? 2 : 1);
+ var index = 0;
+ var length, step, iterator, result;
+ if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
+ // fast case for arrays with default iterator
+ if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
+ result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ if (result === BREAK || result === RETURN) return result;
+ } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
+ result = call(iterator, f, step.value, entries);
+ if (result === BREAK || result === RETURN) return result;
+ }
+};
+exports.BREAK = BREAK;
+exports.RETURN = RETURN;
+
+
+/***/ }),
+/* 108 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var keys = __webpack_require__(273);
+var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
+
+var toStr = Object.prototype.toString;
+var concat = Array.prototype.concat;
+var origDefineProperty = Object.defineProperty;
+
+var isFunction = function (fn) {
+ return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
+};
+
+var arePropertyDescriptorsSupported = function () {
+ var obj = {};
+ try {
+ origDefineProperty(obj, 'x', { enumerable: false, value: obj });
+ // eslint-disable-next-line no-unused-vars, no-restricted-syntax
+ for (var _ in obj) { // jscs:ignore disallowUnusedVariables
+ return false;
+ }
+ return obj.x === obj;
+ } catch (e) { /* this is IE 8. */
+ return false;
+ }
+};
+var supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();
+
+var defineProperty = function (object, name, value, predicate) {
+ if (name in object && (!isFunction(predicate) || !predicate())) {
+ return;
+ }
+ if (supportsDescriptors) {
+ origDefineProperty(object, name, {
+ configurable: true,
+ enumerable: false,
+ value: value,
+ writable: true
+ });
+ } else {
+ object[name] = value;
+ }
+};
+
+var defineProperties = function (object, map) {
+ var predicates = arguments.length > 2 ? arguments[2] : {};
+ var props = keys(map);
+ if (hasSymbols) {
+ props = concat.call(props, Object.getOwnPropertySymbols(map));
+ }
+ for (var i = 0; i < props.length; i += 1) {
+ defineProperty(object, props[i], map[props[i]], predicates[props[i]]);
+ }
+};
+
+defineProperties.supportsDescriptors = !!supportsDescriptors;
+
+module.exports = defineProperties;
+
+
+/***/ }),
+/* 109 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var aFunction = __webpack_require__(44);
+
+var PromiseCapability = function (C) {
+ var resolve, reject;
+ this.promise = new C(function ($$resolve, $$reject) {
+ if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve);
+ this.reject = aFunction(reject);
+};
+
+// 25.4.1.5 NewPromiseCapability(C)
+module.exports.f = function (C) {
+ return new PromiseCapability(C);
+};
+
+
+/***/ }),
+/* 110 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
+var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
+
+// Nashorn ~ JDK8 bug
+var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
+
+// `Object.prototype.propertyIsEnumerable` method implementation
+// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
+exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
+ var descriptor = getOwnPropertyDescriptor(this, V);
+ return !!descriptor && descriptor.enumerable;
+} : nativePropertyIsEnumerable;
+
+
+/***/ }),
+/* 111 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var shared = __webpack_require__(142);
+var uid = __webpack_require__(112);
+
+var keys = shared('keys');
+
+module.exports = function (key) {
+ return keys[key] || (keys[key] = uid(key));
+};
+
+
+/***/ }),
+/* 112 */
+/***/ (function(module, exports) {
+
+var id = 0;
+var postfix = Math.random();
+
+module.exports = function (key) {
+ return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
+};
+
+
+/***/ }),
+/* 113 */
+/***/ (function(module, exports) {
+
+module.exports = {};
+
+
+/***/ }),
+/* 114 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+
+module.exports = global;
+
+
+/***/ }),
+/* 115 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var classof = __webpack_require__(41);
+
+// `IsArray` abstract operation
+// https://tc39.es/ecma262/#sec-isarray
+module.exports = Array.isArray || function isArray(arg) {
+ return classof(arg) == 'Array';
+};
+
+
+/***/ }),
+/* 116 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__(4);
+var wellKnownSymbol = __webpack_require__(6);
+var V8_VERSION = __webpack_require__(148);
+
+var SPECIES = wellKnownSymbol('species');
+
+module.exports = function (METHOD_NAME) {
+ // We can't use this feature detection in V8 since it causes
+ // deoptimization and serious performance degradation
+ // https://github.com/zloirock/core-js/issues/677
+ return V8_VERSION >= 51 || !fails(function () {
+ var array = [];
+ var constructor = array.constructor = {};
+ constructor[SPECIES] = function () {
+ return { foo: 1 };
+ };
+ return array[METHOD_NAME](Boolean).foo !== 1;
+ });
+};
+
+
+/***/ }),
+/* 117 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__(154);
+var classofRaw = __webpack_require__(41);
+var wellKnownSymbol = __webpack_require__(6);
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
// ES3 wrong here
-var ARG = cof(function () { return arguments; }()) == 'Arguments';
+var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
try {
return it[key];
- } catch (e) { /* empty */ }
+ } catch (error) { /* empty */ }
};
-module.exports = function (it) {
- var O, T, B;
+// getting tag from ES6+ `Object.prototype.toString`
+module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
+ var O, tag, result;
return it === undefined ? 'Undefined' : it === null ? 'Null'
// @@toStringTag case
- : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
+ : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
// builtinTag case
- : ARG ? cof(O)
+ : CORRECT_ARGUMENTS ? classofRaw(O)
// ES3 arguments fallback
- : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+ : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
};
/***/ }),
-/* 65 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
-var anObject = __webpack_require__(12);
-var dPs = __webpack_require__(227);
-var enumBugKeys = __webpack_require__(88);
-var IE_PROTO = __webpack_require__(87)('IE_PROTO');
-var Empty = function () { /* empty */ };
-var PROTOTYPE = 'prototype';
-
-// Create object with fake `null` prototype: use iframe Object with cleared prototype
-var createDict = function () {
- // Thrash, waste and sodomy: IE GC bug
- var iframe = __webpack_require__(135)('iframe');
- var i = enumBugKeys.length;
- var lt = '<';
- var gt = '>';
- var iframeDocument;
- iframe.style.display = 'none';
- __webpack_require__(228).appendChild(iframe);
- iframe.src = 'javascript:'; // eslint-disable-line no-script-url
- // createDict = iframe.contentWindow.Object;
- // html.removeChild(iframe);
- iframeDocument = iframe.contentWindow.document;
- iframeDocument.open();
- iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
- iframeDocument.close();
- createDict = iframeDocument.F;
- while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
- return createDict();
-};
-
-module.exports = Object.create || function create(O, Properties) {
- var result;
- if (O !== null) {
- Empty[PROTOTYPE] = anObject(O);
- result = new Empty();
- Empty[PROTOTYPE] = null;
- // add "__proto__" for Object.getPrototypeOf polyfill
- result[IE_PROTO] = O;
- } else result = createDict();
- return Properties === undefined ? result : dPs(result, Properties);
-};
-
-
-/***/ }),
-/* 66 */
+/* 118 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var addToUnscopables = __webpack_require__(91);
-var step = __webpack_require__(232);
-var Iterators = __webpack_require__(45);
-var toIObject = __webpack_require__(43);
+var $ = __webpack_require__(1);
+var exec = __webpack_require__(119);
-// 22.1.3.4 Array.prototype.entries()
-// 22.1.3.13 Array.prototype.keys()
-// 22.1.3.29 Array.prototype.values()
-// 22.1.3.30 Array.prototype[@@iterator]()
-module.exports = __webpack_require__(150)(Array, 'Array', function (iterated, kind) {
- this._t = toIObject(iterated); // target
- this._i = 0; // next index
- this._k = kind; // kind
-// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
-}, function () {
- var O = this._t;
- var kind = this._k;
- var index = this._i++;
- if (!O || index >= O.length) {
- this._t = undefined;
- return step(1);
- }
- if (kind == 'keys') return step(0, index);
- if (kind == 'values') return step(0, O[index]);
- return step(0, [index, O[index]]);
-}, 'values');
-
-// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
-Iterators.Arguments = Iterators.Array;
-
-addToUnscopables('keys');
-addToUnscopables('values');
-addToUnscopables('entries');
+// `RegExp.prototype.exec` method
+// https://tc39.es/ecma262/#sec-regexp.prototype.exec
+$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
+ exec: exec
+});
/***/ }),
-/* 67 */
+/* 119 */
/***/ (function(module, exports, __webpack_require__) {
-var pIE = __webpack_require__(62);
-var createDesc = __webpack_require__(40);
-var toIObject = __webpack_require__(43);
-var toPrimitive = __webpack_require__(51);
-var has = __webpack_require__(24);
-var IE8_DOM_DEFINE = __webpack_require__(134);
-var gOPD = Object.getOwnPropertyDescriptor;
+"use strict";
-exports.f = __webpack_require__(9) ? gOPD : function getOwnPropertyDescriptor(O, P) {
- O = toIObject(O);
- P = toPrimitive(P, true);
- if (IE8_DOM_DEFINE) try {
- return gOPD(O, P);
- } catch (e) { /* empty */ }
- if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
+var regexpFlags = __webpack_require__(230);
+var stickyHelpers = __webpack_require__(333);
+
+var nativeExec = RegExp.prototype.exec;
+// This always refers to the native implementation, because the
+// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
+// which loads this file before patching the method.
+var nativeReplace = String.prototype.replace;
+
+var patchedExec = nativeExec;
+
+var UPDATES_LAST_INDEX_WRONG = (function () {
+ var re1 = /a/;
+ var re2 = /b*/g;
+ nativeExec.call(re1, 'a');
+ nativeExec.call(re2, 'a');
+ return re1.lastIndex !== 0 || re2.lastIndex !== 0;
+})();
+
+var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;
+
+// nonparticipating capturing group, copied from es5-shim's String#split patch.
+var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
+
+var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;
+
+if (PATCH) {
+ patchedExec = function exec(str) {
+ var re = this;
+ var lastIndex, reCopy, match, i;
+ var sticky = UNSUPPORTED_Y && re.sticky;
+ var flags = regexpFlags.call(re);
+ var source = re.source;
+ var charsAdded = 0;
+ var strCopy = str;
+
+ if (sticky) {
+ flags = flags.replace('y', '');
+ if (flags.indexOf('g') === -1) {
+ flags += 'g';
+ }
+
+ strCopy = String(str).slice(re.lastIndex);
+ // Support anchored sticky behavior.
+ if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
+ source = '(?: ' + source + ')';
+ strCopy = ' ' + strCopy;
+ charsAdded++;
+ }
+ // ^(? + rx + ) is needed, in combination with some str slicing, to
+ // simulate the 'y' flag.
+ reCopy = new RegExp('^(?:' + source + ')', flags);
+ }
+
+ if (NPCG_INCLUDED) {
+ reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
+ }
+ if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
+
+ match = nativeExec.call(sticky ? reCopy : re, strCopy);
+
+ if (sticky) {
+ if (match) {
+ match.input = match.input.slice(charsAdded);
+ match[0] = match[0].slice(charsAdded);
+ match.index = re.lastIndex;
+ re.lastIndex += match[0].length;
+ } else re.lastIndex = 0;
+ } else if (UPDATES_LAST_INDEX_WRONG && match) {
+ re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
+ }
+ if (NPCG_INCLUDED && match && match.length > 1) {
+ // Fix browsers whose `exec` methods don't consistently return `undefined`
+ // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
+ nativeReplace.call(match[0], reCopy, function () {
+ for (i = 1; i < arguments.length - 2; i++) {
+ if (arguments[i] === undefined) match[i] = undefined;
+ }
+ });
+ }
+
+ return match;
+ };
+}
+
+module.exports = patchedExec;
+
+
+/***/ }),
+/* 120 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+var DOMIterables = __webpack_require__(240);
+var ArrayIteratorMethods = __webpack_require__(28);
+var createNonEnumerableProperty = __webpack_require__(18);
+var wellKnownSymbol = __webpack_require__(6);
+
+var ITERATOR = wellKnownSymbol('iterator');
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+var ArrayValues = ArrayIteratorMethods.values;
+
+for (var COLLECTION_NAME in DOMIterables) {
+ var Collection = global[COLLECTION_NAME];
+ var CollectionPrototype = Collection && Collection.prototype;
+ if (CollectionPrototype) {
+ // some Chrome versions have non-configurable methods on DOMTokenList
+ if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
+ createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
+ } catch (error) {
+ CollectionPrototype[ITERATOR] = ArrayValues;
+ }
+ if (!CollectionPrototype[TO_STRING_TAG]) {
+ createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
+ }
+ if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
+ // some Chrome versions have non-configurable methods on DOMTokenList
+ if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
+ createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
+ } catch (error) {
+ CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
+ }
+ }
+ }
+}
+
+
+/***/ }),
+/* 121 */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Copyright Joyent, Inc. and other Node contributors.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to permit
+// persons to whom the Software is furnished to do so, subject to the
+// following conditions:
+//
+// The above copyright notice and this permission notice shall be included
+// in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
+// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+// USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+module.exports = Stream;
+
+var EE = __webpack_require__(122).EventEmitter;
+var inherits = __webpack_require__(86);
+
+inherits(Stream, EE);
+Stream.Readable = __webpack_require__(165);
+Stream.Writable = __webpack_require__(352);
+Stream.Duplex = __webpack_require__(353);
+Stream.Transform = __webpack_require__(354);
+Stream.PassThrough = __webpack_require__(355);
+
+// Backwards-compat with node 0.4.x
+Stream.Stream = Stream;
+
+
+
+// old-style streams. Note that the pipe method (the only relevant
+// part of this class) is overridden in the Readable class.
+
+function Stream() {
+ EE.call(this);
+}
+
+Stream.prototype.pipe = function(dest, options) {
+ var source = this;
+
+ function ondata(chunk) {
+ if (dest.writable) {
+ if (false === dest.write(chunk) && source.pause) {
+ source.pause();
+ }
+ }
+ }
+
+ source.on('data', ondata);
+
+ function ondrain() {
+ if (source.readable && source.resume) {
+ source.resume();
+ }
+ }
+
+ dest.on('drain', ondrain);
+
+ // If the 'end' option is not supplied, dest.end() will be called when
+ // source gets the 'end' or 'close' events. Only dest.end() once.
+ if (!dest._isStdio && (!options || options.end !== false)) {
+ source.on('end', onend);
+ source.on('close', onclose);
+ }
+
+ var didOnEnd = false;
+ function onend() {
+ if (didOnEnd) return;
+ didOnEnd = true;
+
+ dest.end();
+ }
+
+
+ function onclose() {
+ if (didOnEnd) return;
+ didOnEnd = true;
+
+ if (typeof dest.destroy === 'function') dest.destroy();
+ }
+
+ // don't leave dangling pipes when there are errors.
+ function onerror(er) {
+ cleanup();
+ if (EE.listenerCount(this, 'error') === 0) {
+ throw er; // Unhandled stream error in pipe.
+ }
+ }
+
+ source.on('error', onerror);
+ dest.on('error', onerror);
+
+ // remove all the event listeners that were added.
+ function cleanup() {
+ source.removeListener('data', ondata);
+ dest.removeListener('drain', ondrain);
+
+ source.removeListener('end', onend);
+ source.removeListener('close', onclose);
+
+ source.removeListener('error', onerror);
+ dest.removeListener('error', onerror);
+
+ source.removeListener('end', cleanup);
+ source.removeListener('close', cleanup);
+
+ dest.removeListener('close', cleanup);
+ }
+
+ source.on('end', cleanup);
+ source.on('close', cleanup);
+
+ dest.on('close', cleanup);
+
+ dest.emit('pipe', source);
+
+ // Allow for unix-like usage: A.pipe(B).pipe(C)
+ return dest;
};
/***/ }),
-/* 68 */
+/* 122 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -5877,6 +7797,7 @@ function EventEmitter() {
EventEmitter.init.call(this);
}
module.exports = EventEmitter;
+module.exports.once = once;
// Backwards-compat with node 0.10.x
EventEmitter.EventEmitter = EventEmitter;
@@ -6268,9 +8189,38 @@ function unwrapListeners(arr) {
return ret;
}
+function once(emitter, name) {
+ return new Promise(function (resolve, reject) {
+ function eventListener() {
+ if (errorListener !== undefined) {
+ emitter.removeListener('error', errorListener);
+ }
+ resolve([].slice.call(arguments));
+ };
+ var errorListener;
+
+ // Adding an error listener is not optional because
+ // if an error is thrown on an event emitter we cannot
+ // guarantee that the actual event we are waiting will
+ // be fired. The result could be a silent way to create
+ // memory or file descriptor leaks, which is something
+ // we should avoid.
+ if (name !== 'error') {
+ errorListener = function errorListener(err) {
+ emitter.removeListener(name, eventListener);
+ reject(err);
+ };
+
+ emitter.once('error', errorListener);
+ }
+
+ emitter.once(name, eventListener);
+ });
+}
+
/***/ }),
-/* 69 */
+/* 123 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -6320,14 +8270,14 @@ function nextTick(fn, arg1, arg2, arg3) {
}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(25)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(47)))
/***/ }),
-/* 70 */
+/* 124 */
/***/ (function(module, exports, __webpack_require__) {
/* eslint-disable node/no-deprecated-api */
-var buffer = __webpack_require__(4)
+var buffer = __webpack_require__(10)
var Buffer = buffer.Buffer
// alternative to using Object.keys for old browsers
@@ -6391,7 +8341,309 @@ SafeBuffer.allocUnsafeSlow = function (size) {
/***/ }),
-/* 71 */
+/* 125 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+// Copyright Joyent, Inc. and other Node contributors.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to permit
+// persons to whom the Software is furnished to do so, subject to the
+// following conditions:
+//
+// The above copyright notice and this permission notice shall be included
+// in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
+// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+// USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+
+/**/
+
+var Buffer = __webpack_require__(124).Buffer;
+/**/
+
+var isEncoding = Buffer.isEncoding || function (encoding) {
+ encoding = '' + encoding;
+ switch (encoding && encoding.toLowerCase()) {
+ case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':
+ return true;
+ default:
+ return false;
+ }
+};
+
+function _normalizeEncoding(enc) {
+ if (!enc) return 'utf8';
+ var retried;
+ while (true) {
+ switch (enc) {
+ case 'utf8':
+ case 'utf-8':
+ return 'utf8';
+ case 'ucs2':
+ case 'ucs-2':
+ case 'utf16le':
+ case 'utf-16le':
+ return 'utf16le';
+ case 'latin1':
+ case 'binary':
+ return 'latin1';
+ case 'base64':
+ case 'ascii':
+ case 'hex':
+ return enc;
+ default:
+ if (retried) return; // undefined
+ enc = ('' + enc).toLowerCase();
+ retried = true;
+ }
+ }
+};
+
+// Do not cache `Buffer.isEncoding` when checking encoding names as some
+// modules monkey-patch it to support additional encodings
+function normalizeEncoding(enc) {
+ var nenc = _normalizeEncoding(enc);
+ if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);
+ return nenc || enc;
+}
+
+// StringDecoder provides an interface for efficiently splitting a series of
+// buffers into a series of JS strings without breaking apart multi-byte
+// characters.
+exports.StringDecoder = StringDecoder;
+function StringDecoder(encoding) {
+ this.encoding = normalizeEncoding(encoding);
+ var nb;
+ switch (this.encoding) {
+ case 'utf16le':
+ this.text = utf16Text;
+ this.end = utf16End;
+ nb = 4;
+ break;
+ case 'utf8':
+ this.fillLast = utf8FillLast;
+ nb = 4;
+ break;
+ case 'base64':
+ this.text = base64Text;
+ this.end = base64End;
+ nb = 3;
+ break;
+ default:
+ this.write = simpleWrite;
+ this.end = simpleEnd;
+ return;
+ }
+ this.lastNeed = 0;
+ this.lastTotal = 0;
+ this.lastChar = Buffer.allocUnsafe(nb);
+}
+
+StringDecoder.prototype.write = function (buf) {
+ if (buf.length === 0) return '';
+ var r;
+ var i;
+ if (this.lastNeed) {
+ r = this.fillLast(buf);
+ if (r === undefined) return '';
+ i = this.lastNeed;
+ this.lastNeed = 0;
+ } else {
+ i = 0;
+ }
+ if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);
+ return r || '';
+};
+
+StringDecoder.prototype.end = utf8End;
+
+// Returns only complete characters in a Buffer
+StringDecoder.prototype.text = utf8Text;
+
+// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer
+StringDecoder.prototype.fillLast = function (buf) {
+ if (this.lastNeed <= buf.length) {
+ buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);
+ return this.lastChar.toString(this.encoding, 0, this.lastTotal);
+ }
+ buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);
+ this.lastNeed -= buf.length;
+};
+
+// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a
+// continuation byte. If an invalid byte is detected, -2 is returned.
+function utf8CheckByte(byte) {
+ if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;
+ return byte >> 6 === 0x02 ? -1 : -2;
+}
+
+// Checks at most 3 bytes at the end of a Buffer in order to detect an
+// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)
+// needed to complete the UTF-8 character (if applicable) are returned.
+function utf8CheckIncomplete(self, buf, i) {
+ var j = buf.length - 1;
+ if (j < i) return 0;
+ var nb = utf8CheckByte(buf[j]);
+ if (nb >= 0) {
+ if (nb > 0) self.lastNeed = nb - 1;
+ return nb;
+ }
+ if (--j < i || nb === -2) return 0;
+ nb = utf8CheckByte(buf[j]);
+ if (nb >= 0) {
+ if (nb > 0) self.lastNeed = nb - 2;
+ return nb;
+ }
+ if (--j < i || nb === -2) return 0;
+ nb = utf8CheckByte(buf[j]);
+ if (nb >= 0) {
+ if (nb > 0) {
+ if (nb === 2) nb = 0;else self.lastNeed = nb - 3;
+ }
+ return nb;
+ }
+ return 0;
+}
+
+// Validates as many continuation bytes for a multi-byte UTF-8 character as
+// needed or are available. If we see a non-continuation byte where we expect
+// one, we "replace" the validated continuation bytes we've seen so far with
+// a single UTF-8 replacement character ('\ufffd'), to match v8's UTF-8 decoding
+// behavior. The continuation byte check is included three times in the case
+// where all of the continuation bytes for a character exist in the same buffer.
+// It is also done this way as a slight performance increase instead of using a
+// loop.
+function utf8CheckExtraBytes(self, buf, p) {
+ if ((buf[0] & 0xC0) !== 0x80) {
+ self.lastNeed = 0;
+ return '\ufffd';
+ }
+ if (self.lastNeed > 1 && buf.length > 1) {
+ if ((buf[1] & 0xC0) !== 0x80) {
+ self.lastNeed = 1;
+ return '\ufffd';
+ }
+ if (self.lastNeed > 2 && buf.length > 2) {
+ if ((buf[2] & 0xC0) !== 0x80) {
+ self.lastNeed = 2;
+ return '\ufffd';
+ }
+ }
+ }
+}
+
+// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.
+function utf8FillLast(buf) {
+ var p = this.lastTotal - this.lastNeed;
+ var r = utf8CheckExtraBytes(this, buf, p);
+ if (r !== undefined) return r;
+ if (this.lastNeed <= buf.length) {
+ buf.copy(this.lastChar, p, 0, this.lastNeed);
+ return this.lastChar.toString(this.encoding, 0, this.lastTotal);
+ }
+ buf.copy(this.lastChar, p, 0, buf.length);
+ this.lastNeed -= buf.length;
+}
+
+// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a
+// partial character, the character's bytes are buffered until the required
+// number of bytes are available.
+function utf8Text(buf, i) {
+ var total = utf8CheckIncomplete(this, buf, i);
+ if (!this.lastNeed) return buf.toString('utf8', i);
+ this.lastTotal = total;
+ var end = buf.length - (total - this.lastNeed);
+ buf.copy(this.lastChar, 0, end);
+ return buf.toString('utf8', i, end);
+}
+
+// For UTF-8, a replacement character is added when ending on a partial
+// character.
+function utf8End(buf) {
+ var r = buf && buf.length ? this.write(buf) : '';
+ if (this.lastNeed) return r + '\ufffd';
+ return r;
+}
+
+// UTF-16LE typically needs two bytes per character, but even if we have an even
+// number of bytes available, we need to check if we end on a leading/high
+// surrogate. In that case, we need to wait for the next two bytes in order to
+// decode the last character properly.
+function utf16Text(buf, i) {
+ if ((buf.length - i) % 2 === 0) {
+ var r = buf.toString('utf16le', i);
+ if (r) {
+ var c = r.charCodeAt(r.length - 1);
+ if (c >= 0xD800 && c <= 0xDBFF) {
+ this.lastNeed = 2;
+ this.lastTotal = 4;
+ this.lastChar[0] = buf[buf.length - 2];
+ this.lastChar[1] = buf[buf.length - 1];
+ return r.slice(0, -1);
+ }
+ }
+ return r;
+ }
+ this.lastNeed = 1;
+ this.lastTotal = 2;
+ this.lastChar[0] = buf[buf.length - 1];
+ return buf.toString('utf16le', i, buf.length - 1);
+}
+
+// For UTF-16LE we do not explicitly append special replacement characters if we
+// end on a partial character, we simply let v8 handle that.
+function utf16End(buf) {
+ var r = buf && buf.length ? this.write(buf) : '';
+ if (this.lastNeed) {
+ var end = this.lastTotal - this.lastNeed;
+ return r + this.lastChar.toString('utf16le', 0, end);
+ }
+ return r;
+}
+
+function base64Text(buf, i) {
+ var n = (buf.length - i) % 3;
+ if (n === 0) return buf.toString('base64', i);
+ this.lastNeed = 3 - n;
+ this.lastTotal = 3;
+ if (n === 1) {
+ this.lastChar[0] = buf[buf.length - 1];
+ } else {
+ this.lastChar[0] = buf[buf.length - 2];
+ this.lastChar[1] = buf[buf.length - 1];
+ }
+ return buf.toString('base64', i, buf.length - n);
+}
+
+function base64End(buf) {
+ var r = buf && buf.length ? this.write(buf) : '';
+ if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);
+ return r;
+}
+
+// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)
+function simpleWrite(buf) {
+ return buf.toString(this.encoding);
+}
+
+function simpleEnd(buf) {
+ return buf && buf.length ? this.write(buf) : '';
+}
+
+/***/ }),
+/* 126 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -6503,13 +8755,13 @@ exports.setTyped(TYPED_OK);
/***/ }),
-/* 72 */
+/* 127 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -6805,66 +9057,34 @@ exports.setTyped(TYPED_OK);
}));
/***/ }),
-/* 73 */
+/* 128 */
/***/ (function(module, exports) {
exports.f = {}.propertyIsEnumerable;
/***/ }),
-/* 74 */
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__(337);
-var global = __webpack_require__(21);
-var hide = __webpack_require__(27);
-var Iterators = __webpack_require__(58);
-var TO_STRING_TAG = __webpack_require__(14)('toStringTag');
-
-var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
- 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
- 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
- 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
- 'TextTrackList,TouchList').split(',');
-
-for (var i = 0; i < DOMIterables.length; i++) {
- var NAME = DOMIterables[i];
- var Collection = global[NAME];
- var proto = Collection && Collection.prototype;
- if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
- Iterators[NAME] = Iterators.Array;
-}
-
-
-/***/ }),
-/* 75 */
-/***/ (function(module, exports) {
-
-module.exports = true;
-
-
-/***/ }),
-/* 76 */
+/* 129 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
-var anObject = __webpack_require__(28);
-var dPs = __webpack_require__(185);
-var enumBugKeys = __webpack_require__(120);
-var IE_PROTO = __webpack_require__(118)('IE_PROTO');
+var anObject = __webpack_require__(29);
+var dPs = __webpack_require__(258);
+var enumBugKeys = __webpack_require__(183);
+var IE_PROTO = __webpack_require__(181)('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';
// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
// Thrash, waste and sodomy: IE GC bug
- var iframe = __webpack_require__(181)('iframe');
+ var iframe = __webpack_require__(177)('iframe');
var i = enumBugKeys.length;
var lt = '<';
var gt = '>';
var iframeDocument;
iframe.style.display = 'none';
- __webpack_require__(341).appendChild(iframe);
+ __webpack_require__(261).appendChild(iframe);
iframe.src = 'javascript:'; // eslint-disable-line no-script-url
// createDict = iframe.contentWindow.Object;
// html.removeChild(iframe);
@@ -6891,11 +9111,11 @@ module.exports = Object.create || function create(O, Properties) {
/***/ }),
-/* 77 */
+/* 130 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.15 ToLength
-var toInteger = __webpack_require__(117);
+var toInteger = __webpack_require__(180);
var min = Math.min;
module.exports = function (it) {
return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
@@ -6903,7 +9123,7 @@ module.exports = function (it) {
/***/ }),
-/* 78 */
+/* 131 */
/***/ (function(module, exports) {
var id = 0;
@@ -6914,31 +9134,18 @@ module.exports = function (key) {
/***/ }),
-/* 79 */
+/* 132 */
/***/ (function(module, exports, __webpack_require__) {
-var def = __webpack_require__(17).f;
-var has = __webpack_require__(36);
-var TAG = __webpack_require__(14)('toStringTag');
-
-module.exports = function (it, tag, stat) {
- if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
-};
-
-
-/***/ }),
-/* 80 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var META = __webpack_require__(78)('meta');
-var isObject = __webpack_require__(20);
-var has = __webpack_require__(36);
-var setDesc = __webpack_require__(17).f;
+var META = __webpack_require__(131)('meta');
+var isObject = __webpack_require__(22);
+var has = __webpack_require__(51);
+var setDesc = __webpack_require__(26).f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
return true;
};
-var FREEZE = !__webpack_require__(37)(function () {
+var FREEZE = !__webpack_require__(52)(function () {
return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
@@ -6986,41 +9193,20 @@ var meta = module.exports = {
/***/ }),
-/* 81 */
-/***/ (function(module, exports, __webpack_require__) {
+/* 133 */
+/***/ (function(module, exports) {
-var ctx = __webpack_require__(38);
-var call = __webpack_require__(195);
-var isArrayIter = __webpack_require__(196);
-var anObject = __webpack_require__(28);
-var toLength = __webpack_require__(77);
-var getIterFn = __webpack_require__(121);
-var BREAK = {};
-var RETURN = {};
-var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
- var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
- var f = ctx(fn, that, entries ? 2 : 1);
- var index = 0;
- var length, step, iterator, result;
- if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
- // fast case for arrays with default iterator
- if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
- result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
- if (result === BREAK || result === RETURN) return result;
- } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
- result = call(iterator, f, step.value, entries);
- if (result === BREAK || result === RETURN) return result;
- }
-};
-exports.BREAK = BREAK;
-exports.RETURN = RETURN;
/***/ }),
-/* 82 */
+/* 134 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(140)('Uint32', 4, function (init) {
+var createTypedArrayConstructor = __webpack_require__(237);
+
+// `Uint32Array` constructor
+// https://tc39.es/ecma262/#sec-typedarray-objects
+createTypedArrayConstructor('Uint32', function (init) {
return function Uint32Array(data, byteOffset, length) {
return init(this, data, byteOffset, length);
};
@@ -7028,7 +9214,7 @@ __webpack_require__(140)('Uint32', 4, function (init) {
/***/ }),
-/* 83 */
+/* 135 */
/***/ (function(module, exports) {
var TINF_OK = 0;
@@ -7409,147 +9595,294 @@ module.exports = tinf_uncompress;
/***/ }),
-/* 84 */
+/* 136 */
/***/ (function(module, exports, __webpack_require__) {
-"use strict";
-/* WEBPACK VAR INJECTION */(function(Buffer, __dirname) {
-
-function VirtualFileSystem() {
- this.fileSystem = {};
- this.dataSystem = {};
-}
-
-VirtualFileSystem.prototype.readFileSync = function (filename, options) {
- filename = fixFilename(filename);
-
- var dataContent = this.dataSystem[filename];
- if (typeof dataContent === 'string' && options === 'utf8') {
- return dataContent;
- }
-
- if (dataContent) {
- return new Buffer(dataContent, typeof dataContent === 'string' ? 'base64' : undefined);
- }
-
- var content = this.fileSystem[filename];
- if (content) {
- return content;
- }
-
- throw 'File \'' + filename + '\' not found in virtual file system';
-};
-
-VirtualFileSystem.prototype.writeFileSync = function (filename, content) {
- this.fileSystem[fixFilename(filename)] = content;
-};
-
-VirtualFileSystem.prototype.bindFS = function (data) {
- this.dataSystem = data || {};
-};
-
-
-function fixFilename(filename) {
- if (filename.indexOf(__dirname) === 0) {
- filename = filename.substring(__dirname.length);
- }
-
- if (filename.indexOf('/') === 0) {
- filename = filename.substring(1);
- }
-
- return filename;
-}
-
-module.exports = new VirtualFileSystem();
+var anObject = __webpack_require__(11);
+var isArrayIteratorMethod = __webpack_require__(152);
+var toLength = __webpack_require__(8);
+var bind = __webpack_require__(96);
+var getIteratorMethod = __webpack_require__(153);
+var iteratorClose = __webpack_require__(215);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer, "/"))
-
-/***/ }),
-/* 85 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// fallback for non-array-like ES3 and non-enumerable old V8 strings
-var cof = __webpack_require__(53);
-// eslint-disable-next-line no-prototype-builtins
-module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
- return cof(it) == 'String' ? it.split('') : Object(it);
+var Result = function (stopped, result) {
+ this.stopped = stopped;
+ this.result = result;
};
+module.exports = function (iterable, unboundFunction, options) {
+ var that = options && options.that;
+ var AS_ENTRIES = !!(options && options.AS_ENTRIES);
+ var IS_ITERATOR = !!(options && options.IS_ITERATOR);
+ var INTERRUPTED = !!(options && options.INTERRUPTED);
+ var fn = bind(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);
+ var iterator, iterFn, index, length, result, next, step;
-/***/ }),
-/* 86 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// false -> Array#indexOf
-// true -> Array#includes
-var toIObject = __webpack_require__(43);
-var toLength = __webpack_require__(16);
-var toAbsoluteIndex = __webpack_require__(54);
-module.exports = function (IS_INCLUDES) {
- return function ($this, el, fromIndex) {
- var O = toIObject($this);
- var length = toLength(O.length);
- var index = toAbsoluteIndex(fromIndex, length);
- var value;
- // Array#includes uses SameValueZero equality algorithm
- // eslint-disable-next-line no-self-compare
- if (IS_INCLUDES && el != el) while (length > index) {
- value = O[index++];
- // eslint-disable-next-line no-self-compare
- if (value != value) return true;
- // Array#indexOf ignores holes, Array#includes - not
- } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
- if (O[index] === el) return IS_INCLUDES || index || 0;
- } return !IS_INCLUDES && -1;
+ var stop = function (condition) {
+ if (iterator) iteratorClose(iterator);
+ return new Result(true, condition);
};
+
+ var callFn = function (value) {
+ if (AS_ENTRIES) {
+ anObject(value);
+ return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);
+ } return INTERRUPTED ? fn(value, stop) : fn(value);
+ };
+
+ if (IS_ITERATOR) {
+ iterator = iterable;
+ } else {
+ iterFn = getIteratorMethod(iterable);
+ if (typeof iterFn != 'function') throw TypeError('Target is not iterable');
+ // optimisation for array iterators
+ if (isArrayIteratorMethod(iterFn)) {
+ for (index = 0, length = toLength(iterable.length); length > index; index++) {
+ result = callFn(iterable[index]);
+ if (result && result instanceof Result) return result;
+ } return new Result(false);
+ }
+ iterator = iterFn.call(iterable);
+ }
+
+ next = iterator.next;
+ while (!(step = next.call(iterator)).done) {
+ try {
+ result = callFn(step.value);
+ } catch (error) {
+ iteratorClose(iterator);
+ throw error;
+ }
+ if (typeof result == 'object' && result && result instanceof Result) return result;
+ } return new Result(false);
};
/***/ }),
-/* 87 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var shared = __webpack_require__(61)('keys');
-var uid = __webpack_require__(29);
-module.exports = function (key) {
- return shared[key] || (shared[key] = uid(key));
-};
-
-
-/***/ }),
-/* 88 */
+/* 137 */
/***/ (function(module, exports) {
-// IE 8- don't enum bug keys
-module.exports = (
- 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
-).split(',');
+module.exports = function (exec) {
+ try {
+ return { error: false, value: exec() };
+ } catch (error) {
+ return { error: true, value: error };
+ }
+};
/***/ }),
-/* 89 */
+/* 138 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+var isObject = __webpack_require__(14);
+
+var document = global.document;
+// typeof document.createElement is 'object' in old IE
+var EXISTS = isObject(document) && isObject(document.createElement);
+
+module.exports = function (it) {
+ return EXISTS ? document.createElement(it) : {};
+};
+
+
+/***/ }),
+/* 139 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+var createNonEnumerableProperty = __webpack_require__(18);
+
+module.exports = function (key, value) {
+ try {
+ createNonEnumerableProperty(global, key, value);
+ } catch (error) {
+ global[key] = value;
+ } return value;
+};
+
+
+/***/ }),
+/* 140 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var store = __webpack_require__(141);
+
+var functionToString = Function.toString;
+
+// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
+if (typeof store.inspectSource != 'function') {
+ store.inspectSource = function (it) {
+ return functionToString.call(it);
+ };
+}
+
+module.exports = store.inspectSource;
+
+
+/***/ }),
+/* 141 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+var setGlobal = __webpack_require__(139);
+
+var SHARED = '__core-js_shared__';
+var store = global[SHARED] || setGlobal(SHARED, {});
+
+module.exports = store;
+
+
+/***/ }),
+/* 142 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var IS_PURE = __webpack_require__(56);
+var store = __webpack_require__(141);
+
+(module.exports = function (key, value) {
+ return store[key] || (store[key] = value !== undefined ? value : {});
+})('versions', []).push({
+ version: '3.8.2',
+ mode: IS_PURE ? 'pure' : 'global',
+ copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
+});
+
+
+/***/ }),
+/* 143 */
+/***/ (function(module, exports) {
+
+// IE8- don't enum bug keys
+module.exports = [
+ 'constructor',
+ 'hasOwnProperty',
+ 'isPrototypeOf',
+ 'propertyIsEnumerable',
+ 'toLocaleString',
+ 'toString',
+ 'valueOf'
+];
+
+
+/***/ }),
+/* 144 */
/***/ (function(module, exports) {
exports.f = Object.getOwnPropertySymbols;
/***/ }),
-/* 90 */
+/* 145 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__(4);
+
+var replacement = /#|\.prototype\./;
+
+var isForced = function (feature, detection) {
+ var value = data[normalize(feature)];
+ return value == POLYFILL ? true
+ : value == NATIVE ? false
+ : typeof detection == 'function' ? fails(detection)
+ : !!detection;
+};
+
+var normalize = isForced.normalize = function (string) {
+ return String(string).replace(replacement, '.').toLowerCase();
+};
+
+var data = isForced.data = {};
+var NATIVE = isForced.NATIVE = 'N';
+var POLYFILL = isForced.POLYFILL = 'P';
+
+module.exports = isForced;
+
+
+/***/ }),
+/* 146 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__(4);
+
+module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
+ // Chrome 38 Symbol has incorrect toString conversion
+ // eslint-disable-next-line no-undef
+ return !String(Symbol());
+});
+
+
+/***/ }),
+/* 147 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var toPrimitive = __webpack_require__(55);
+var definePropertyModule = __webpack_require__(16);
+var createPropertyDescriptor = __webpack_require__(40);
+
+module.exports = function (object, key, value) {
+ var propertyKey = toPrimitive(key);
+ if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
+ else object[propertyKey] = value;
+};
+
+
+/***/ }),
+/* 148 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+var userAgent = __webpack_require__(149);
+
+var process = global.process;
+var versions = process && process.versions;
+var v8 = versions && versions.v8;
+var match, version;
+
+if (v8) {
+ match = v8.split('.');
+ version = match[0] + match[1];
+} else if (userAgent) {
+ match = userAgent.match(/Edge\/(\d+)/);
+ if (!match || match[1] >= 74) {
+ match = userAgent.match(/Chrome\/(\d+)/);
+ if (match) version = match[1];
+ }
+}
+
+module.exports = version && +version;
+
+
+/***/ }),
+/* 149 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__(34);
+
+module.exports = getBuiltIn('navigator', 'userAgent') || '';
+
+
+/***/ }),
+/* 150 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
var toObject = __webpack_require__(19);
-var toAbsoluteIndex = __webpack_require__(54);
-var toLength = __webpack_require__(16);
+var toAbsoluteIndex = __webpack_require__(43);
+var toLength = __webpack_require__(8);
+
+// `Array.prototype.fill` method implementation
+// https://tc39.es/ecma262/#sec-array.prototype.fill
module.exports = function fill(value /* , start = 0, end = @length */) {
var O = toObject(this);
var length = toLength(O.length);
- var aLen = arguments.length;
- var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);
- var end = aLen > 2 ? arguments[2] : undefined;
+ var argumentsLength = arguments.length;
+ var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);
+ var end = argumentsLength > 2 ? arguments[2] : undefined;
var endPos = end === undefined ? length : toAbsoluteIndex(end, length);
while (endPos > index) O[index++] = value;
return O;
@@ -7557,48 +9890,495 @@ module.exports = function fill(value /* , start = 0, end = @length */) {
/***/ }),
-/* 91 */
+/* 151 */
/***/ (function(module, exports, __webpack_require__) {
-// 22.1.3.31 Array.prototype[@@unscopables]
-var UNSCOPABLES = __webpack_require__(3)('unscopables');
-var ArrayProto = Array.prototype;
-if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(15)(ArrayProto, UNSCOPABLES, {});
+var wellKnownSymbol = __webpack_require__(6);
+var create = __webpack_require__(58);
+var definePropertyModule = __webpack_require__(16);
+
+var UNSCOPABLES = wellKnownSymbol('unscopables');
+var ArrayPrototype = Array.prototype;
+
+// Array.prototype[@@unscopables]
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+if (ArrayPrototype[UNSCOPABLES] == undefined) {
+ definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {
+ configurable: true,
+ value: create(null)
+ });
+}
+
+// add a key to Array.prototype[@@unscopables]
module.exports = function (key) {
- ArrayProto[UNSCOPABLES][key] = true;
+ ArrayPrototype[UNSCOPABLES][key] = true;
};
/***/ }),
-/* 92 */
+/* 152 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__(6);
+var Iterators = __webpack_require__(97);
+
+var ITERATOR = wellKnownSymbol('iterator');
+var ArrayPrototype = Array.prototype;
+
+// check on default Array iterator
+module.exports = function (it) {
+ return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
+};
+
+
+/***/ }),
+/* 153 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var classof = __webpack_require__(117);
+var Iterators = __webpack_require__(97);
+var wellKnownSymbol = __webpack_require__(6);
+
+var ITERATOR = wellKnownSymbol('iterator');
+
+module.exports = function (it) {
+ if (it != undefined) return it[ITERATOR]
+ || it['@@iterator']
+ || Iterators[classof(it)];
+};
+
+
+/***/ }),
+/* 154 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__(6);
+
+var TO_STRING_TAG = wellKnownSymbol('toStringTag');
+var test = {};
+
+test[TO_STRING_TAG] = 'z';
+
+module.exports = String(test) === '[object z]';
+
+
+/***/ }),
+/* 155 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__(6);
+
+var ITERATOR = wellKnownSymbol('iterator');
+var SAFE_CLOSING = false;
+
+try {
+ var called = 0;
+ var iteratorWithReturn = {
+ next: function () {
+ return { done: !!called++ };
+ },
+ 'return': function () {
+ SAFE_CLOSING = true;
+ }
+ };
+ iteratorWithReturn[ITERATOR] = function () {
+ return this;
+ };
+ // eslint-disable-next-line no-throw-literal
+ Array.from(iteratorWithReturn, function () { throw 2; });
+} catch (error) { /* empty */ }
+
+module.exports = function (exec, SKIP_CLOSING) {
+ if (!SKIP_CLOSING && !SAFE_CLOSING) return false;
+ var ITERATION_SUPPORT = false;
+ try {
+ var object = {};
+ object[ITERATOR] = function () {
+ return {
+ next: function () {
+ return { done: ITERATION_SUPPORT = true };
+ }
+ };
+ };
+ exec(object);
+ } catch (error) { /* empty */ }
+ return ITERATION_SUPPORT;
+};
+
+
+/***/ }),
+/* 156 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+var global = __webpack_require__(3);
+var DESCRIPTORS = __webpack_require__(13);
+var NATIVE_ARRAY_BUFFER = __webpack_require__(221);
+var createNonEnumerableProperty = __webpack_require__(18);
+var redefineAll = __webpack_require__(222);
+var fails = __webpack_require__(4);
+var anInstance = __webpack_require__(157);
+var toInteger = __webpack_require__(35);
+var toLength = __webpack_require__(8);
+var toIndex = __webpack_require__(223);
+var IEEE754 = __webpack_require__(325);
+var getPrototypeOf = __webpack_require__(60);
+var setPrototypeOf = __webpack_require__(45);
+var getOwnPropertyNames = __webpack_require__(57).f;
+var defineProperty = __webpack_require__(16).f;
+var arrayFill = __webpack_require__(150);
+var setToStringTag = __webpack_require__(95);
+var InternalStateModule = __webpack_require__(42);
-var anObject = __webpack_require__(12);
-var toLength = __webpack_require__(16);
-var advanceStringIndex = __webpack_require__(93);
-var regExpExec = __webpack_require__(95);
+var getInternalState = InternalStateModule.get;
+var setInternalState = InternalStateModule.set;
+var ARRAY_BUFFER = 'ArrayBuffer';
+var DATA_VIEW = 'DataView';
+var PROTOTYPE = 'prototype';
+var WRONG_LENGTH = 'Wrong length';
+var WRONG_INDEX = 'Wrong index';
+var NativeArrayBuffer = global[ARRAY_BUFFER];
+var $ArrayBuffer = NativeArrayBuffer;
+var $DataView = global[DATA_VIEW];
+var $DataViewPrototype = $DataView && $DataView[PROTOTYPE];
+var ObjectPrototype = Object.prototype;
+var RangeError = global.RangeError;
+
+var packIEEE754 = IEEE754.pack;
+var unpackIEEE754 = IEEE754.unpack;
+
+var packInt8 = function (number) {
+ return [number & 0xFF];
+};
+
+var packInt16 = function (number) {
+ return [number & 0xFF, number >> 8 & 0xFF];
+};
+
+var packInt32 = function (number) {
+ return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF];
+};
+
+var unpackInt32 = function (buffer) {
+ return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0];
+};
+
+var packFloat32 = function (number) {
+ return packIEEE754(number, 23, 4);
+};
+
+var packFloat64 = function (number) {
+ return packIEEE754(number, 52, 8);
+};
+
+var addGetter = function (Constructor, key) {
+ defineProperty(Constructor[PROTOTYPE], key, { get: function () { return getInternalState(this)[key]; } });
+};
+
+var get = function (view, count, index, isLittleEndian) {
+ var intIndex = toIndex(index);
+ var store = getInternalState(view);
+ if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);
+ var bytes = getInternalState(store.buffer).bytes;
+ var start = intIndex + store.byteOffset;
+ var pack = bytes.slice(start, start + count);
+ return isLittleEndian ? pack : pack.reverse();
+};
+
+var set = function (view, count, index, conversion, value, isLittleEndian) {
+ var intIndex = toIndex(index);
+ var store = getInternalState(view);
+ if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);
+ var bytes = getInternalState(store.buffer).bytes;
+ var start = intIndex + store.byteOffset;
+ var pack = conversion(+value);
+ for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];
+};
+
+if (!NATIVE_ARRAY_BUFFER) {
+ $ArrayBuffer = function ArrayBuffer(length) {
+ anInstance(this, $ArrayBuffer, ARRAY_BUFFER);
+ var byteLength = toIndex(length);
+ setInternalState(this, {
+ bytes: arrayFill.call(new Array(byteLength), 0),
+ byteLength: byteLength
+ });
+ if (!DESCRIPTORS) this.byteLength = byteLength;
+ };
+
+ $DataView = function DataView(buffer, byteOffset, byteLength) {
+ anInstance(this, $DataView, DATA_VIEW);
+ anInstance(buffer, $ArrayBuffer, DATA_VIEW);
+ var bufferLength = getInternalState(buffer).byteLength;
+ var offset = toInteger(byteOffset);
+ if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset');
+ byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
+ if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);
+ setInternalState(this, {
+ buffer: buffer,
+ byteLength: byteLength,
+ byteOffset: offset
+ });
+ if (!DESCRIPTORS) {
+ this.buffer = buffer;
+ this.byteLength = byteLength;
+ this.byteOffset = offset;
+ }
+ };
+
+ if (DESCRIPTORS) {
+ addGetter($ArrayBuffer, 'byteLength');
+ addGetter($DataView, 'buffer');
+ addGetter($DataView, 'byteLength');
+ addGetter($DataView, 'byteOffset');
+ }
+
+ redefineAll($DataView[PROTOTYPE], {
+ getInt8: function getInt8(byteOffset) {
+ return get(this, 1, byteOffset)[0] << 24 >> 24;
+ },
+ getUint8: function getUint8(byteOffset) {
+ return get(this, 1, byteOffset)[0];
+ },
+ getInt16: function getInt16(byteOffset /* , littleEndian */) {
+ var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);
+ return (bytes[1] << 8 | bytes[0]) << 16 >> 16;
+ },
+ getUint16: function getUint16(byteOffset /* , littleEndian */) {
+ var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);
+ return bytes[1] << 8 | bytes[0];
+ },
+ getInt32: function getInt32(byteOffset /* , littleEndian */) {
+ return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined));
+ },
+ getUint32: function getUint32(byteOffset /* , littleEndian */) {
+ return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0;
+ },
+ getFloat32: function getFloat32(byteOffset /* , littleEndian */) {
+ return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23);
+ },
+ getFloat64: function getFloat64(byteOffset /* , littleEndian */) {
+ return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52);
+ },
+ setInt8: function setInt8(byteOffset, value) {
+ set(this, 1, byteOffset, packInt8, value);
+ },
+ setUint8: function setUint8(byteOffset, value) {
+ set(this, 1, byteOffset, packInt8, value);
+ },
+ setInt16: function setInt16(byteOffset, value /* , littleEndian */) {
+ set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint16: function setUint16(byteOffset, value /* , littleEndian */) {
+ set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setInt32: function setInt32(byteOffset, value /* , littleEndian */) {
+ set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint32: function setUint32(byteOffset, value /* , littleEndian */) {
+ set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {
+ set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {
+ set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined);
+ }
+ });
+} else {
+ if (!fails(function () {
+ NativeArrayBuffer(1);
+ }) || !fails(function () {
+ new NativeArrayBuffer(-1); // eslint-disable-line no-new
+ }) || fails(function () {
+ new NativeArrayBuffer(); // eslint-disable-line no-new
+ new NativeArrayBuffer(1.5); // eslint-disable-line no-new
+ new NativeArrayBuffer(NaN); // eslint-disable-line no-new
+ return NativeArrayBuffer.name != ARRAY_BUFFER;
+ })) {
+ $ArrayBuffer = function ArrayBuffer(length) {
+ anInstance(this, $ArrayBuffer);
+ return new NativeArrayBuffer(toIndex(length));
+ };
+ var ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE] = NativeArrayBuffer[PROTOTYPE];
+ for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j;) {
+ if (!((key = keys[j++]) in $ArrayBuffer)) {
+ createNonEnumerableProperty($ArrayBuffer, key, NativeArrayBuffer[key]);
+ }
+ }
+ ArrayBufferPrototype.constructor = $ArrayBuffer;
+ }
+
+ // WebKit bug - the same parent prototype for typed arrays and data view
+ if (setPrototypeOf && getPrototypeOf($DataViewPrototype) !== ObjectPrototype) {
+ setPrototypeOf($DataViewPrototype, ObjectPrototype);
+ }
+
+ // iOS Safari 7.x bug
+ var testView = new $DataView(new $ArrayBuffer(2));
+ var nativeSetInt8 = $DataViewPrototype.setInt8;
+ testView.setInt8(0, 2147483648);
+ testView.setInt8(1, 2147483649);
+ if (testView.getInt8(0) || !testView.getInt8(1)) redefineAll($DataViewPrototype, {
+ setInt8: function setInt8(byteOffset, value) {
+ nativeSetInt8.call(this, byteOffset, value << 24 >> 24);
+ },
+ setUint8: function setUint8(byteOffset, value) {
+ nativeSetInt8.call(this, byteOffset, value << 24 >> 24);
+ }
+ }, { unsafe: true });
+}
+
+setToStringTag($ArrayBuffer, ARRAY_BUFFER);
+setToStringTag($DataView, DATA_VIEW);
+
+module.exports = {
+ ArrayBuffer: $ArrayBuffer,
+ DataView: $DataView
+};
+
+
+/***/ }),
+/* 157 */
+/***/ (function(module, exports) {
+
+module.exports = function (it, Constructor, name) {
+ if (!(it instanceof Constructor)) {
+ throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');
+ } return it;
+};
+
+
+/***/ }),
+/* 158 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var getBuiltIn = __webpack_require__(34);
+var definePropertyModule = __webpack_require__(16);
+var wellKnownSymbol = __webpack_require__(6);
+var DESCRIPTORS = __webpack_require__(13);
+
+var SPECIES = wellKnownSymbol('species');
+
+module.exports = function (CONSTRUCTOR_NAME) {
+ var Constructor = getBuiltIn(CONSTRUCTOR_NAME);
+ var defineProperty = definePropertyModule.f;
+
+ if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
+ defineProperty(Constructor, SPECIES, {
+ configurable: true,
+ get: function () { return this; }
+ });
+ }
+};
+
+
+/***/ }),
+/* 159 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__(35);
+var requireObjectCoercible = __webpack_require__(33);
+
+// `String.prototype.{ codePointAt, at }` methods implementation
+var createMethod = function (CONVERT_TO_STRING) {
+ return function ($this, pos) {
+ var S = String(requireObjectCoercible($this));
+ var position = toInteger(pos);
+ var size = S.length;
+ var first, second;
+ if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
+ first = S.charCodeAt(position);
+ return first < 0xD800 || first > 0xDBFF || position + 1 === size
+ || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
+ ? CONVERT_TO_STRING ? S.charAt(position) : first
+ : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
+ };
+};
+
+module.exports = {
+ // `String.prototype.codePointAt` method
+ // https://tc39.es/ecma262/#sec-string.prototype.codepointat
+ codeAt: createMethod(false),
+ // `String.prototype.at` method
+ // https://github.com/mathiasbynens/String.prototype.at
+ charAt: createMethod(true)
+};
+
+
+/***/ }),
+/* 160 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var charAt = __webpack_require__(159).charAt;
+var InternalStateModule = __webpack_require__(42);
+var defineIterator = __webpack_require__(217);
+
+var STRING_ITERATOR = 'String Iterator';
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);
+
+// `String.prototype[@@iterator]` method
+// https://tc39.es/ecma262/#sec-string.prototype-@@iterator
+defineIterator(String, 'String', function (iterated) {
+ setInternalState(this, {
+ type: STRING_ITERATOR,
+ string: String(iterated),
+ index: 0
+ });
+// `%StringIteratorPrototype%.next` method
+// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
+}, function next() {
+ var state = getInternalState(this);
+ var string = state.string;
+ var index = state.index;
+ var point;
+ if (index >= string.length) return { value: undefined, done: true };
+ point = charAt(string, index);
+ state.index += point.length;
+ return { value: point, done: false };
+});
+
+
+/***/ }),
+/* 161 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var fixRegExpWellKnownSymbolLogic = __webpack_require__(162);
+var anObject = __webpack_require__(11);
+var toLength = __webpack_require__(8);
+var requireObjectCoercible = __webpack_require__(33);
+var advanceStringIndex = __webpack_require__(163);
+var regExpExec = __webpack_require__(164);
// @@match logic
-__webpack_require__(96)('match', 1, function (defined, MATCH, $match, maybeCallNative) {
+fixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {
return [
// `String.prototype.match` method
- // https://tc39.github.io/ecma262/#sec-string.prototype.match
+ // https://tc39.es/ecma262/#sec-string.prototype.match
function match(regexp) {
- var O = defined(this);
- var fn = regexp == undefined ? undefined : regexp[MATCH];
- return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
+ var O = requireObjectCoercible(this);
+ var matcher = regexp == undefined ? undefined : regexp[MATCH];
+ return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
},
// `RegExp.prototype[@@match]` method
- // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
+ // https://tc39.es/ecma262/#sec-regexp.prototype-@@match
function (regexp) {
- var res = maybeCallNative($match, regexp, this);
+ var res = maybeCallNative(nativeMatch, regexp, this);
if (res.done) return res.value;
+
var rx = anObject(regexp);
var S = String(this);
+
if (!rx.global) return regExpExec(rx, S);
+
var fullUnicode = rx.unicode;
rx.lastIndex = 0;
var A = [];
@@ -7617,86 +10397,20 @@ __webpack_require__(96)('match', 1, function (defined, MATCH, $match, maybeCallN
/***/ }),
-/* 93 */
+/* 162 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var at = __webpack_require__(94)(true);
+// TODO: Remove from `core-js@4` since it's moved to entry points
+__webpack_require__(118);
+var redefine = __webpack_require__(25);
+var fails = __webpack_require__(4);
+var wellKnownSymbol = __webpack_require__(6);
+var regexpExec = __webpack_require__(119);
+var createNonEnumerableProperty = __webpack_require__(18);
- // `AdvanceStringIndex` abstract operation
-// https://tc39.github.io/ecma262/#sec-advancestringindex
-module.exports = function (S, index, unicode) {
- return index + (unicode ? at(S, index).length : 1);
-};
-
-
-/***/ }),
-/* 94 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var toInteger = __webpack_require__(31);
-var defined = __webpack_require__(30);
-// true -> String#at
-// false -> String#codePointAt
-module.exports = function (TO_STRING) {
- return function (that, pos) {
- var s = String(defined(that));
- var i = toInteger(pos);
- var l = s.length;
- var a, b;
- if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
- a = s.charCodeAt(i);
- return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
- ? TO_STRING ? s.charAt(i) : a
- : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
- };
-};
-
-
-/***/ }),
-/* 95 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-var classof = __webpack_require__(64);
-var builtinExec = RegExp.prototype.exec;
-
- // `RegExpExec` abstract operation
-// https://tc39.github.io/ecma262/#sec-regexpexec
-module.exports = function (R, S) {
- var exec = R.exec;
- if (typeof exec === 'function') {
- var result = exec.call(R, S);
- if (typeof result !== 'object') {
- throw new TypeError('RegExp exec method returned something other than an Object or null');
- }
- return result;
- }
- if (classof(R) !== 'RegExp') {
- throw new TypeError('RegExp#exec called on incompatible receiver');
- }
- return builtinExec.call(R, S);
-};
-
-
-/***/ }),
-/* 96 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-__webpack_require__(236);
-var redefine = __webpack_require__(23);
-var hide = __webpack_require__(15);
-var fails = __webpack_require__(10);
-var defined = __webpack_require__(30);
-var wks = __webpack_require__(3);
-var regexpExec = __webpack_require__(97);
-
-var SPECIES = wks('species');
+var SPECIES = wellKnownSymbol('species');
var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
// #replace needs built-in support for named groups.
@@ -7711,17 +10425,33 @@ var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
return ''.replace(re, '$') !== '7';
});
-var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
- // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
+// IE <= 11 replaces $0 with the whole match, as if it was $&
+// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
+var REPLACE_KEEPS_$0 = (function () {
+ return 'a'.replace(/./, '$0') === '$0';
+})();
+
+var REPLACE = wellKnownSymbol('replace');
+// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
+var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
+ if (/./[REPLACE]) {
+ return /./[REPLACE]('a', '$0') === '';
+ }
+ return false;
+})();
+
+// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
+// Weex JS has frozen built-in prototypes, so use try / catch wrapper
+var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
var re = /(?:)/;
var originalExec = re.exec;
re.exec = function () { return originalExec.apply(this, arguments); };
var result = 'ab'.split(re);
- return result.length === 2 && result[0] === 'a' && result[1] === 'b';
-})();
+ return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
+});
-module.exports = function (KEY, length, exec) {
- var SYMBOL = wks(KEY);
+module.exports = function (KEY, length, exec, sham) {
+ var SYMBOL = wellKnownSymbol(KEY);
var DELEGATES_TO_SYMBOL = !fails(function () {
// String methods call symbol-named RegEp methods
@@ -7730,358 +10460,132 @@ module.exports = function (KEY, length, exec) {
return ''[KEY](O) != 7;
});
- var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
+ var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
// Symbol-named RegExp methods call .exec
var execCalled = false;
var re = /a/;
- re.exec = function () { execCalled = true; return null; };
+
if (KEY === 'split') {
+ // We can't use real regex here since it causes deoptimization
+ // and serious performance degradation in V8
+ // https://github.com/zloirock/core-js/issues/306
+ re = {};
// RegExp[@@split] doesn't call the regex's exec method, but first creates
// a new one. We need to return the patched regex when creating the new one.
re.constructor = {};
re.constructor[SPECIES] = function () { return re; };
+ re.flags = '';
+ re[SYMBOL] = /./[SYMBOL];
}
+
+ re.exec = function () { execCalled = true; return null; };
+
re[SYMBOL]('');
return !execCalled;
- }) : undefined;
+ });
if (
!DELEGATES_TO_SYMBOL ||
!DELEGATES_TO_EXEC ||
- (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
+ (KEY === 'replace' && !(
+ REPLACE_SUPPORTS_NAMED_GROUPS &&
+ REPLACE_KEEPS_$0 &&
+ !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
+ )) ||
(KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
) {
var nativeRegExpMethod = /./[SYMBOL];
- var fns = exec(
- defined,
- SYMBOL,
- ''[KEY],
- function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
- if (regexp.exec === regexpExec) {
- if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
- // The native String method already delegates to @@method (this
- // polyfilled function), leasing to infinite recursion.
- // We avoid it by directly calling the native @@method method.
- return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
- }
- return { done: true, value: nativeMethod.call(str, regexp, arg2) };
+ var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
+ if (regexp.exec === regexpExec) {
+ if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
+ // The native String method already delegates to @@method (this
+ // polyfilled function), leasing to infinite recursion.
+ // We avoid it by directly calling the native @@method method.
+ return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
}
- return { done: false };
+ return { done: true, value: nativeMethod.call(str, regexp, arg2) };
}
- );
- var strfn = fns[0];
- var rxfn = fns[1];
+ return { done: false };
+ }, {
+ REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,
+ REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
+ });
+ var stringMethod = methods[0];
+ var regexMethod = methods[1];
- redefine(String.prototype, KEY, strfn);
- hide(RegExp.prototype, SYMBOL, length == 2
+ redefine(String.prototype, KEY, stringMethod);
+ redefine(RegExp.prototype, SYMBOL, length == 2
// 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
// 21.2.5.11 RegExp.prototype[@@split](string, limit)
- ? function (string, arg) { return rxfn.call(string, this, arg); }
+ ? function (string, arg) { return regexMethod.call(string, this, arg); }
// 21.2.5.6 RegExp.prototype[@@match](string)
// 21.2.5.9 RegExp.prototype[@@search](string)
- : function (string) { return rxfn.call(string, this); }
+ : function (string) { return regexMethod.call(string, this); }
);
}
+
+ if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
};
/***/ }),
-/* 97 */
+/* 163 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+var charAt = __webpack_require__(159).charAt;
-var regexpFlags = __webpack_require__(98);
-
-var nativeExec = RegExp.prototype.exec;
-// This always refers to the native implementation, because the
-// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
-// which loads this file before patching the method.
-var nativeReplace = String.prototype.replace;
-
-var patchedExec = nativeExec;
-
-var LAST_INDEX = 'lastIndex';
-
-var UPDATES_LAST_INDEX_WRONG = (function () {
- var re1 = /a/,
- re2 = /b*/g;
- nativeExec.call(re1, 'a');
- nativeExec.call(re2, 'a');
- return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
-})();
-
-// nonparticipating capturing group, copied from es5-shim's String#split patch.
-var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
-
-var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;
-
-if (PATCH) {
- patchedExec = function exec(str) {
- var re = this;
- var lastIndex, reCopy, match, i;
-
- if (NPCG_INCLUDED) {
- reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
- }
- if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];
-
- match = nativeExec.call(re, str);
-
- if (UPDATES_LAST_INDEX_WRONG && match) {
- re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
- }
- if (NPCG_INCLUDED && match && match.length > 1) {
- // Fix browsers whose `exec` methods don't consistently return `undefined`
- // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
- // eslint-disable-next-line no-loop-func
- nativeReplace.call(match[0], reCopy, function () {
- for (i = 1; i < arguments.length - 2; i++) {
- if (arguments[i] === undefined) match[i] = undefined;
- }
- });
- }
-
- return match;
- };
-}
-
-module.exports = patchedExec;
-
-
-/***/ }),
-/* 98 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-// 21.2.5.3 get RegExp.prototype.flags
-var anObject = __webpack_require__(12);
-module.exports = function () {
- var that = anObject(this);
- var result = '';
- if (that.global) result += 'g';
- if (that.ignoreCase) result += 'i';
- if (that.multiline) result += 'm';
- if (that.unicode) result += 'u';
- if (that.sticky) result += 'y';
- return result;
+// `AdvanceStringIndex` abstract operation
+// https://tc39.es/ecma262/#sec-advancestringindex
+module.exports = function (S, index, unicode) {
+ return index + (unicode ? charAt(S, index).length : 1);
};
/***/ }),
-/* 99 */
+/* 164 */
/***/ (function(module, exports, __webpack_require__) {
-var $iterators = __webpack_require__(66);
-var getKeys = __webpack_require__(42);
-var redefine = __webpack_require__(23);
-var global = __webpack_require__(8);
-var hide = __webpack_require__(15);
-var Iterators = __webpack_require__(45);
-var wks = __webpack_require__(3);
-var ITERATOR = wks('iterator');
-var TO_STRING_TAG = wks('toStringTag');
-var ArrayValues = Iterators.Array;
+var classof = __webpack_require__(41);
+var regexpExec = __webpack_require__(119);
-var DOMIterables = {
- CSSRuleList: true, // TODO: Not spec compliant, should be false.
- CSSStyleDeclaration: false,
- CSSValueList: false,
- ClientRectList: false,
- DOMRectList: false,
- DOMStringList: false,
- DOMTokenList: true,
- DataTransferItemList: false,
- FileList: false,
- HTMLAllCollection: false,
- HTMLCollection: false,
- HTMLFormElement: false,
- HTMLSelectElement: false,
- MediaList: true, // TODO: Not spec compliant, should be false.
- MimeTypeArray: false,
- NamedNodeMap: false,
- NodeList: true,
- PaintRequestList: false,
- Plugin: false,
- PluginArray: false,
- SVGLengthList: false,
- SVGNumberList: false,
- SVGPathSegList: false,
- SVGPointList: false,
- SVGStringList: false,
- SVGTransformList: false,
- SourceBufferList: false,
- StyleSheetList: true, // TODO: Not spec compliant, should be false.
- TextTrackCueList: false,
- TextTrackList: false,
- TouchList: false
-};
-
-for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
- var NAME = collections[i];
- var explicit = DOMIterables[NAME];
- var Collection = global[NAME];
- var proto = Collection && Collection.prototype;
- var key;
- if (proto) {
- if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
- if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
- Iterators[NAME] = ArrayValues;
- if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
- }
-}
-
-
-/***/ }),
-/* 100 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-module.exports = Stream;
-
-var EE = __webpack_require__(68).EventEmitter;
-var inherits = __webpack_require__(46);
-
-inherits(Stream, EE);
-Stream.Readable = __webpack_require__(101);
-Stream.Writable = __webpack_require__(261);
-Stream.Duplex = __webpack_require__(262);
-Stream.Transform = __webpack_require__(263);
-Stream.PassThrough = __webpack_require__(264);
-
-// Backwards-compat with node 0.4.x
-Stream.Stream = Stream;
-
-
-
-// old-style streams. Note that the pipe method (the only relevant
-// part of this class) is overridden in the Readable class.
-
-function Stream() {
- EE.call(this);
-}
-
-Stream.prototype.pipe = function(dest, options) {
- var source = this;
-
- function ondata(chunk) {
- if (dest.writable) {
- if (false === dest.write(chunk) && source.pause) {
- source.pause();
- }
+// `RegExpExec` abstract operation
+// https://tc39.es/ecma262/#sec-regexpexec
+module.exports = function (R, S) {
+ var exec = R.exec;
+ if (typeof exec === 'function') {
+ var result = exec.call(R, S);
+ if (typeof result !== 'object') {
+ throw TypeError('RegExp exec method returned something other than an Object or null');
}
+ return result;
}
- source.on('data', ondata);
-
- function ondrain() {
- if (source.readable && source.resume) {
- source.resume();
- }
+ if (classof(R) !== 'RegExp') {
+ throw TypeError('RegExp#exec called on incompatible receiver');
}
- dest.on('drain', ondrain);
-
- // If the 'end' option is not supplied, dest.end() will be called when
- // source gets the 'end' or 'close' events. Only dest.end() once.
- if (!dest._isStdio && (!options || options.end !== false)) {
- source.on('end', onend);
- source.on('close', onclose);
- }
-
- var didOnEnd = false;
- function onend() {
- if (didOnEnd) return;
- didOnEnd = true;
-
- dest.end();
- }
-
-
- function onclose() {
- if (didOnEnd) return;
- didOnEnd = true;
-
- if (typeof dest.destroy === 'function') dest.destroy();
- }
-
- // don't leave dangling pipes when there are errors.
- function onerror(er) {
- cleanup();
- if (EE.listenerCount(this, 'error') === 0) {
- throw er; // Unhandled stream error in pipe.
- }
- }
-
- source.on('error', onerror);
- dest.on('error', onerror);
-
- // remove all the event listeners that were added.
- function cleanup() {
- source.removeListener('data', ondata);
- dest.removeListener('drain', ondrain);
-
- source.removeListener('end', onend);
- source.removeListener('close', onclose);
-
- source.removeListener('error', onerror);
- dest.removeListener('error', onerror);
-
- source.removeListener('end', cleanup);
- source.removeListener('close', cleanup);
-
- dest.removeListener('close', cleanup);
- }
-
- source.on('end', cleanup);
- source.on('close', cleanup);
-
- dest.on('close', cleanup);
-
- dest.emit('pipe', source);
-
- // Allow for unix-like usage: A.pipe(B).pipe(C)
- return dest;
+ return regexpExec.call(R, S);
};
+
/***/ }),
-/* 101 */
+/* 165 */
/***/ (function(module, exports, __webpack_require__) {
-exports = module.exports = __webpack_require__(166);
+exports = module.exports = __webpack_require__(241);
exports.Stream = exports;
exports.Readable = exports;
-exports.Writable = __webpack_require__(102);
-exports.Duplex = __webpack_require__(32);
-exports.Transform = __webpack_require__(169);
-exports.PassThrough = __webpack_require__(260);
+exports.Writable = __webpack_require__(166);
+exports.Duplex = __webpack_require__(48);
+exports.Transform = __webpack_require__(244);
+exports.PassThrough = __webpack_require__(351);
/***/ }),
-/* 102 */
+/* 166 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -8114,7 +10618,7 @@ exports.PassThrough = __webpack_require__(260);
/**/
-var pna = __webpack_require__(69);
+var pna = __webpack_require__(123);
/**/
module.exports = Writable;
@@ -8151,23 +10655,23 @@ var Duplex;
Writable.WritableState = WritableState;
/**/
-var util = Object.create(__webpack_require__(56));
-util.inherits = __webpack_require__(46);
+var util = Object.create(__webpack_require__(98));
+util.inherits = __webpack_require__(86);
/**/
/**/
var internalUtil = {
- deprecate: __webpack_require__(259)
+ deprecate: __webpack_require__(350)
};
/**/
/**/
-var Stream = __webpack_require__(167);
+var Stream = __webpack_require__(242);
/**/
/**/
-var Buffer = __webpack_require__(70).Buffer;
+var Buffer = __webpack_require__(124).Buffer;
var OurUint8Array = global.Uint8Array || function () {};
function _uint8ArrayToBuffer(chunk) {
return Buffer.from(chunk);
@@ -8178,14 +10682,14 @@ function _isUint8Array(obj) {
/**/
-var destroyImpl = __webpack_require__(168);
+var destroyImpl = __webpack_require__(243);
util.inherits(Writable, Stream);
function nop() {}
function WritableState(options, stream) {
- Duplex = Duplex || __webpack_require__(32);
+ Duplex = Duplex || __webpack_require__(48);
options = options || {};
@@ -8335,7 +10839,7 @@ if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.protot
}
function Writable(options) {
- Duplex = Duplex || __webpack_require__(32);
+ Duplex = Duplex || __webpack_require__(48);
// Writable ctor is applied to Duplexes, too.
// `realHasInstance` is necessary because using plain `instanceof`
@@ -8772,312 +11276,10 @@ Writable.prototype._destroy = function (err, cb) {
this.end();
cb(err);
};
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(25), __webpack_require__(22)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(47), __webpack_require__(24)))
/***/ }),
-/* 103 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
-
-/**/
-
-var Buffer = __webpack_require__(70).Buffer;
-/**/
-
-var isEncoding = Buffer.isEncoding || function (encoding) {
- encoding = '' + encoding;
- switch (encoding && encoding.toLowerCase()) {
- case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':
- return true;
- default:
- return false;
- }
-};
-
-function _normalizeEncoding(enc) {
- if (!enc) return 'utf8';
- var retried;
- while (true) {
- switch (enc) {
- case 'utf8':
- case 'utf-8':
- return 'utf8';
- case 'ucs2':
- case 'ucs-2':
- case 'utf16le':
- case 'utf-16le':
- return 'utf16le';
- case 'latin1':
- case 'binary':
- return 'latin1';
- case 'base64':
- case 'ascii':
- case 'hex':
- return enc;
- default:
- if (retried) return; // undefined
- enc = ('' + enc).toLowerCase();
- retried = true;
- }
- }
-};
-
-// Do not cache `Buffer.isEncoding` when checking encoding names as some
-// modules monkey-patch it to support additional encodings
-function normalizeEncoding(enc) {
- var nenc = _normalizeEncoding(enc);
- if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);
- return nenc || enc;
-}
-
-// StringDecoder provides an interface for efficiently splitting a series of
-// buffers into a series of JS strings without breaking apart multi-byte
-// characters.
-exports.StringDecoder = StringDecoder;
-function StringDecoder(encoding) {
- this.encoding = normalizeEncoding(encoding);
- var nb;
- switch (this.encoding) {
- case 'utf16le':
- this.text = utf16Text;
- this.end = utf16End;
- nb = 4;
- break;
- case 'utf8':
- this.fillLast = utf8FillLast;
- nb = 4;
- break;
- case 'base64':
- this.text = base64Text;
- this.end = base64End;
- nb = 3;
- break;
- default:
- this.write = simpleWrite;
- this.end = simpleEnd;
- return;
- }
- this.lastNeed = 0;
- this.lastTotal = 0;
- this.lastChar = Buffer.allocUnsafe(nb);
-}
-
-StringDecoder.prototype.write = function (buf) {
- if (buf.length === 0) return '';
- var r;
- var i;
- if (this.lastNeed) {
- r = this.fillLast(buf);
- if (r === undefined) return '';
- i = this.lastNeed;
- this.lastNeed = 0;
- } else {
- i = 0;
- }
- if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);
- return r || '';
-};
-
-StringDecoder.prototype.end = utf8End;
-
-// Returns only complete characters in a Buffer
-StringDecoder.prototype.text = utf8Text;
-
-// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer
-StringDecoder.prototype.fillLast = function (buf) {
- if (this.lastNeed <= buf.length) {
- buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);
- return this.lastChar.toString(this.encoding, 0, this.lastTotal);
- }
- buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);
- this.lastNeed -= buf.length;
-};
-
-// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a
-// continuation byte. If an invalid byte is detected, -2 is returned.
-function utf8CheckByte(byte) {
- if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;
- return byte >> 6 === 0x02 ? -1 : -2;
-}
-
-// Checks at most 3 bytes at the end of a Buffer in order to detect an
-// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)
-// needed to complete the UTF-8 character (if applicable) are returned.
-function utf8CheckIncomplete(self, buf, i) {
- var j = buf.length - 1;
- if (j < i) return 0;
- var nb = utf8CheckByte(buf[j]);
- if (nb >= 0) {
- if (nb > 0) self.lastNeed = nb - 1;
- return nb;
- }
- if (--j < i || nb === -2) return 0;
- nb = utf8CheckByte(buf[j]);
- if (nb >= 0) {
- if (nb > 0) self.lastNeed = nb - 2;
- return nb;
- }
- if (--j < i || nb === -2) return 0;
- nb = utf8CheckByte(buf[j]);
- if (nb >= 0) {
- if (nb > 0) {
- if (nb === 2) nb = 0;else self.lastNeed = nb - 3;
- }
- return nb;
- }
- return 0;
-}
-
-// Validates as many continuation bytes for a multi-byte UTF-8 character as
-// needed or are available. If we see a non-continuation byte where we expect
-// one, we "replace" the validated continuation bytes we've seen so far with
-// a single UTF-8 replacement character ('\ufffd'), to match v8's UTF-8 decoding
-// behavior. The continuation byte check is included three times in the case
-// where all of the continuation bytes for a character exist in the same buffer.
-// It is also done this way as a slight performance increase instead of using a
-// loop.
-function utf8CheckExtraBytes(self, buf, p) {
- if ((buf[0] & 0xC0) !== 0x80) {
- self.lastNeed = 0;
- return '\ufffd';
- }
- if (self.lastNeed > 1 && buf.length > 1) {
- if ((buf[1] & 0xC0) !== 0x80) {
- self.lastNeed = 1;
- return '\ufffd';
- }
- if (self.lastNeed > 2 && buf.length > 2) {
- if ((buf[2] & 0xC0) !== 0x80) {
- self.lastNeed = 2;
- return '\ufffd';
- }
- }
- }
-}
-
-// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.
-function utf8FillLast(buf) {
- var p = this.lastTotal - this.lastNeed;
- var r = utf8CheckExtraBytes(this, buf, p);
- if (r !== undefined) return r;
- if (this.lastNeed <= buf.length) {
- buf.copy(this.lastChar, p, 0, this.lastNeed);
- return this.lastChar.toString(this.encoding, 0, this.lastTotal);
- }
- buf.copy(this.lastChar, p, 0, buf.length);
- this.lastNeed -= buf.length;
-}
-
-// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a
-// partial character, the character's bytes are buffered until the required
-// number of bytes are available.
-function utf8Text(buf, i) {
- var total = utf8CheckIncomplete(this, buf, i);
- if (!this.lastNeed) return buf.toString('utf8', i);
- this.lastTotal = total;
- var end = buf.length - (total - this.lastNeed);
- buf.copy(this.lastChar, 0, end);
- return buf.toString('utf8', i, end);
-}
-
-// For UTF-8, a replacement character is added when ending on a partial
-// character.
-function utf8End(buf) {
- var r = buf && buf.length ? this.write(buf) : '';
- if (this.lastNeed) return r + '\ufffd';
- return r;
-}
-
-// UTF-16LE typically needs two bytes per character, but even if we have an even
-// number of bytes available, we need to check if we end on a leading/high
-// surrogate. In that case, we need to wait for the next two bytes in order to
-// decode the last character properly.
-function utf16Text(buf, i) {
- if ((buf.length - i) % 2 === 0) {
- var r = buf.toString('utf16le', i);
- if (r) {
- var c = r.charCodeAt(r.length - 1);
- if (c >= 0xD800 && c <= 0xDBFF) {
- this.lastNeed = 2;
- this.lastTotal = 4;
- this.lastChar[0] = buf[buf.length - 2];
- this.lastChar[1] = buf[buf.length - 1];
- return r.slice(0, -1);
- }
- }
- return r;
- }
- this.lastNeed = 1;
- this.lastTotal = 2;
- this.lastChar[0] = buf[buf.length - 1];
- return buf.toString('utf16le', i, buf.length - 1);
-}
-
-// For UTF-16LE we do not explicitly append special replacement characters if we
-// end on a partial character, we simply let v8 handle that.
-function utf16End(buf) {
- var r = buf && buf.length ? this.write(buf) : '';
- if (this.lastNeed) {
- var end = this.lastTotal - this.lastNeed;
- return r + this.lastChar.toString('utf16le', 0, end);
- }
- return r;
-}
-
-function base64Text(buf, i) {
- var n = (buf.length - i) % 3;
- if (n === 0) return buf.toString('base64', i);
- this.lastNeed = 3 - n;
- this.lastTotal = 3;
- if (n === 1) {
- this.lastChar[0] = buf[buf.length - 1];
- } else {
- this.lastChar[0] = buf[buf.length - 2];
- this.lastChar[1] = buf[buf.length - 1];
- }
- return buf.toString('base64', i, buf.length - n);
-}
-
-function base64End(buf) {
- var r = buf && buf.length ? this.write(buf) : '';
- if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);
- return r;
-}
-
-// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)
-function simpleWrite(buf) {
- return buf.toString(this.encoding);
-}
-
-function simpleEnd(buf) {
- return buf && buf.length ? this.write(buf) : '';
-}
-
-/***/ }),
-/* 104 */
+/* 167 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(process) {// Copyright Joyent, Inc. and other Node contributors.
@@ -9615,7 +11817,7 @@ function isPrimitive(arg) {
}
exports.isPrimitive = isPrimitive;
-exports.isBuffer = __webpack_require__(267);
+exports.isBuffer = __webpack_require__(358);
function objectToString(o) {
return Object.prototype.toString.call(o);
@@ -9659,7 +11861,7 @@ exports.log = function() {
* prototype.
* @param {function} superCtor Constructor function to inherit prototype from.
*/
-exports.inherits = __webpack_require__(268);
+exports.inherits = __webpack_require__(359);
exports._extend = function(origin, add) {
// Don't do anything if add isn't an object
@@ -9784,16 +11986,16 @@ function callbackify(original) {
}
exports.callbackify = callbackify;
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(25)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(47)))
/***/ }),
-/* 105 */
+/* 168 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -9935,13 +12137,13 @@ exports.callbackify = callbackify;
}));
/***/ }),
-/* 106 */
+/* 169 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -10076,7 +12278,7 @@ exports.callbackify = callbackify;
}));
/***/ }),
-/* 107 */
+/* 170 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(Buffer) {// Generated by CoffeeScript 1.7.1
@@ -10084,7 +12286,7 @@ exports.callbackify = callbackify;
var DecodeStream, iconv;
try {
- iconv = __webpack_require__(108);
+ iconv = __webpack_require__(171);
} catch (_error) {}
DecodeStream = (function() {
@@ -10182,20 +12384,18 @@ exports.callbackify = callbackify;
}).call(this);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 108 */
+/* 171 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/* WEBPACK VAR INJECTION */(function(process) {
-// Some environments don't have global Buffer (e.g. React Native).
-// Solution would be installing npm modules "buffer" and "stream" explicitly.
-var Buffer = __webpack_require__(34).Buffer;
-var bomHandling = __webpack_require__(304),
+var Buffer = __webpack_require__(37).Buffer;
+
+var bomHandling = __webpack_require__(395),
iconv = module.exports;
// All codecs and aliases are kept here, keyed by encoding name/alias.
@@ -10253,7 +12453,7 @@ iconv.fromEncoding = iconv.decode;
iconv._codecDataCache = {};
iconv.getCodec = function getCodec(encoding) {
if (!iconv.encodings)
- iconv.encodings = __webpack_require__(305); // Lazy load all encoding definitions.
+ iconv.encodings = __webpack_require__(396); // Lazy load all encoding definitions.
// Canonicalize encoding name: strip all non-alphanumeric chars and appended year.
var enc = iconv._canonicalizeEncoding(encoding);
@@ -10324,37 +12524,65 @@ iconv.getDecoder = function getDecoder(encoding, options) {
return decoder;
}
+// Streaming API
+// NOTE: Streaming API naturally depends on 'stream' module from Node.js. Unfortunately in browser environments this module can add
+// up to 100Kb to the output bundle. To avoid unnecessary code bloat, we don't enable Streaming API in browser by default.
+// If you would like to enable it explicitly, please add the following code to your app:
+// > iconv.enableStreamingAPI(require('stream'));
+iconv.enableStreamingAPI = function enableStreamingAPI(stream_module) {
+ if (iconv.supportsStreams)
+ return;
-// Load extensions in Node. All of them are omitted in Browserify build via 'browser' field in package.json.
-var nodeVer = typeof process !== 'undefined' && process.versions && process.versions.node;
-if (nodeVer) {
+ // Dependency-inject stream module to create IconvLite stream classes.
+ var streams = __webpack_require__(411)(stream_module);
- // Load streaming support in Node v0.10+
- var nodeVerArr = nodeVer.split(".").map(Number);
- if (nodeVerArr[0] > 0 || nodeVerArr[1] >= 10) {
- __webpack_require__(320)(iconv);
+ // Not public API yet, but expose the stream classes.
+ iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream;
+ iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream;
+
+ // Streaming API.
+ iconv.encodeStream = function encodeStream(encoding, options) {
+ return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options);
}
- // Load Node primitive extensions.
- __webpack_require__(321)(iconv);
+ iconv.decodeStream = function decodeStream(encoding, options) {
+ return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options);
+ }
+
+ iconv.supportsStreams = true;
+}
+
+// Enable Streaming API automatically if 'stream' module is available and non-empty (the majority of environments).
+var stream_module;
+try {
+ stream_module = __webpack_require__(412);
+} catch (e) {}
+
+if (stream_module && stream_module.Transform) {
+ iconv.enableStreamingAPI(stream_module);
+
+} else {
+ // In rare cases where 'stream' module is not available by default, throw a helpful exception.
+ iconv.encodeStream = iconv.decodeStream = function() {
+ throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.");
+ };
}
if (false) {}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(25)))
/***/ }),
-/* 109 */
+/* 172 */
/***/ (function(module) {
module.exports = JSON.parse("[[\"0\",\"\\u0000\",127,\"€\"],[\"8140\",\"丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪\",5,\"乲乴\",9,\"乿\",6,\"亇亊\"],[\"8180\",\"亐亖亗亙亜亝亞亣亪亯亰亱亴亶亷亸亹亼亽亾仈仌仏仐仒仚仛仜仠仢仦仧仩仭仮仯仱仴仸仹仺仼仾伀伂\",6,\"伋伌伒\",4,\"伜伝伡伣伨伩伬伭伮伱伳伵伷伹伻伾\",4,\"佄佅佇\",5,\"佒佔佖佡佢佦佨佪佫佭佮佱佲併佷佸佹佺佽侀侁侂侅來侇侊侌侎侐侒侓侕侖侘侙侚侜侞侟価侢\"],[\"8240\",\"侤侫侭侰\",4,\"侶\",8,\"俀俁係俆俇俈俉俋俌俍俒\",4,\"俙俛俠俢俤俥俧俫俬俰俲俴俵俶俷俹俻俼俽俿\",11],[\"8280\",\"個倎倐們倓倕倖倗倛倝倞倠倢倣値倧倫倯\",10,\"倻倽倿偀偁偂偄偅偆偉偊偋偍偐\",4,\"偖偗偘偙偛偝\",7,\"偦\",5,\"偭\",8,\"偸偹偺偼偽傁傂傃傄傆傇傉傊傋傌傎\",20,\"傤傦傪傫傭\",4,\"傳\",6,\"傼\"],[\"8340\",\"傽\",17,\"僐\",5,\"僗僘僙僛\",10,\"僨僩僪僫僯僰僱僲僴僶\",4,\"僼\",9,\"儈\"],[\"8380\",\"儉儊儌\",5,\"儓\",13,\"儢\",28,\"兂兇兊兌兎兏児兒兓兗兘兙兛兝\",4,\"兣兤兦內兩兪兯兲兺兾兿冃冄円冇冊冋冎冏冐冑冓冔冘冚冝冞冟冡冣冦\",4,\"冭冮冴冸冹冺冾冿凁凂凃凅凈凊凍凎凐凒\",5],[\"8440\",\"凘凙凚凜凞凟凢凣凥\",5,\"凬凮凱凲凴凷凾刄刅刉刋刌刏刐刓刔刕刜刞刟刡刢刣別刦刧刪刬刯刱刲刴刵刼刾剄\",5,\"剋剎剏剒剓剕剗剘\"],[\"8480\",\"剙剚剛剝剟剠剢剣剤剦剨剫剬剭剮剰剱剳\",9,\"剾劀劃\",4,\"劉\",6,\"劑劒劔\",6,\"劜劤劥劦劧劮劯劰労\",9,\"勀勁勂勄勅勆勈勊勌勍勎勏勑勓勔動勗務\",5,\"勠勡勢勣勥\",10,\"勱\",7,\"勻勼勽匁匂匃匄匇匉匊匋匌匎\"],[\"8540\",\"匑匒匓匔匘匛匜匞匟匢匤匥匧匨匩匫匬匭匯\",9,\"匼匽區卂卄卆卋卌卍卐協単卙卛卝卥卨卪卬卭卲卶卹卻卼卽卾厀厁厃厇厈厊厎厏\"],[\"8580\",\"厐\",4,\"厖厗厙厛厜厞厠厡厤厧厪厫厬厭厯\",6,\"厷厸厹厺厼厽厾叀參\",4,\"収叏叐叒叓叕叚叜叝叞叡叢叧叴叺叾叿吀吂吅吇吋吔吘吙吚吜吢吤吥吪吰吳吶吷吺吽吿呁呂呄呅呇呉呌呍呎呏呑呚呝\",4,\"呣呥呧呩\",7,\"呴呹呺呾呿咁咃咅咇咈咉咊咍咑咓咗咘咜咞咟咠咡\"],[\"8640\",\"咢咥咮咰咲咵咶咷咹咺咼咾哃哅哊哋哖哘哛哠\",4,\"哫哬哯哰哱哴\",5,\"哻哾唀唂唃唄唅唈唊\",4,\"唒唓唕\",5,\"唜唝唞唟唡唥唦\"],[\"8680\",\"唨唩唫唭唲唴唵唶唸唹唺唻唽啀啂啅啇啈啋\",4,\"啑啒啓啔啗\",4,\"啝啞啟啠啢啣啨啩啫啯\",5,\"啹啺啽啿喅喆喌喍喎喐喒喓喕喖喗喚喛喞喠\",6,\"喨\",8,\"喲喴営喸喺喼喿\",4,\"嗆嗇嗈嗊嗋嗎嗏嗐嗕嗗\",4,\"嗞嗠嗢嗧嗩嗭嗮嗰嗱嗴嗶嗸\",4,\"嗿嘂嘃嘄嘅\"],[\"8740\",\"嘆嘇嘊嘋嘍嘐\",7,\"嘙嘚嘜嘝嘠嘡嘢嘥嘦嘨嘩嘪嘫嘮嘯嘰嘳嘵嘷嘸嘺嘼嘽嘾噀\",11,\"噏\",4,\"噕噖噚噛噝\",4],[\"8780\",\"噣噥噦噧噭噮噯噰噲噳噴噵噷噸噹噺噽\",7,\"嚇\",6,\"嚐嚑嚒嚔\",14,\"嚤\",10,\"嚰\",6,\"嚸嚹嚺嚻嚽\",12,\"囋\",8,\"囕囖囘囙囜団囥\",5,\"囬囮囯囲図囶囷囸囻囼圀圁圂圅圇國\",6],[\"8840\",\"園\",9,\"圝圞圠圡圢圤圥圦圧圫圱圲圴\",4,\"圼圽圿坁坃坄坅坆坈坉坋坒\",4,\"坘坙坢坣坥坧坬坮坰坱坲坴坵坸坹坺坽坾坿垀\"],[\"8880\",\"垁垇垈垉垊垍\",4,\"垔\",6,\"垜垝垞垟垥垨垪垬垯垰垱垳垵垶垷垹\",8,\"埄\",6,\"埌埍埐埑埓埖埗埛埜埞埡埢埣埥\",7,\"埮埰埱埲埳埵埶執埻埼埾埿堁堃堄堅堈堉堊堌堎堏堐堒堓堔堖堗堘堚堛堜堝堟堢堣堥\",4,\"堫\",4,\"報堲堳場堶\",7],[\"8940\",\"堾\",5,\"塅\",6,\"塎塏塐塒塓塕塖塗塙\",4,\"塟\",5,\"塦\",4,\"塭\",16,\"塿墂墄墆墇墈墊墋墌\"],[\"8980\",\"墍\",4,\"墔\",4,\"墛墜墝墠\",7,\"墪\",17,\"墽墾墿壀壂壃壄壆\",10,\"壒壓壔壖\",13,\"壥\",5,\"壭壯壱売壴壵壷壸壺\",7,\"夃夅夆夈\",4,\"夎夐夑夒夓夗夘夛夝夞夠夡夢夣夦夨夬夰夲夳夵夶夻\"],[\"8a40\",\"夽夾夿奀奃奅奆奊奌奍奐奒奓奙奛\",4,\"奡奣奤奦\",12,\"奵奷奺奻奼奾奿妀妅妉妋妌妎妏妐妑妔妕妘妚妛妜妝妟妠妡妢妦\"],[\"8a80\",\"妧妬妭妰妱妳\",5,\"妺妼妽妿\",6,\"姇姈姉姌姍姎姏姕姖姙姛姞\",4,\"姤姦姧姩姪姫姭\",11,\"姺姼姽姾娀娂娊娋娍娎娏娐娒娔娕娖娗娙娚娛娝娞娡娢娤娦娧娨娪\",6,\"娳娵娷\",4,\"娽娾娿婁\",4,\"婇婈婋\",9,\"婖婗婘婙婛\",5],[\"8b40\",\"婡婣婤婥婦婨婩婫\",8,\"婸婹婻婼婽婾媀\",17,\"媓\",6,\"媜\",13,\"媫媬\"],[\"8b80\",\"媭\",4,\"媴媶媷媹\",4,\"媿嫀嫃\",5,\"嫊嫋嫍\",4,\"嫓嫕嫗嫙嫚嫛嫝嫞嫟嫢嫤嫥嫧嫨嫪嫬\",4,\"嫲\",22,\"嬊\",11,\"嬘\",25,\"嬳嬵嬶嬸\",7,\"孁\",6],[\"8c40\",\"孈\",7,\"孒孖孞孠孡孧孨孫孭孮孯孲孴孶孷學孹孻孼孾孿宂宆宊宍宎宐宑宒宔宖実宧宨宩宬宭宮宯宱宲宷宺宻宼寀寁寃寈寉寊寋寍寎寏\"],[\"8c80\",\"寑寔\",8,\"寠寢寣實寧審\",4,\"寯寱\",6,\"寽対尀専尃尅將專尋尌對導尐尒尓尗尙尛尞尟尠尡尣尦尨尩尪尫尭尮尯尰尲尳尵尶尷屃屄屆屇屌屍屒屓屔屖屗屘屚屛屜屝屟屢層屧\",6,\"屰屲\",6,\"屻屼屽屾岀岃\",4,\"岉岊岋岎岏岒岓岕岝\",4,\"岤\",4],[\"8d40\",\"岪岮岯岰岲岴岶岹岺岻岼岾峀峂峃峅\",5,\"峌\",5,\"峓\",5,\"峚\",6,\"峢峣峧峩峫峬峮峯峱\",9,\"峼\",4],[\"8d80\",\"崁崄崅崈\",5,\"崏\",4,\"崕崗崘崙崚崜崝崟\",4,\"崥崨崪崫崬崯\",4,\"崵\",7,\"崿\",7,\"嵈嵉嵍\",10,\"嵙嵚嵜嵞\",10,\"嵪嵭嵮嵰嵱嵲嵳嵵\",12,\"嶃\",21,\"嶚嶛嶜嶞嶟嶠\"],[\"8e40\",\"嶡\",21,\"嶸\",12,\"巆\",6,\"巎\",12,\"巜巟巠巣巤巪巬巭\"],[\"8e80\",\"巰巵巶巸\",4,\"巿帀帄帇帉帊帋帍帎帒帓帗帞\",7,\"帨\",4,\"帯帰帲\",4,\"帹帺帾帿幀幁幃幆\",5,\"幍\",6,\"幖\",4,\"幜幝幟幠幣\",14,\"幵幷幹幾庁庂広庅庈庉庌庍庎庒庘庛庝庡庢庣庤庨\",4,\"庮\",4,\"庴庺庻庼庽庿\",6],[\"8f40\",\"廆廇廈廋\",5,\"廔廕廗廘廙廚廜\",11,\"廩廫\",8,\"廵廸廹廻廼廽弅弆弇弉弌弍弎弐弒弔弖弙弚弜弝弞弡弢弣弤\"],[\"8f80\",\"弨弫弬弮弰弲\",6,\"弻弽弾弿彁\",14,\"彑彔彙彚彛彜彞彟彠彣彥彧彨彫彮彯彲彴彵彶彸彺彽彾彿徃徆徍徎徏徑従徔徖徚徛徝從徟徠徢\",5,\"復徫徬徯\",5,\"徶徸徹徺徻徾\",4,\"忇忈忊忋忎忓忔忕忚忛応忞忟忢忣忥忦忨忩忬忯忰忲忳忴忶忷忹忺忼怇\"],[\"9040\",\"怈怉怋怌怐怑怓怗怘怚怞怟怢怣怤怬怭怮怰\",4,\"怶\",4,\"怽怾恀恄\",6,\"恌恎恏恑恓恔恖恗恘恛恜恞恟恠恡恥恦恮恱恲恴恵恷恾悀\"],[\"9080\",\"悁悂悅悆悇悈悊悋悎悏悐悑悓悕悗悘悙悜悞悡悢悤悥悧悩悪悮悰悳悵悶悷悹悺悽\",7,\"惇惈惉惌\",4,\"惒惓惔惖惗惙惛惞惡\",4,\"惪惱惲惵惷惸惻\",4,\"愂愃愄愅愇愊愋愌愐\",4,\"愖愗愘愙愛愜愝愞愡愢愥愨愩愪愬\",18,\"慀\",6],[\"9140\",\"慇慉態慍慏慐慒慓慔慖\",6,\"慞慟慠慡慣慤慥慦慩\",6,\"慱慲慳慴慶慸\",18,\"憌憍憏\",4,\"憕\"],[\"9180\",\"憖\",6,\"憞\",8,\"憪憫憭\",9,\"憸\",5,\"憿懀懁懃\",4,\"應懌\",4,\"懓懕\",16,\"懧\",13,\"懶\",8,\"戀\",5,\"戇戉戓戔戙戜戝戞戠戣戦戧戨戩戫戭戯戰戱戲戵戶戸\",4,\"扂扄扅扆扊\"],[\"9240\",\"扏扐払扖扗扙扚扜\",6,\"扤扥扨扱扲扴扵扷扸扺扻扽抁抂抃抅抆抇抈抋\",5,\"抔抙抜抝択抣抦抧抩抪抭抮抯抰抲抳抴抶抷抸抺抾拀拁\"],[\"9280\",\"拃拋拏拑拕拝拞拠拡拤拪拫拰拲拵拸拹拺拻挀挃挄挅挆挊挋挌挍挏挐挒挓挔挕挗挘挙挜挦挧挩挬挭挮挰挱挳\",5,\"挻挼挾挿捀捁捄捇捈捊捑捒捓捔捖\",7,\"捠捤捥捦捨捪捫捬捯捰捲捳捴捵捸捹捼捽捾捿掁掃掄掅掆掋掍掑掓掔掕掗掙\",6,\"採掤掦掫掯掱掲掵掶掹掻掽掿揀\"],[\"9340\",\"揁揂揃揅揇揈揊揋揌揑揓揔揕揗\",6,\"揟揢揤\",4,\"揫揬揮揯揰揱揳揵揷揹揺揻揼揾搃搄搆\",4,\"損搎搑搒搕\",5,\"搝搟搢搣搤\"],[\"9380\",\"搥搧搨搩搫搮\",5,\"搵\",4,\"搻搼搾摀摂摃摉摋\",6,\"摓摕摖摗摙\",4,\"摟\",7,\"摨摪摫摬摮\",9,\"摻\",6,\"撃撆撈\",8,\"撓撔撗撘撚撛撜撝撟\",4,\"撥撦撧撨撪撫撯撱撲撳撴撶撹撻撽撾撿擁擃擄擆\",6,\"擏擑擓擔擕擖擙據\"],[\"9440\",\"擛擜擝擟擠擡擣擥擧\",24,\"攁\",7,\"攊\",7,\"攓\",4,\"攙\",8],[\"9480\",\"攢攣攤攦\",4,\"攬攭攰攱攲攳攷攺攼攽敀\",4,\"敆敇敊敋敍敎敐敒敓敔敗敘敚敜敟敠敡敤敥敧敨敩敪敭敮敯敱敳敵敶數\",14,\"斈斉斊斍斎斏斒斔斕斖斘斚斝斞斠斢斣斦斨斪斬斮斱\",7,\"斺斻斾斿旀旂旇旈旉旊旍旐旑旓旔旕旘\",7,\"旡旣旤旪旫\"],[\"9540\",\"旲旳旴旵旸旹旻\",4,\"昁昄昅昇昈昉昋昍昐昑昒昖昗昘昚昛昜昞昡昢昣昤昦昩昪昫昬昮昰昲昳昷\",4,\"昽昿晀時晄\",6,\"晍晎晐晑晘\"],[\"9580\",\"晙晛晜晝晞晠晢晣晥晧晩\",4,\"晱晲晳晵晸晹晻晼晽晿暀暁暃暅暆暈暉暊暋暍暎暏暐暒暓暔暕暘\",4,\"暞\",8,\"暩\",4,\"暯\",4,\"暵暶暷暸暺暻暼暽暿\",25,\"曚曞\",7,\"曧曨曪\",5,\"曱曵曶書曺曻曽朁朂會\"],[\"9640\",\"朄朅朆朇朌朎朏朑朒朓朖朘朙朚朜朞朠\",5,\"朧朩朮朰朲朳朶朷朸朹朻朼朾朿杁杄杅杇杊杋杍杒杔杕杗\",4,\"杝杢杣杤杦杧杫杬杮東杴杶\"],[\"9680\",\"杸杹杺杻杽枀枂枃枅枆枈枊枌枍枎枏枑枒枓枔枖枙枛枟枠枡枤枦枩枬枮枱枲枴枹\",7,\"柂柅\",9,\"柕柖柗柛柟柡柣柤柦柧柨柪柫柭柮柲柵\",7,\"柾栁栂栃栄栆栍栐栒栔栕栘\",4,\"栞栟栠栢\",6,\"栫\",6,\"栴栵栶栺栻栿桇桋桍桏桒桖\",5],[\"9740\",\"桜桝桞桟桪桬\",7,\"桵桸\",8,\"梂梄梇\",7,\"梐梑梒梔梕梖梘\",9,\"梣梤梥梩梪梫梬梮梱梲梴梶梷梸\"],[\"9780\",\"梹\",6,\"棁棃\",5,\"棊棌棎棏棐棑棓棔棖棗棙棛\",4,\"棡棢棤\",9,\"棯棲棳棴棶棷棸棻棽棾棿椀椂椃椄椆\",4,\"椌椏椑椓\",11,\"椡椢椣椥\",7,\"椮椯椱椲椳椵椶椷椸椺椻椼椾楀楁楃\",16,\"楕楖楘楙楛楜楟\"],[\"9840\",\"楡楢楤楥楧楨楩楪楬業楯楰楲\",4,\"楺楻楽楾楿榁榃榅榊榋榌榎\",5,\"榖榗榙榚榝\",9,\"榩榪榬榮榯榰榲榳榵榶榸榹榺榼榽\"],[\"9880\",\"榾榿槀槂\",7,\"構槍槏槑槒槓槕\",5,\"槜槝槞槡\",11,\"槮槯槰槱槳\",9,\"槾樀\",9,\"樋\",11,\"標\",5,\"樠樢\",5,\"権樫樬樭樮樰樲樳樴樶\",6,\"樿\",4,\"橅橆橈\",7,\"橑\",6,\"橚\"],[\"9940\",\"橜\",4,\"橢橣橤橦\",10,\"橲\",6,\"橺橻橽橾橿檁檂檃檅\",8,\"檏檒\",4,\"檘\",7,\"檡\",5],[\"9980\",\"檧檨檪檭\",114,\"欥欦欨\",6],[\"9a40\",\"欯欰欱欳欴欵欶欸欻欼欽欿歀歁歂歄歅歈歊歋歍\",11,\"歚\",7,\"歨歩歫\",13,\"歺歽歾歿殀殅殈\"],[\"9a80\",\"殌殎殏殐殑殔殕殗殘殙殜\",4,\"殢\",7,\"殫\",7,\"殶殸\",6,\"毀毃毄毆\",4,\"毌毎毐毑毘毚毜\",4,\"毢\",7,\"毬毭毮毰毱毲毴毶毷毸毺毻毼毾\",6,\"氈\",4,\"氎氒気氜氝氞氠氣氥氫氬氭氱氳氶氷氹氺氻氼氾氿汃汄汅汈汋\",4,\"汑汒汓汖汘\"],[\"9b40\",\"汙汚汢汣汥汦汧汫\",4,\"汱汳汵汷汸決汻汼汿沀沄沇沊沋沍沎沑沒沕沖沗沘沚沜沝沞沠沢沨沬沯沰沴沵沶沷沺泀況泂泃泆泇泈泋泍泎泏泑泒泘\"],[\"9b80\",\"泙泚泜泝泟泤泦泧泩泬泭泲泴泹泿洀洂洃洅洆洈洉洊洍洏洐洑洓洔洕洖洘洜洝洟\",5,\"洦洨洩洬洭洯洰洴洶洷洸洺洿浀浂浄浉浌浐浕浖浗浘浛浝浟浡浢浤浥浧浨浫浬浭浰浱浲浳浵浶浹浺浻浽\",4,\"涃涄涆涇涊涋涍涏涐涒涖\",4,\"涜涢涥涬涭涰涱涳涴涶涷涹\",5,\"淁淂淃淈淉淊\"],[\"9c40\",\"淍淎淏淐淒淓淔淕淗淚淛淜淟淢淣淥淧淨淩淪淭淯淰淲淴淵淶淸淺淽\",7,\"渆渇済渉渋渏渒渓渕渘渙減渜渞渟渢渦渧渨渪測渮渰渱渳渵\"],[\"9c80\",\"渶渷渹渻\",7,\"湅\",7,\"湏湐湑湒湕湗湙湚湜湝湞湠\",10,\"湬湭湯\",14,\"満溁溂溄溇溈溊\",4,\"溑\",6,\"溙溚溛溝溞溠溡溣溤溦溨溩溫溬溭溮溰溳溵溸溹溼溾溿滀滃滄滅滆滈滉滊滌滍滎滐滒滖滘滙滛滜滝滣滧滪\",5],[\"9d40\",\"滰滱滲滳滵滶滷滸滺\",7,\"漃漄漅漇漈漊\",4,\"漐漑漒漖\",9,\"漡漢漣漥漦漧漨漬漮漰漲漴漵漷\",6,\"漿潀潁潂\"],[\"9d80\",\"潃潄潅潈潉潊潌潎\",9,\"潙潚潛潝潟潠潡潣潤潥潧\",5,\"潯潰潱潳潵潶潷潹潻潽\",6,\"澅澆澇澊澋澏\",12,\"澝澞澟澠澢\",4,\"澨\",10,\"澴澵澷澸澺\",5,\"濁濃\",5,\"濊\",6,\"濓\",10,\"濟濢濣濤濥\"],[\"9e40\",\"濦\",7,\"濰\",32,\"瀒\",7,\"瀜\",6,\"瀤\",6],[\"9e80\",\"瀫\",9,\"瀶瀷瀸瀺\",17,\"灍灎灐\",13,\"灟\",11,\"灮灱灲灳灴灷灹灺灻災炁炂炃炄炆炇炈炋炌炍炏炐炑炓炗炘炚炛炞\",12,\"炰炲炴炵炶為炾炿烄烅烆烇烉烋\",12,\"烚\"],[\"9f40\",\"烜烝烞烠烡烢烣烥烪烮烰\",6,\"烸烺烻烼烾\",10,\"焋\",4,\"焑焒焔焗焛\",10,\"焧\",7,\"焲焳焴\"],[\"9f80\",\"焵焷\",13,\"煆煇煈煉煋煍煏\",12,\"煝煟\",4,\"煥煩\",4,\"煯煰煱煴煵煶煷煹煻煼煾\",5,\"熅\",4,\"熋熌熍熎熐熑熒熓熕熖熗熚\",4,\"熡\",6,\"熩熪熫熭\",5,\"熴熶熷熸熺\",8,\"燄\",9,\"燏\",4],[\"a040\",\"燖\",9,\"燡燢燣燤燦燨\",5,\"燯\",9,\"燺\",11,\"爇\",19],[\"a080\",\"爛爜爞\",9,\"爩爫爭爮爯爲爳爴爺爼爾牀\",6,\"牉牊牋牎牏牐牑牓牔牕牗牘牚牜牞牠牣牤牥牨牪牫牬牭牰牱牳牴牶牷牸牻牼牽犂犃犅\",4,\"犌犎犐犑犓\",11,\"犠\",11,\"犮犱犲犳犵犺\",6,\"狅狆狇狉狊狋狌狏狑狓狔狕狖狘狚狛\"],[\"a1a1\",\" 、。·ˉˇ¨〃々—~‖…‘’“”〔〕〈\",7,\"〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓\"],[\"a2a1\",\"ⅰ\",9],[\"a2b1\",\"⒈\",19,\"⑴\",19,\"①\",9],[\"a2e5\",\"㈠\",9],[\"a2f1\",\"Ⅰ\",11],[\"a3a1\",\"!"#¥%\",88,\" ̄\"],[\"a4a1\",\"ぁ\",82],[\"a5a1\",\"ァ\",85],[\"a6a1\",\"Α\",16,\"Σ\",6],[\"a6c1\",\"α\",16,\"σ\",6],[\"a6e0\",\"︵︶︹︺︿﹀︽︾﹁﹂﹃﹄\"],[\"a6ee\",\"︻︼︷︸︱\"],[\"a6f4\",\"︳︴\"],[\"a7a1\",\"А\",5,\"ЁЖ\",25],[\"a7d1\",\"а\",5,\"ёж\",25],[\"a840\",\"ˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═\",35,\"▁\",6],[\"a880\",\"█\",7,\"▓▔▕▼▽◢◣◤◥☉⊕〒〝〞\"],[\"a8a1\",\"āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ\"],[\"a8bd\",\"ńň\"],[\"a8c0\",\"ɡ\"],[\"a8c5\",\"ㄅ\",36],[\"a940\",\"〡\",8,\"㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦\"],[\"a959\",\"℡㈱\"],[\"a95c\",\"‐\"],[\"a960\",\"ー゛゜ヽヾ〆ゝゞ﹉\",9,\"﹔﹕﹖﹗﹙\",8],[\"a980\",\"﹢\",4,\"﹨﹩﹪﹫\"],[\"a996\",\"〇\"],[\"a9a4\",\"─\",75],[\"aa40\",\"狜狝狟狢\",5,\"狪狫狵狶狹狽狾狿猀猂猄\",5,\"猋猌猍猏猐猑猒猔猘猙猚猟猠猣猤猦猧猨猭猯猰猲猳猵猶猺猻猼猽獀\",8],[\"aa80\",\"獉獊獋獌獎獏獑獓獔獕獖獘\",7,\"獡\",10,\"獮獰獱\"],[\"ab40\",\"獲\",11,\"獿\",4,\"玅玆玈玊玌玍玏玐玒玓玔玕玗玘玙玚玜玝玞玠玡玣\",5,\"玪玬玭玱玴玵玶玸玹玼玽玾玿珁珃\",4],[\"ab80\",\"珋珌珎珒\",6,\"珚珛珜珝珟珡珢珣珤珦珨珪珫珬珮珯珰珱珳\",4],[\"ac40\",\"珸\",10,\"琄琇琈琋琌琍琎琑\",8,\"琜\",5,\"琣琤琧琩琫琭琯琱琲琷\",4,\"琽琾琿瑀瑂\",11],[\"ac80\",\"瑎\",6,\"瑖瑘瑝瑠\",12,\"瑮瑯瑱\",4,\"瑸瑹瑺\"],[\"ad40\",\"瑻瑼瑽瑿璂璄璅璆璈璉璊璌璍璏璑\",10,\"璝璟\",7,\"璪\",15,\"璻\",12],[\"ad80\",\"瓈\",9,\"瓓\",8,\"瓝瓟瓡瓥瓧\",6,\"瓰瓱瓲\"],[\"ae40\",\"瓳瓵瓸\",6,\"甀甁甂甃甅\",7,\"甎甐甒甔甕甖甗甛甝甞甠\",4,\"甦甧甪甮甴甶甹甼甽甿畁畂畃畄畆畇畉畊畍畐畑畒畓畕畖畗畘\"],[\"ae80\",\"畝\",7,\"畧畨畩畫\",6,\"畳畵當畷畺\",4,\"疀疁疂疄疅疇\"],[\"af40\",\"疈疉疊疌疍疎疐疓疕疘疛疜疞疢疦\",4,\"疭疶疷疺疻疿痀痁痆痋痌痎痏痐痑痓痗痙痚痜痝痟痠痡痥痩痬痭痮痯痲痳痵痶痷痸痺痻痽痾瘂瘄瘆瘇\"],[\"af80\",\"瘈瘉瘋瘍瘎瘏瘑瘒瘓瘔瘖瘚瘜瘝瘞瘡瘣瘧瘨瘬瘮瘯瘱瘲瘶瘷瘹瘺瘻瘽癁療癄\"],[\"b040\",\"癅\",6,\"癎\",5,\"癕癗\",4,\"癝癟癠癡癢癤\",6,\"癬癭癮癰\",7,\"癹発發癿皀皁皃皅皉皊皌皍皏皐皒皔皕皗皘皚皛\"],[\"b080\",\"皜\",7,\"皥\",8,\"皯皰皳皵\",9,\"盀盁盃啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥\"],[\"b140\",\"盄盇盉盋盌盓盕盙盚盜盝盞盠\",4,\"盦\",7,\"盰盳盵盶盷盺盻盽盿眀眂眃眅眆眊県眎\",10,\"眛眜眝眞眡眣眤眥眧眪眫\"],[\"b180\",\"眬眮眰\",4,\"眹眻眽眾眿睂睄睅睆睈\",7,\"睒\",7,\"睜薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳\"],[\"b240\",\"睝睞睟睠睤睧睩睪睭\",11,\"睺睻睼瞁瞂瞃瞆\",5,\"瞏瞐瞓\",11,\"瞡瞣瞤瞦瞨瞫瞭瞮瞯瞱瞲瞴瞶\",4],[\"b280\",\"瞼瞾矀\",12,\"矎\",8,\"矘矙矚矝\",4,\"矤病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖\"],[\"b340\",\"矦矨矪矯矰矱矲矴矵矷矹矺矻矼砃\",5,\"砊砋砎砏砐砓砕砙砛砞砠砡砢砤砨砪砫砮砯砱砲砳砵砶砽砿硁硂硃硄硆硈硉硊硋硍硏硑硓硔硘硙硚\"],[\"b380\",\"硛硜硞\",11,\"硯\",7,\"硸硹硺硻硽\",6,\"场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚\"],[\"b440\",\"碄碅碆碈碊碋碏碐碒碔碕碖碙碝碞碠碢碤碦碨\",7,\"碵碶碷碸確碻碼碽碿磀磂磃磄磆磇磈磌磍磎磏磑磒磓磖磗磘磚\",9],[\"b480\",\"磤磥磦磧磩磪磫磭\",4,\"磳磵磶磸磹磻\",5,\"礂礃礄礆\",6,\"础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮\"],[\"b540\",\"礍\",5,\"礔\",9,\"礟\",4,\"礥\",14,\"礵\",4,\"礽礿祂祃祄祅祇祊\",8,\"祔祕祘祙祡祣\"],[\"b580\",\"祤祦祩祪祫祬祮祰\",6,\"祹祻\",4,\"禂禃禆禇禈禉禋禌禍禎禐禑禒怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠\"],[\"b640\",\"禓\",6,\"禛\",11,\"禨\",10,\"禴\",4,\"禼禿秂秄秅秇秈秊秌秎秏秐秓秔秖秗秙\",5,\"秠秡秢秥秨秪\"],[\"b680\",\"秬秮秱\",6,\"秹秺秼秾秿稁稄稅稇稈稉稊稌稏\",4,\"稕稖稘稙稛稜丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二\"],[\"b740\",\"稝稟稡稢稤\",14,\"稴稵稶稸稺稾穀\",5,\"穇\",9,\"穒\",4,\"穘\",16],[\"b780\",\"穩\",6,\"穱穲穳穵穻穼穽穾窂窅窇窉窊窋窌窎窏窐窓窔窙窚窛窞窡窢贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服\"],[\"b840\",\"窣窤窧窩窪窫窮\",4,\"窴\",10,\"竀\",10,\"竌\",9,\"竗竘竚竛竜竝竡竢竤竧\",5,\"竮竰竱竲竳\"],[\"b880\",\"竴\",4,\"竻竼竾笀笁笂笅笇笉笌笍笎笐笒笓笖笗笘笚笜笝笟笡笢笣笧笩笭浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹\"],[\"b940\",\"笯笰笲笴笵笶笷笹笻笽笿\",5,\"筆筈筊筍筎筓筕筗筙筜筞筟筡筣\",10,\"筯筰筳筴筶筸筺筼筽筿箁箂箃箄箆\",6,\"箎箏\"],[\"b980\",\"箑箒箓箖箘箙箚箛箞箟箠箣箤箥箮箯箰箲箳箵箶箷箹\",7,\"篂篃範埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈\"],[\"ba40\",\"篅篈築篊篋篍篎篏篐篒篔\",4,\"篛篜篞篟篠篢篣篤篧篨篩篫篬篭篯篰篲\",4,\"篸篹篺篻篽篿\",7,\"簈簉簊簍簎簐\",5,\"簗簘簙\"],[\"ba80\",\"簚\",4,\"簠\",5,\"簨簩簫\",12,\"簹\",5,\"籂骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖\"],[\"bb40\",\"籃\",9,\"籎\",36,\"籵\",5,\"籾\",9],[\"bb80\",\"粈粊\",6,\"粓粔粖粙粚粛粠粡粣粦粧粨粩粫粬粭粯粰粴\",4,\"粺粻弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕\"],[\"bc40\",\"粿糀糂糃糄糆糉糋糎\",6,\"糘糚糛糝糞糡\",6,\"糩\",5,\"糰\",7,\"糹糺糼\",13,\"紋\",5],[\"bc80\",\"紑\",14,\"紡紣紤紥紦紨紩紪紬紭紮細\",6,\"肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件\"],[\"bd40\",\"紷\",54,\"絯\",7],[\"bd80\",\"絸\",32,\"健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸\"],[\"be40\",\"継\",12,\"綧\",6,\"綯\",42],[\"be80\",\"線\",32,\"尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻\"],[\"bf40\",\"緻\",62],[\"bf80\",\"縺縼\",4,\"繂\",4,\"繈\",21,\"俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀\"],[\"c040\",\"繞\",35,\"纃\",23,\"纜纝纞\"],[\"c080\",\"纮纴纻纼绖绤绬绹缊缐缞缷缹缻\",6,\"罃罆\",9,\"罒罓馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐\"],[\"c140\",\"罖罙罛罜罝罞罠罣\",4,\"罫罬罭罯罰罳罵罶罷罸罺罻罼罽罿羀羂\",7,\"羋羍羏\",4,\"羕\",4,\"羛羜羠羢羣羥羦羨\",6,\"羱\"],[\"c180\",\"羳\",4,\"羺羻羾翀翂翃翄翆翇翈翉翋翍翏\",4,\"翖翗翙\",5,\"翢翣痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿\"],[\"c240\",\"翤翧翨翪翫翬翭翯翲翴\",6,\"翽翾翿耂耇耈耉耊耎耏耑耓耚耛耝耞耟耡耣耤耫\",5,\"耲耴耹耺耼耾聀聁聄聅聇聈聉聎聏聐聑聓聕聖聗\"],[\"c280\",\"聙聛\",13,\"聫\",5,\"聲\",11,\"隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫\"],[\"c340\",\"聾肁肂肅肈肊肍\",5,\"肔肕肗肙肞肣肦肧肨肬肰肳肵肶肸肹肻胅胇\",4,\"胏\",6,\"胘胟胠胢胣胦胮胵胷胹胻胾胿脀脁脃脄脅脇脈脋\"],[\"c380\",\"脌脕脗脙脛脜脝脟\",12,\"脭脮脰脳脴脵脷脹\",4,\"脿谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸\"],[\"c440\",\"腀\",5,\"腇腉腍腎腏腒腖腗腘腛\",4,\"腡腢腣腤腦腨腪腫腬腯腲腳腵腶腷腸膁膃\",4,\"膉膋膌膍膎膐膒\",5,\"膙膚膞\",4,\"膤膥\"],[\"c480\",\"膧膩膫\",7,\"膴\",5,\"膼膽膾膿臄臅臇臈臉臋臍\",6,\"摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁\"],[\"c540\",\"臔\",14,\"臤臥臦臨臩臫臮\",4,\"臵\",5,\"臽臿舃與\",4,\"舎舏舑舓舕\",5,\"舝舠舤舥舦舧舩舮舲舺舼舽舿\"],[\"c580\",\"艀艁艂艃艅艆艈艊艌艍艎艐\",7,\"艙艛艜艝艞艠\",7,\"艩拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗\"],[\"c640\",\"艪艫艬艭艱艵艶艷艸艻艼芀芁芃芅芆芇芉芌芐芓芔芕芖芚芛芞芠芢芣芧芲芵芶芺芻芼芿苀苂苃苅苆苉苐苖苙苚苝苢苧苨苩苪苬苭苮苰苲苳苵苶苸\"],[\"c680\",\"苺苼\",4,\"茊茋茍茐茒茓茖茘茙茝\",9,\"茩茪茮茰茲茷茻茽啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐\"],[\"c740\",\"茾茿荁荂荄荅荈荊\",4,\"荓荕\",4,\"荝荢荰\",6,\"荹荺荾\",6,\"莇莈莊莋莌莍莏莐莑莔莕莖莗莙莚莝莟莡\",6,\"莬莭莮\"],[\"c780\",\"莯莵莻莾莿菂菃菄菆菈菉菋菍菎菐菑菒菓菕菗菙菚菛菞菢菣菤菦菧菨菫菬菭恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠\"],[\"c840\",\"菮華菳\",4,\"菺菻菼菾菿萀萂萅萇萈萉萊萐萒\",5,\"萙萚萛萞\",5,\"萩\",7,\"萲\",5,\"萹萺萻萾\",7,\"葇葈葉\"],[\"c880\",\"葊\",6,\"葒\",4,\"葘葝葞葟葠葢葤\",4,\"葪葮葯葰葲葴葷葹葻葼取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁\"],[\"c940\",\"葽\",4,\"蒃蒄蒅蒆蒊蒍蒏\",7,\"蒘蒚蒛蒝蒞蒟蒠蒢\",12,\"蒰蒱蒳蒵蒶蒷蒻蒼蒾蓀蓂蓃蓅蓆蓇蓈蓋蓌蓎蓏蓒蓔蓕蓗\"],[\"c980\",\"蓘\",4,\"蓞蓡蓢蓤蓧\",4,\"蓭蓮蓯蓱\",10,\"蓽蓾蔀蔁蔂伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳\"],[\"ca40\",\"蔃\",8,\"蔍蔎蔏蔐蔒蔔蔕蔖蔘蔙蔛蔜蔝蔞蔠蔢\",8,\"蔭\",9,\"蔾\",4,\"蕄蕅蕆蕇蕋\",10],[\"ca80\",\"蕗蕘蕚蕛蕜蕝蕟\",4,\"蕥蕦蕧蕩\",8,\"蕳蕵蕶蕷蕸蕼蕽蕿薀薁省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱\"],[\"cb40\",\"薂薃薆薈\",6,\"薐\",10,\"薝\",6,\"薥薦薧薩薫薬薭薱\",5,\"薸薺\",6,\"藂\",6,\"藊\",4,\"藑藒\"],[\"cb80\",\"藔藖\",5,\"藝\",6,\"藥藦藧藨藪\",14,\"恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔\"],[\"cc40\",\"藹藺藼藽藾蘀\",4,\"蘆\",10,\"蘒蘓蘔蘕蘗\",15,\"蘨蘪\",13,\"蘹蘺蘻蘽蘾蘿虀\"],[\"cc80\",\"虁\",11,\"虒虓處\",4,\"虛虜虝號虠虡虣\",7,\"獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃\"],[\"cd40\",\"虭虯虰虲\",6,\"蚃\",6,\"蚎\",4,\"蚔蚖\",5,\"蚞\",4,\"蚥蚦蚫蚭蚮蚲蚳蚷蚸蚹蚻\",4,\"蛁蛂蛃蛅蛈蛌蛍蛒蛓蛕蛖蛗蛚蛜\"],[\"cd80\",\"蛝蛠蛡蛢蛣蛥蛦蛧蛨蛪蛫蛬蛯蛵蛶蛷蛺蛻蛼蛽蛿蜁蜄蜅蜆蜋蜌蜎蜏蜐蜑蜔蜖汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威\"],[\"ce40\",\"蜙蜛蜝蜟蜠蜤蜦蜧蜨蜪蜫蜬蜭蜯蜰蜲蜳蜵蜶蜸蜹蜺蜼蜽蝀\",6,\"蝊蝋蝍蝏蝐蝑蝒蝔蝕蝖蝘蝚\",5,\"蝡蝢蝦\",7,\"蝯蝱蝲蝳蝵\"],[\"ce80\",\"蝷蝸蝹蝺蝿螀螁螄螆螇螉螊螌螎\",4,\"螔螕螖螘\",6,\"螠\",4,\"巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺\"],[\"cf40\",\"螥螦螧螩螪螮螰螱螲螴螶螷螸螹螻螼螾螿蟁\",4,\"蟇蟈蟉蟌\",4,\"蟔\",6,\"蟜蟝蟞蟟蟡蟢蟣蟤蟦蟧蟨蟩蟫蟬蟭蟯\",9],[\"cf80\",\"蟺蟻蟼蟽蟿蠀蠁蠂蠄\",5,\"蠋\",7,\"蠔蠗蠘蠙蠚蠜\",4,\"蠣稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓\"],[\"d040\",\"蠤\",13,\"蠳\",5,\"蠺蠻蠽蠾蠿衁衂衃衆\",5,\"衎\",5,\"衕衖衘衚\",6,\"衦衧衪衭衯衱衳衴衵衶衸衹衺\"],[\"d080\",\"衻衼袀袃袆袇袉袊袌袎袏袐袑袓袔袕袗\",4,\"袝\",4,\"袣袥\",5,\"小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄\"],[\"d140\",\"袬袮袯袰袲\",4,\"袸袹袺袻袽袾袿裀裃裄裇裈裊裋裌裍裏裐裑裓裖裗裚\",4,\"裠裡裦裧裩\",6,\"裲裵裶裷裺裻製裿褀褁褃\",5],[\"d180\",\"褉褋\",4,\"褑褔\",4,\"褜\",4,\"褢褣褤褦褧褨褩褬褭褮褯褱褲褳褵褷选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶\"],[\"d240\",\"褸\",8,\"襂襃襅\",24,\"襠\",5,\"襧\",19,\"襼\"],[\"d280\",\"襽襾覀覂覄覅覇\",26,\"摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐\"],[\"d340\",\"覢\",30,\"觃觍觓觔觕觗觘觙觛觝觟觠觡觢觤觧觨觩觪觬觭觮觰觱觲觴\",6],[\"d380\",\"觻\",4,\"訁\",5,\"計\",21,\"印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉\"],[\"d440\",\"訞\",31,\"訿\",8,\"詉\",21],[\"d480\",\"詟\",25,\"詺\",6,\"浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧\"],[\"d540\",\"誁\",7,\"誋\",7,\"誔\",46],[\"d580\",\"諃\",32,\"铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政\"],[\"d640\",\"諤\",34,\"謈\",27],[\"d680\",\"謤謥謧\",30,\"帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑\"],[\"d740\",\"譆\",31,\"譧\",4,\"譭\",25],[\"d780\",\"讇\",24,\"讬讱讻诇诐诪谉谞住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座\"],[\"d840\",\"谸\",8,\"豂豃豄豅豈豊豋豍\",7,\"豖豗豘豙豛\",5,\"豣\",6,\"豬\",6,\"豴豵豶豷豻\",6,\"貃貄貆貇\"],[\"d880\",\"貈貋貍\",6,\"貕貖貗貙\",20,\"亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝\"],[\"d940\",\"貮\",62],[\"d980\",\"賭\",32,\"佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼\"],[\"da40\",\"贎\",14,\"贠赑赒赗赟赥赨赩赪赬赮赯赱赲赸\",8,\"趂趃趆趇趈趉趌\",4,\"趒趓趕\",9,\"趠趡\"],[\"da80\",\"趢趤\",12,\"趲趶趷趹趻趽跀跁跂跅跇跈跉跊跍跐跒跓跔凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺\"],[\"db40\",\"跕跘跙跜跠跡跢跥跦跧跩跭跮跰跱跲跴跶跼跾\",6,\"踆踇踈踋踍踎踐踑踒踓踕\",7,\"踠踡踤\",4,\"踫踭踰踲踳踴踶踷踸踻踼踾\"],[\"db80\",\"踿蹃蹅蹆蹌\",4,\"蹓\",5,\"蹚\",11,\"蹧蹨蹪蹫蹮蹱邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝\"],[\"dc40\",\"蹳蹵蹷\",4,\"蹽蹾躀躂躃躄躆躈\",6,\"躑躒躓躕\",6,\"躝躟\",11,\"躭躮躰躱躳\",6,\"躻\",7],[\"dc80\",\"軃\",10,\"軏\",21,\"堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥\"],[\"dd40\",\"軥\",62],[\"dd80\",\"輤\",32,\"荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺\"],[\"de40\",\"轅\",32,\"轪辀辌辒辝辠辡辢辤辥辦辧辪辬辭辮辯農辳辴辵辷辸辺辻込辿迀迃迆\"],[\"de80\",\"迉\",4,\"迏迒迖迗迚迠迡迣迧迬迯迱迲迴迵迶迺迻迼迾迿逇逈逌逎逓逕逘蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖\"],[\"df40\",\"這逜連逤逥逧\",5,\"逰\",4,\"逷逹逺逽逿遀遃遅遆遈\",4,\"過達違遖遙遚遜\",5,\"遤遦遧適遪遫遬遯\",4,\"遶\",6,\"遾邁\"],[\"df80\",\"還邅邆邇邉邊邌\",4,\"邒邔邖邘邚邜邞邟邠邤邥邧邨邩邫邭邲邷邼邽邿郀摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼\"],[\"e040\",\"郂郃郆郈郉郋郌郍郒郔郕郖郘郙郚郞郟郠郣郤郥郩郪郬郮郰郱郲郳郵郶郷郹郺郻郼郿鄀鄁鄃鄅\",19,\"鄚鄛鄜\"],[\"e080\",\"鄝鄟鄠鄡鄤\",10,\"鄰鄲\",6,\"鄺\",8,\"酄唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼\"],[\"e140\",\"酅酇酈酑酓酔酕酖酘酙酛酜酟酠酦酧酨酫酭酳酺酻酼醀\",4,\"醆醈醊醎醏醓\",6,\"醜\",5,\"醤\",5,\"醫醬醰醱醲醳醶醷醸醹醻\"],[\"e180\",\"醼\",10,\"釈釋釐釒\",9,\"針\",8,\"帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺\"],[\"e240\",\"釦\",62],[\"e280\",\"鈥\",32,\"狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧\",5,\"饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂\"],[\"e340\",\"鉆\",45,\"鉵\",16],[\"e380\",\"銆\",7,\"銏\",24,\"恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾\"],[\"e440\",\"銨\",5,\"銯\",24,\"鋉\",31],[\"e480\",\"鋩\",32,\"洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑\"],[\"e540\",\"錊\",51,\"錿\",10],[\"e580\",\"鍊\",31,\"鍫濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣\"],[\"e640\",\"鍬\",34,\"鎐\",27],[\"e680\",\"鎬\",29,\"鏋鏌鏍妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩\"],[\"e740\",\"鏎\",7,\"鏗\",54],[\"e780\",\"鐎\",32,\"纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡\",6,\"缪缫缬缭缯\",4,\"缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬\"],[\"e840\",\"鐯\",14,\"鐿\",43,\"鑬鑭鑮鑯\"],[\"e880\",\"鑰\",20,\"钑钖钘铇铏铓铔铚铦铻锜锠琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹\"],[\"e940\",\"锧锳锽镃镈镋镕镚镠镮镴镵長\",7,\"門\",42],[\"e980\",\"閫\",32,\"椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋\"],[\"ea40\",\"闌\",27,\"闬闿阇阓阘阛阞阠阣\",6,\"阫阬阭阯阰阷阸阹阺阾陁陃陊陎陏陑陒陓陖陗\"],[\"ea80\",\"陘陙陚陜陝陞陠陣陥陦陫陭\",4,\"陳陸\",12,\"隇隉隊辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰\"],[\"eb40\",\"隌階隑隒隓隕隖隚際隝\",9,\"隨\",7,\"隱隲隴隵隷隸隺隻隿雂雃雈雊雋雐雑雓雔雖\",9,\"雡\",6,\"雫\"],[\"eb80\",\"雬雭雮雰雱雲雴雵雸雺電雼雽雿霂霃霅霊霋霌霐霑霒霔霕霗\",4,\"霝霟霠搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻\"],[\"ec40\",\"霡\",8,\"霫霬霮霯霱霳\",4,\"霺霻霼霽霿\",18,\"靔靕靗靘靚靜靝靟靣靤靦靧靨靪\",7],[\"ec80\",\"靲靵靷\",4,\"靽\",7,\"鞆\",4,\"鞌鞎鞏鞐鞓鞕鞖鞗鞙\",4,\"臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐\"],[\"ed40\",\"鞞鞟鞡鞢鞤\",6,\"鞬鞮鞰鞱鞳鞵\",46],[\"ed80\",\"韤韥韨韮\",4,\"韴韷\",23,\"怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨\"],[\"ee40\",\"頏\",62],[\"ee80\",\"顎\",32,\"睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶\",4,\"钼钽钿铄铈\",6,\"铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪\"],[\"ef40\",\"顯\",5,\"颋颎颒颕颙颣風\",37,\"飏飐飔飖飗飛飜飝飠\",4],[\"ef80\",\"飥飦飩\",30,\"铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒\",4,\"锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤\",8,\"镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔\"],[\"f040\",\"餈\",4,\"餎餏餑\",28,\"餯\",26],[\"f080\",\"饊\",9,\"饖\",12,\"饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨\",4,\"鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦\",6,\"鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙\"],[\"f140\",\"馌馎馚\",10,\"馦馧馩\",47],[\"f180\",\"駙\",32,\"瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃\"],[\"f240\",\"駺\",62],[\"f280\",\"騹\",32,\"颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒\"],[\"f340\",\"驚\",17,\"驲骃骉骍骎骔骕骙骦骩\",6,\"骲骳骴骵骹骻骽骾骿髃髄髆\",4,\"髍髎髏髐髒體髕髖髗髙髚髛髜\"],[\"f380\",\"髝髞髠髢髣髤髥髧髨髩髪髬髮髰\",8,\"髺髼\",6,\"鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋\"],[\"f440\",\"鬇鬉\",5,\"鬐鬑鬒鬔\",10,\"鬠鬡鬢鬤\",10,\"鬰鬱鬳\",7,\"鬽鬾鬿魀魆魊魋魌魎魐魒魓魕\",5],[\"f480\",\"魛\",32,\"簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤\"],[\"f540\",\"魼\",62],[\"f580\",\"鮻\",32,\"酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜\"],[\"f640\",\"鯜\",62],[\"f680\",\"鰛\",32,\"觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅\",5,\"龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞\",5,\"鲥\",4,\"鲫鲭鲮鲰\",7,\"鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋\"],[\"f740\",\"鰼\",62],[\"f780\",\"鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾\",4,\"鳈鳉鳑鳒鳚鳛鳠鳡鳌\",4,\"鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄\"],[\"f840\",\"鳣\",62],[\"f880\",\"鴢\",32],[\"f940\",\"鵃\",62],[\"f980\",\"鶂\",32],[\"fa40\",\"鶣\",62],[\"fa80\",\"鷢\",32],[\"fb40\",\"鸃\",27,\"鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴\",9,\"麀\"],[\"fb80\",\"麁麃麄麅麆麉麊麌\",5,\"麔\",8,\"麞麠\",5,\"麧麨麩麪\"],[\"fc40\",\"麫\",8,\"麵麶麷麹麺麼麿\",4,\"黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰\",8,\"黺黽黿\",6],[\"fc80\",\"鼆\",4,\"鼌鼏鼑鼒鼔鼕鼖鼘鼚\",5,\"鼡鼣\",8,\"鼭鼮鼰鼱\"],[\"fd40\",\"鼲\",4,\"鼸鼺鼼鼿\",4,\"齅\",10,\"齒\",38],[\"fd80\",\"齹\",5,\"龁龂龍\",11,\"龜龝龞龡\",4,\"郎凉秊裏隣\"],[\"fe40\",\"兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩\"]]");
/***/ }),
-/* 110 */
+/* 173 */
/***/ (function(module, exports, __webpack_require__) {
// fallback for non-array-like ES3 and non-enumerable old V8 strings
-var cof = __webpack_require__(111);
+var cof = __webpack_require__(99);
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
return cof(it) == 'String' ? it.split('') : Object(it);
@@ -10362,18 +12590,7 @@ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
/***/ }),
-/* 111 */
-/***/ (function(module, exports) {
-
-var toString = {}.toString;
-
-module.exports = function (it) {
- return toString.call(it).slice(8, -1);
-};
-
-
-/***/ }),
-/* 112 */
+/* 174 */
/***/ (function(module, exports) {
// 7.2.1 RequireObjectCoercible(argument)
@@ -10384,18 +12601,18 @@ module.exports = function (it) {
/***/ }),
-/* 113 */
+/* 175 */
/***/ (function(module, exports, __webpack_require__) {
-var pIE = __webpack_require__(73);
-var createDesc = __webpack_require__(57);
-var toIObject = __webpack_require__(35);
-var toPrimitive = __webpack_require__(114);
-var has = __webpack_require__(36);
-var IE8_DOM_DEFINE = __webpack_require__(180);
+var pIE = __webpack_require__(128);
+var createDesc = __webpack_require__(100);
+var toIObject = __webpack_require__(50);
+var toPrimitive = __webpack_require__(176);
+var has = __webpack_require__(51);
+var IE8_DOM_DEFINE = __webpack_require__(255);
var gOPD = Object.getOwnPropertyDescriptor;
-exports.f = __webpack_require__(13) ? gOPD : function getOwnPropertyDescriptor(O, P) {
+exports.f = __webpack_require__(23) ? gOPD : function getOwnPropertyDescriptor(O, P) {
O = toIObject(O);
P = toPrimitive(P, true);
if (IE8_DOM_DEFINE) try {
@@ -10406,11 +12623,11 @@ exports.f = __webpack_require__(13) ? gOPD : function getOwnPropertyDescriptor(O
/***/ }),
-/* 114 */
+/* 176 */
/***/ (function(module, exports, __webpack_require__) {
// 7.1.1 ToPrimitive(input [, PreferredType])
-var isObject = __webpack_require__(20);
+var isObject = __webpack_require__(22);
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
@@ -10424,13 +12641,26 @@ module.exports = function (it, S) {
/***/ }),
-/* 115 */
+/* 177 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(22);
+var document = __webpack_require__(17).document;
+// typeof document.createElement is 'object' in old IE
+var is = isObject(document) && isObject(document.createElement);
+module.exports = function (it) {
+ return is ? document.createElement(it) : {};
+};
+
+
+/***/ }),
+/* 178 */
/***/ (function(module, exports, __webpack_require__) {
// most Object methods by ES6 should accept primitives
-var $export = __webpack_require__(7);
-var core = __webpack_require__(2);
-var fails = __webpack_require__(37);
+var $export = __webpack_require__(9);
+var core = __webpack_require__(7);
+var fails = __webpack_require__(52);
module.exports = function (KEY, exec) {
var fn = (core.Object || {})[KEY] || Object[KEY];
var exp = {};
@@ -10440,20 +12670,20 @@ module.exports = function (KEY, exec) {
/***/ }),
-/* 116 */
+/* 179 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var LIBRARY = __webpack_require__(75);
-var $export = __webpack_require__(7);
-var redefine = __webpack_require__(184);
-var hide = __webpack_require__(27);
-var Iterators = __webpack_require__(58);
-var $iterCreate = __webpack_require__(339);
-var setToStringTag = __webpack_require__(79);
-var getPrototypeOf = __webpack_require__(342);
-var ITERATOR = __webpack_require__(14)('iterator');
+var LIBRARY = __webpack_require__(104);
+var $export = __webpack_require__(9);
+var redefine = __webpack_require__(257);
+var hide = __webpack_require__(39);
+var Iterators = __webpack_require__(103);
+var $iterCreate = __webpack_require__(430);
+var setToStringTag = __webpack_require__(106);
+var getPrototypeOf = __webpack_require__(432);
+var ITERATOR = __webpack_require__(21)('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
@@ -10516,7 +12746,7 @@ module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCE
/***/ }),
-/* 117 */
+/* 180 */
/***/ (function(module, exports) {
// 7.1.4 ToInteger
@@ -10528,22 +12758,22 @@ module.exports = function (it) {
/***/ }),
-/* 118 */
+/* 181 */
/***/ (function(module, exports, __webpack_require__) {
-var shared = __webpack_require__(119)('keys');
-var uid = __webpack_require__(78);
+var shared = __webpack_require__(182)('keys');
+var uid = __webpack_require__(131);
module.exports = function (key) {
return shared[key] || (shared[key] = uid(key));
};
/***/ }),
-/* 119 */
+/* 182 */
/***/ (function(module, exports, __webpack_require__) {
-var core = __webpack_require__(2);
-var global = __webpack_require__(21);
+var core = __webpack_require__(7);
+var global = __webpack_require__(17);
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});
@@ -10551,13 +12781,13 @@ var store = global[SHARED] || (global[SHARED] = {});
return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
version: core.version,
- mode: __webpack_require__(75) ? 'pure' : 'global',
- copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
+ mode: __webpack_require__(104) ? 'pure' : 'global',
+ copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});
/***/ }),
-/* 120 */
+/* 183 */
/***/ (function(module, exports) {
// IE 8- don't enum bug keys
@@ -10567,13 +12797,13 @@ module.exports = (
/***/ }),
-/* 121 */
+/* 184 */
/***/ (function(module, exports, __webpack_require__) {
-var classof = __webpack_require__(188);
-var ITERATOR = __webpack_require__(14)('iterator');
-var Iterators = __webpack_require__(58);
-module.exports = __webpack_require__(2).getIteratorMethod = function (it) {
+var classof = __webpack_require__(185);
+var ITERATOR = __webpack_require__(21)('iterator');
+var Iterators = __webpack_require__(103);
+module.exports = __webpack_require__(7).getIteratorMethod = function (it) {
if (it != undefined) return it[ITERATOR]
|| it['@@iterator']
|| Iterators[classof(it)];
@@ -10581,7 +12811,36 @@ module.exports = __webpack_require__(2).getIteratorMethod = function (it) {
/***/ }),
-/* 122 */
+/* 185 */
+/***/ (function(module, exports, __webpack_require__) {
+
+// getting tag from 19.1.3.6 Object.prototype.toString()
+var cof = __webpack_require__(99);
+var TAG = __webpack_require__(21)('toStringTag');
+// ES3 wrong here
+var ARG = cof(function () { return arguments; }()) == 'Arguments';
+
+// fallback for IE11 Script Access Denied error
+var tryGet = function (it, key) {
+ try {
+ return it[key];
+ } catch (e) { /* empty */ }
+};
+
+module.exports = function (it) {
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
+ // builtinTag case
+ : ARG ? cof(O)
+ // ES3 arguments fallback
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+};
+
+
+/***/ }),
+/* 186 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -10589,11 +12848,11 @@ module.exports = __webpack_require__(2).getIteratorMethod = function (it) {
exports.__esModule = true;
-var _iterator = __webpack_require__(348);
+var _iterator = __webpack_require__(438);
var _iterator2 = _interopRequireDefault(_iterator);
-var _symbol = __webpack_require__(350);
+var _symbol = __webpack_require__(440);
var _symbol2 = _interopRequireDefault(_symbol);
@@ -10608,21 +12867,21 @@ exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.d
};
/***/ }),
-/* 123 */
+/* 187 */
/***/ (function(module, exports, __webpack_require__) {
-exports.f = __webpack_require__(14);
+exports.f = __webpack_require__(21);
/***/ }),
-/* 124 */
+/* 188 */
/***/ (function(module, exports, __webpack_require__) {
-var global = __webpack_require__(21);
-var core = __webpack_require__(2);
-var LIBRARY = __webpack_require__(75);
-var wksExt = __webpack_require__(123);
-var defineProperty = __webpack_require__(17).f;
+var global = __webpack_require__(17);
+var core = __webpack_require__(7);
+var LIBRARY = __webpack_require__(104);
+var wksExt = __webpack_require__(187);
+var defineProperty = __webpack_require__(26).f;
module.exports = function (name) {
var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
@@ -10630,1271 +12889,27 @@ module.exports = function (name) {
/***/ }),
-/* 125 */
+/* 189 */
/***/ (function(module, exports) {
exports.f = Object.getOwnPropertySymbols;
/***/ }),
-/* 126 */
-/***/ (function(module, exports) {
-
-
-
-/***/ }),
-/* 127 */
+/* 190 */
/***/ (function(module, exports, __webpack_require__) {
-var isObject = __webpack_require__(20);
-module.exports = function (it, TYPE) {
- if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
- return it;
-};
-
-
-/***/ }),
-/* 128 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-var implementation = __webpack_require__(393);
-
-module.exports = Function.prototype.bind || implementation;
-
-
-/***/ }),
-/* 129 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-var keys = __webpack_require__(201);
-var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
-
-var toStr = Object.prototype.toString;
-var concat = Array.prototype.concat;
-var origDefineProperty = Object.defineProperty;
-
-var isFunction = function (fn) {
- return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
-};
-
-var arePropertyDescriptorsSupported = function () {
- var obj = {};
- try {
- origDefineProperty(obj, 'x', { enumerable: false, value: obj });
- // eslint-disable-next-line no-unused-vars, no-restricted-syntax
- for (var _ in obj) { // jscs:ignore disallowUnusedVariables
- return false;
- }
- return obj.x === obj;
- } catch (e) { /* this is IE 8. */
- return false;
- }
-};
-var supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();
-
-var defineProperty = function (object, name, value, predicate) {
- if (name in object && (!isFunction(predicate) || !predicate())) {
- return;
- }
- if (supportsDescriptors) {
- origDefineProperty(object, name, {
- configurable: true,
- enumerable: false,
- value: value,
- writable: true
- });
- } else {
- object[name] = value;
- }
-};
-
-var defineProperties = function (object, map) {
- var predicates = arguments.length > 2 ? arguments[2] : {};
- var props = keys(map);
- if (hasSymbols) {
- props = concat.call(props, Object.getOwnPropertySymbols(map));
- }
- for (var i = 0; i < props.length; i += 1) {
- defineProperty(object, props[i], map[props[i]], predicates[props[i]]);
- }
-};
-
-defineProperties.supportsDescriptors = !!supportsDescriptors;
-
-module.exports = defineProperties;
-
-
-/***/ }),
-/* 130 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-var isString = __webpack_require__(0).isString;
-var isNumber = __webpack_require__(0).isNumber;
-var isObject = __webpack_require__(0).isObject;
-var isArray = __webpack_require__(0).isArray;
-var isUndefined = __webpack_require__(0).isUndefined;
-var LineBreaker = __webpack_require__(209);
-
-var LEADING = /^(\s)+/g;
-var TRAILING = /(\s)+$/g;
-
-/**
- * Creates an instance of TextTools - text measurement utility
- *
- * @constructor
- * @param {FontProvider} fontProvider
- */
-function TextTools(fontProvider) {
- this.fontProvider = fontProvider;
-}
-
-/**
- * Converts an array of strings (or inline-definition-objects) into a collection
- * of inlines and calculated minWidth/maxWidth.
- * and their min/max widths
- * @param {Object} textArray - an array of inline-definition-objects (or strings)
- * @param {Object} styleContextStack current style stack
- * @return {Object} collection of inlines, minWidth, maxWidth
- */
-TextTools.prototype.buildInlines = function (textArray, styleContextStack) {
- var measured = measure(this.fontProvider, textArray, styleContextStack);
-
- var minWidth = 0,
- maxWidth = 0,
- currentLineWidth;
-
- measured.forEach(function (inline) {
- minWidth = Math.max(minWidth, inline.width - inline.leadingCut - inline.trailingCut);
-
- if (!currentLineWidth) {
- currentLineWidth = { width: 0, leadingCut: inline.leadingCut, trailingCut: 0 };
- }
-
- currentLineWidth.width += inline.width;
- currentLineWidth.trailingCut = inline.trailingCut;
-
- maxWidth = Math.max(maxWidth, getTrimmedWidth(currentLineWidth));
-
- if (inline.lineEnd) {
- currentLineWidth = null;
- }
- });
-
- if (getStyleProperty({}, styleContextStack, 'noWrap', false)) {
- minWidth = maxWidth;
- }
-
- return {
- items: measured,
- minWidth: minWidth,
- maxWidth: maxWidth
- };
-
- function getTrimmedWidth(item) {
- return Math.max(0, item.width - item.leadingCut - item.trailingCut);
- }
-};
-
-/**
- * Returns size of the specified string (without breaking it) using the current style
- * @param {String} text text to be measured
- * @param {Object} styleContextStack current style stack
- * @return {Object} size of the specified string
- */
-TextTools.prototype.sizeOfString = function (text, styleContextStack) {
- text = text ? text.toString().replace(/\t/g, ' ') : '';
-
- //TODO: refactor - extract from measure
- var fontName = getStyleProperty({}, styleContextStack, 'font', 'Roboto');
- var fontSize = getStyleProperty({}, styleContextStack, 'fontSize', 12);
- var fontFeatures = getStyleProperty({}, styleContextStack, 'fontFeatures', null);
- var bold = getStyleProperty({}, styleContextStack, 'bold', false);
- var italics = getStyleProperty({}, styleContextStack, 'italics', false);
- var lineHeight = getStyleProperty({}, styleContextStack, 'lineHeight', 1);
- var characterSpacing = getStyleProperty({}, styleContextStack, 'characterSpacing', 0);
-
- var font = this.fontProvider.provideFont(fontName, bold, italics);
-
- return {
- width: widthOfString(text, font, fontSize, characterSpacing, fontFeatures),
- height: font.lineHeight(fontSize) * lineHeight,
- fontSize: fontSize,
- lineHeight: lineHeight,
- ascender: font.ascender / 1000 * fontSize,
- descender: font.descender / 1000 * fontSize
- };
-};
-
-/**
- * Returns size of the specified rotated string (without breaking it) using the current style
- *
- * @param {string} text text to be measured
- * @param {number} angle
- * @param {object} styleContextStack current style stack
- * @returns {object} size of the specified string
- */
-TextTools.prototype.sizeOfRotatedText = function (text, angle, styleContextStack) {
- var angleRad = angle * Math.PI / -180;
- var size = this.sizeOfString(text, styleContextStack);
- return {
- width: Math.abs(size.height * Math.sin(angleRad)) + Math.abs(size.width * Math.cos(angleRad)),
- height: Math.abs(size.width * Math.sin(angleRad)) + Math.abs(size.height * Math.cos(angleRad))
- };
-}
-
-TextTools.prototype.widthOfString = function (text, font, fontSize, characterSpacing, fontFeatures) {
- return widthOfString(text, font, fontSize, characterSpacing, fontFeatures);
-};
-
-function splitWords(text, noWrap) {
- var results = [];
- text = text.replace(/\t/g, ' ');
-
- if (noWrap) {
- results.push({ text: text });
- return results;
- }
-
- var breaker = new LineBreaker(text);
- var last = 0;
- var bk;
-
- while (bk = breaker.nextBreak()) {
- var word = text.slice(last, bk.position);
-
- if (bk.required || word.match(/\r?\n$|\r$/)) { // new line
- word = word.replace(/\r?\n$|\r$/, '');
- results.push({ text: word, lineEnd: true });
- } else {
- results.push({ text: word });
- }
-
- last = bk.position;
- }
-
- return results;
-}
-
-function copyStyle(source, destination) {
- destination = destination || {};
- source = source || {}; //TODO: default style
-
- for (var key in source) {
- if (key != 'text' && source.hasOwnProperty(key)) {
- destination[key] = source[key];
- }
- }
-
- return destination;
-}
-
-function normalizeTextArray(array, styleContextStack) {
- function flatten(array) {
- return array.reduce(function (prev, cur) {
- var current = isArray(cur.text) ? flatten(cur.text) : cur;
- var more = [].concat(current).some(Array.isArray);
- return prev.concat(more ? flatten(current) : current);
- }, []);
- }
-
- function getOneWord(index, words, noWrap) {
- if (isUndefined(words[index])) {
- return null;
- }
-
- if (words[index].lineEnd) {
- return null;
- }
-
- var word = words[index].text;
-
- if (noWrap) {
- var tmpWords = splitWords(normalizeString(word), false);
- if (isUndefined(tmpWords[tmpWords.length - 1])) {
- return null;
- }
- word = tmpWords[tmpWords.length - 1].text;
- }
-
- return word;
- }
-
- var results = [];
-
- if (!isArray(array)) {
- array = [array];
- }
-
- array = flatten(array);
-
- var lastWord = null;
- for (var i = 0, l = array.length; i < l; i++) {
- var item = array[i];
- var style = null;
- var words;
-
- var noWrap = getStyleProperty(item || {}, styleContextStack, 'noWrap', false);
- if (isObject(item)) {
- if (item._textRef && item._textRef._textNodeRef.text) {
- item.text = item._textRef._textNodeRef.text;
- }
- words = splitWords(normalizeString(item.text), noWrap);
- style = copyStyle(item);
- } else {
- words = splitWords(normalizeString(item), noWrap);
- }
-
- if (lastWord && words.length) {
- var firstWord = getOneWord(0, words, noWrap);
-
- var wrapWords = splitWords(normalizeString(lastWord + firstWord), false);
- if (wrapWords.length === 1) {
- results[results.length - 1].noNewLine = true;
- }
- }
-
- for (var i2 = 0, l2 = words.length; i2 < l2; i2++) {
- var result = {
- text: words[i2].text
- };
-
- if (words[i2].lineEnd) {
- result.lineEnd = true;
- }
-
- copyStyle(style, result);
-
- results.push(result);
- }
-
- lastWord = null;
- if (i + 1 < l) {
- lastWord = getOneWord(words.length - 1, words, noWrap);
- }
- }
-
- return results;
-}
-
-function normalizeString(value) {
- if (value === undefined || value === null) {
- return '';
- } else if (isNumber(value)) {
- return value.toString();
- } else if (isString(value)) {
- return value;
- } else {
- return value.toString();
- }
-}
-
-function getStyleProperty(item, styleContextStack, property, defaultValue) {
- var value;
-
- if (item[property] !== undefined && item[property] !== null) {
- // item defines this property
- return item[property];
- }
-
- if (!styleContextStack) {
- return defaultValue;
- }
-
- styleContextStack.auto(item, function () {
- value = styleContextStack.getProperty(property);
- });
-
- if (value !== null && value !== undefined) {
- return value;
- } else {
- return defaultValue;
- }
-}
-
-function measure(fontProvider, textArray, styleContextStack) {
- var normalized = normalizeTextArray(textArray, styleContextStack);
-
- if (normalized.length) {
- var leadingIndent = getStyleProperty(normalized[0], styleContextStack, 'leadingIndent', 0);
-
- if (leadingIndent) {
- normalized[0].leadingCut = -leadingIndent;
- normalized[0].leadingIndent = leadingIndent;
- }
- }
-
- normalized.forEach(function (item) {
- var fontName = getStyleProperty(item, styleContextStack, 'font', 'Roboto');
- var fontSize = getStyleProperty(item, styleContextStack, 'fontSize', 12);
- var fontFeatures = getStyleProperty(item, styleContextStack, 'fontFeatures', null);
- var bold = getStyleProperty(item, styleContextStack, 'bold', false);
- var italics = getStyleProperty(item, styleContextStack, 'italics', false);
- var color = getStyleProperty(item, styleContextStack, 'color', 'black');
- var decoration = getStyleProperty(item, styleContextStack, 'decoration', null);
- var decorationColor = getStyleProperty(item, styleContextStack, 'decorationColor', null);
- var decorationStyle = getStyleProperty(item, styleContextStack, 'decorationStyle', null);
- var background = getStyleProperty(item, styleContextStack, 'background', null);
- var lineHeight = getStyleProperty(item, styleContextStack, 'lineHeight', 1);
- var characterSpacing = getStyleProperty(item, styleContextStack, 'characterSpacing', 0);
- var link = getStyleProperty(item, styleContextStack, 'link', null);
- var linkToPage = getStyleProperty(item, styleContextStack, 'linkToPage', null);
- var linkToDestination = getStyleProperty(item, styleContextStack, 'linkToDestination', null);
- var noWrap = getStyleProperty(item, styleContextStack, 'noWrap', null);
- var preserveLeadingSpaces = getStyleProperty(item, styleContextStack, 'preserveLeadingSpaces', false);
- var preserveTrailingSpaces = getStyleProperty(item, styleContextStack, 'preserveTrailingSpaces', false);
- var opacity = getStyleProperty(item, styleContextStack, 'opacity', 1);
-
- var font = fontProvider.provideFont(fontName, bold, italics);
-
- item.width = widthOfString(item.text, font, fontSize, characterSpacing, fontFeatures);
- item.height = font.lineHeight(fontSize) * lineHeight;
-
- if (!item.leadingCut) {
- item.leadingCut = 0;
- }
-
- var leadingSpaces;
- if (!preserveLeadingSpaces && (leadingSpaces = item.text.match(LEADING))) {
- item.leadingCut += widthOfString(leadingSpaces[0], font, fontSize, characterSpacing, fontFeatures);
- }
-
- var trailingSpaces;
- if (!preserveTrailingSpaces && (trailingSpaces = item.text.match(TRAILING))) {
- item.trailingCut = widthOfString(trailingSpaces[0], font, fontSize, characterSpacing, fontFeatures);
- } else {
- item.trailingCut = 0;
- }
-
- item.alignment = getStyleProperty(item, styleContextStack, 'alignment', 'left');
- item.font = font;
- item.fontSize = fontSize;
- item.fontFeatures = fontFeatures;
- item.characterSpacing = characterSpacing;
- item.color = color;
- item.decoration = decoration;
- item.decorationColor = decorationColor;
- item.decorationStyle = decorationStyle;
- item.background = background;
- item.link = link;
- item.linkToPage = linkToPage;
- item.linkToDestination = linkToDestination;
- item.noWrap = noWrap;
- item.opacity = opacity;
- });
-
- return normalized;
-}
-
-function widthOfString(text, font, fontSize, characterSpacing, fontFeatures) {
- return font.widthOfString(text, fontSize, fontFeatures) + ((characterSpacing || 0) * (text.length - 1));
-}
-
-module.exports = TextTools;
-
-
-/***/ }),
-/* 131 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-var isString = __webpack_require__(0).isString;
-
-function buildColumnWidths(columns, availableWidth) {
- var autoColumns = [],
- autoMin = 0, autoMax = 0,
- starColumns = [],
- starMaxMin = 0,
- starMaxMax = 0,
- fixedColumns = [],
- initial_availableWidth = availableWidth;
-
- columns.forEach(function (column) {
- if (isAutoColumn(column)) {
- autoColumns.push(column);
- autoMin += column._minWidth;
- autoMax += column._maxWidth;
- } else if (isStarColumn(column)) {
- starColumns.push(column);
- starMaxMin = Math.max(starMaxMin, column._minWidth);
- starMaxMax = Math.max(starMaxMax, column._maxWidth);
- } else {
- fixedColumns.push(column);
- }
- });
-
- fixedColumns.forEach(function (col) {
- // width specified as %
- if (isString(col.width) && /\d+%/.test(col.width)) {
- col.width = parseFloat(col.width) * initial_availableWidth / 100;
- }
- if (col.width < (col._minWidth) && col.elasticWidth) {
- col._calcWidth = col._minWidth;
- } else {
- col._calcWidth = col.width;
- }
-
- availableWidth -= col._calcWidth;
- });
-
- // http://www.freesoft.org/CIE/RFC/1942/18.htm
- // http://www.w3.org/TR/CSS2/tables.html#width-layout
- // http://dev.w3.org/csswg/css3-tables-algorithms/Overview.src.htm
- var minW = autoMin + starMaxMin * starColumns.length;
- var maxW = autoMax + starMaxMax * starColumns.length;
- if (minW >= availableWidth) {
- // case 1 - there's no way to fit all columns within available width
- // that's actually pretty bad situation with PDF as we have no horizontal scroll
- // no easy workaround (unless we decide, in the future, to split single words)
- // currently we simply use minWidths for all columns
- autoColumns.forEach(function (col) {
- col._calcWidth = col._minWidth;
- });
-
- starColumns.forEach(function (col) {
- col._calcWidth = starMaxMin; // starMaxMin already contains padding
- });
- } else {
- if (maxW < availableWidth) {
- // case 2 - we can fit rest of the table within available space
- autoColumns.forEach(function (col) {
- col._calcWidth = col._maxWidth;
- availableWidth -= col._calcWidth;
- });
- } else {
- // maxW is too large, but minW fits within available width
- var W = availableWidth - minW;
- var D = maxW - minW;
-
- autoColumns.forEach(function (col) {
- var d = col._maxWidth - col._minWidth;
- col._calcWidth = col._minWidth + d * W / D;
- availableWidth -= col._calcWidth;
- });
- }
-
- if (starColumns.length > 0) {
- var starSize = availableWidth / starColumns.length;
-
- starColumns.forEach(function (col) {
- col._calcWidth = starSize;
- });
- }
- }
-}
-
-function isAutoColumn(column) {
- return column.width === 'auto';
-}
-
-function isStarColumn(column) {
- return column.width === null || column.width === undefined || column.width === '*' || column.width === 'star';
-}
-
-//TODO: refactor and reuse in measureTable
-function measureMinMax(columns) {
- var result = { min: 0, max: 0 };
-
- var maxStar = { min: 0, max: 0 };
- var starCount = 0;
-
- for (var i = 0, l = columns.length; i < l; i++) {
- var c = columns[i];
-
- if (isStarColumn(c)) {
- maxStar.min = Math.max(maxStar.min, c._minWidth);
- maxStar.max = Math.max(maxStar.max, c._maxWidth);
- starCount++;
- } else if (isAutoColumn(c)) {
- result.min += c._minWidth;
- result.max += c._maxWidth;
- } else {
- result.min += ((c.width !== undefined && c.width) || c._minWidth);
- result.max += ((c.width !== undefined && c.width) || c._maxWidth);
- }
- }
-
- if (starCount) {
- result.min += starCount * maxStar.min;
- result.max += starCount * maxStar.max;
- }
-
- return result;
-}
-
-/**
- * Calculates column widths
- * @private
- */
-module.exports = {
- buildColumnWidths: buildColumnWidths,
- measureMinMax: measureMinMax,
- isAutoColumn: isAutoColumn,
- isStarColumn: isStarColumn
-};
-
-
-/***/ }),
-/* 132 */
-/***/ (function(module, exports) {
-
-var toString = {}.toString;
-
-module.exports = Array.isArray || function (arr) {
- return toString.call(arr) == '[object Array]';
-};
-
-
-/***/ }),
-/* 133 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var $export = __webpack_require__(5);
-var fails = __webpack_require__(10);
-var defined = __webpack_require__(30);
-var quot = /"/g;
-// B.2.3.2.1 CreateHTML(string, tag, attribute, value)
-var createHTML = function (string, tag, attribute, value) {
- var S = String(defined(string));
- var p1 = '<' + tag;
- if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"';
- return p1 + '>' + S + '' + tag + '>';
-};
-module.exports = function (NAME, exec) {
- var O = {};
- O[NAME] = exec(createHTML);
- $export($export.P + $export.F * fails(function () {
- var test = ''[NAME]('"');
- return test !== test.toLowerCase() || test.split('"').length > 3;
- }), 'String', O);
-};
-
-
-/***/ }),
-/* 134 */
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = !__webpack_require__(9) && !__webpack_require__(10)(function () {
- return Object.defineProperty(__webpack_require__(135)('div'), 'a', { get: function () { return 7; } }).a != 7;
-});
-
-
-/***/ }),
-/* 135 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var isObject = __webpack_require__(18);
-var document = __webpack_require__(8).document;
-// typeof document.createElement is 'object' in old IE
-var is = isObject(document) && isObject(document.createElement);
-module.exports = function (it) {
- return is ? document.createElement(it) : {};
-};
-
-
-/***/ }),
-/* 136 */
-/***/ (function(module, exports) {
-
-module.exports = function (it) {
- if (typeof it != 'function') throw TypeError(it + ' is not a function!');
- return it;
-};
-
-
-/***/ }),
-/* 137 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-// B.2.3.10 String.prototype.link(url)
-__webpack_require__(133)('link', function (createHTML) {
- return function link(url) {
- return createHTML(this, 'a', 'href', url);
- };
-});
-
-
-/***/ }),
-/* 138 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var has = __webpack_require__(24);
-var toIObject = __webpack_require__(43);
-var arrayIndexOf = __webpack_require__(86)(false);
-var IE_PROTO = __webpack_require__(87)('IE_PROTO');
-
-module.exports = function (object, names) {
- var O = toIObject(object);
- var i = 0;
- var result = [];
- var key;
- for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
- // Don't enum bug & hidden keys
- while (names.length > i) if (has(O, key = names[i++])) {
- ~arrayIndexOf(result, key) || result.push(key);
- }
- return result;
-};
-
-
-/***/ }),
-/* 139 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
-var $export = __webpack_require__(5);
-
-$export($export.P, 'Array', { fill: __webpack_require__(90) });
-
-__webpack_require__(91)('fill');
-
-
-/***/ }),
-/* 140 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-if (__webpack_require__(9)) {
- var LIBRARY = __webpack_require__(41);
- var global = __webpack_require__(8);
- var fails = __webpack_require__(10);
- var $export = __webpack_require__(5);
- var $typed = __webpack_require__(141);
- var $buffer = __webpack_require__(226);
- var ctx = __webpack_require__(52);
- var anInstance = __webpack_require__(143);
- var propertyDesc = __webpack_require__(40);
- var hide = __webpack_require__(15);
- var redefineAll = __webpack_require__(142);
- var toInteger = __webpack_require__(31);
- var toLength = __webpack_require__(16);
- var toIndex = __webpack_require__(144);
- var toAbsoluteIndex = __webpack_require__(54);
- var toPrimitive = __webpack_require__(51);
- var has = __webpack_require__(24);
- var classof = __webpack_require__(64);
- var isObject = __webpack_require__(18);
- var toObject = __webpack_require__(19);
- var isArrayIter = __webpack_require__(145);
- var create = __webpack_require__(65);
- var getPrototypeOf = __webpack_require__(146);
- var gOPN = __webpack_require__(55).f;
- var getIterFn = __webpack_require__(147);
- var uid = __webpack_require__(29);
- var wks = __webpack_require__(3);
- var createArrayMethod = __webpack_require__(229);
- var createArrayIncludes = __webpack_require__(86);
- var speciesConstructor = __webpack_require__(149);
- var ArrayIterators = __webpack_require__(66);
- var Iterators = __webpack_require__(45);
- var $iterDetect = __webpack_require__(151);
- var setSpecies = __webpack_require__(234);
- var arrayFill = __webpack_require__(90);
- var arrayCopyWithin = __webpack_require__(235);
- var $DP = __webpack_require__(11);
- var $GOPD = __webpack_require__(67);
- var dP = $DP.f;
- var gOPD = $GOPD.f;
- var RangeError = global.RangeError;
- var TypeError = global.TypeError;
- var Uint8Array = global.Uint8Array;
- var ARRAY_BUFFER = 'ArrayBuffer';
- var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;
- var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
- var PROTOTYPE = 'prototype';
- var ArrayProto = Array[PROTOTYPE];
- var $ArrayBuffer = $buffer.ArrayBuffer;
- var $DataView = $buffer.DataView;
- var arrayForEach = createArrayMethod(0);
- var arrayFilter = createArrayMethod(2);
- var arraySome = createArrayMethod(3);
- var arrayEvery = createArrayMethod(4);
- var arrayFind = createArrayMethod(5);
- var arrayFindIndex = createArrayMethod(6);
- var arrayIncludes = createArrayIncludes(true);
- var arrayIndexOf = createArrayIncludes(false);
- var arrayValues = ArrayIterators.values;
- var arrayKeys = ArrayIterators.keys;
- var arrayEntries = ArrayIterators.entries;
- var arrayLastIndexOf = ArrayProto.lastIndexOf;
- var arrayReduce = ArrayProto.reduce;
- var arrayReduceRight = ArrayProto.reduceRight;
- var arrayJoin = ArrayProto.join;
- var arraySort = ArrayProto.sort;
- var arraySlice = ArrayProto.slice;
- var arrayToString = ArrayProto.toString;
- var arrayToLocaleString = ArrayProto.toLocaleString;
- var ITERATOR = wks('iterator');
- var TAG = wks('toStringTag');
- var TYPED_CONSTRUCTOR = uid('typed_constructor');
- var DEF_CONSTRUCTOR = uid('def_constructor');
- var ALL_CONSTRUCTORS = $typed.CONSTR;
- var TYPED_ARRAY = $typed.TYPED;
- var VIEW = $typed.VIEW;
- var WRONG_LENGTH = 'Wrong length!';
-
- var $map = createArrayMethod(1, function (O, length) {
- return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
- });
-
- var LITTLE_ENDIAN = fails(function () {
- // eslint-disable-next-line no-undef
- return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
- });
-
- var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {
- new Uint8Array(1).set({});
- });
-
- var toOffset = function (it, BYTES) {
- var offset = toInteger(it);
- if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');
- return offset;
- };
-
- var validate = function (it) {
- if (isObject(it) && TYPED_ARRAY in it) return it;
- throw TypeError(it + ' is not a typed array!');
- };
-
- var allocate = function (C, length) {
- if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {
- throw TypeError('It is not a typed array constructor!');
- } return new C(length);
- };
-
- var speciesFromList = function (O, list) {
- return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);
- };
-
- var fromList = function (C, list) {
- var index = 0;
- var length = list.length;
- var result = allocate(C, length);
- while (length > index) result[index] = list[index++];
- return result;
- };
-
- var addGetter = function (it, key, internal) {
- dP(it, key, { get: function () { return this._d[internal]; } });
- };
-
- var $from = function from(source /* , mapfn, thisArg */) {
- var O = toObject(source);
- var aLen = arguments.length;
- var mapfn = aLen > 1 ? arguments[1] : undefined;
- var mapping = mapfn !== undefined;
- var iterFn = getIterFn(O);
- var i, length, values, result, step, iterator;
- if (iterFn != undefined && !isArrayIter(iterFn)) {
- for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {
- values.push(step.value);
- } O = values;
- }
- if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);
- for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {
- result[i] = mapping ? mapfn(O[i], i) : O[i];
- }
- return result;
- };
-
- var $of = function of(/* ...items */) {
- var index = 0;
- var length = arguments.length;
- var result = allocate(this, length);
- while (length > index) result[index] = arguments[index++];
- return result;
- };
-
- // iOS Safari 6.x fails here
- var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });
-
- var $toLocaleString = function toLocaleString() {
- return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);
- };
-
- var proto = {
- copyWithin: function copyWithin(target, start /* , end */) {
- return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
- },
- every: function every(callbackfn /* , thisArg */) {
- return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
- },
- fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars
- return arrayFill.apply(validate(this), arguments);
- },
- filter: function filter(callbackfn /* , thisArg */) {
- return speciesFromList(this, arrayFilter(validate(this), callbackfn,
- arguments.length > 1 ? arguments[1] : undefined));
- },
- find: function find(predicate /* , thisArg */) {
- return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
- },
- findIndex: function findIndex(predicate /* , thisArg */) {
- return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
- },
- forEach: function forEach(callbackfn /* , thisArg */) {
- arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
- },
- indexOf: function indexOf(searchElement /* , fromIndex */) {
- return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
- },
- includes: function includes(searchElement /* , fromIndex */) {
- return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
- },
- join: function join(separator) { // eslint-disable-line no-unused-vars
- return arrayJoin.apply(validate(this), arguments);
- },
- lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars
- return arrayLastIndexOf.apply(validate(this), arguments);
- },
- map: function map(mapfn /* , thisArg */) {
- return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);
- },
- reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
- return arrayReduce.apply(validate(this), arguments);
- },
- reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
- return arrayReduceRight.apply(validate(this), arguments);
- },
- reverse: function reverse() {
- var that = this;
- var length = validate(that).length;
- var middle = Math.floor(length / 2);
- var index = 0;
- var value;
- while (index < middle) {
- value = that[index];
- that[index++] = that[--length];
- that[length] = value;
- } return that;
- },
- some: function some(callbackfn /* , thisArg */) {
- return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
- },
- sort: function sort(comparefn) {
- return arraySort.call(validate(this), comparefn);
- },
- subarray: function subarray(begin, end) {
- var O = validate(this);
- var length = O.length;
- var $begin = toAbsoluteIndex(begin, length);
- return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
- O.buffer,
- O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
- toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)
- );
- }
- };
-
- var $slice = function slice(start, end) {
- return speciesFromList(this, arraySlice.call(validate(this), start, end));
- };
-
- var $set = function set(arrayLike /* , offset */) {
- validate(this);
- var offset = toOffset(arguments[1], 1);
- var length = this.length;
- var src = toObject(arrayLike);
- var len = toLength(src.length);
- var index = 0;
- if (len + offset > length) throw RangeError(WRONG_LENGTH);
- while (index < len) this[offset + index] = src[index++];
- };
-
- var $iterators = {
- entries: function entries() {
- return arrayEntries.call(validate(this));
- },
- keys: function keys() {
- return arrayKeys.call(validate(this));
- },
- values: function values() {
- return arrayValues.call(validate(this));
- }
- };
-
- var isTAIndex = function (target, key) {
- return isObject(target)
- && target[TYPED_ARRAY]
- && typeof key != 'symbol'
- && key in target
- && String(+key) == String(key);
- };
- var $getDesc = function getOwnPropertyDescriptor(target, key) {
- return isTAIndex(target, key = toPrimitive(key, true))
- ? propertyDesc(2, target[key])
- : gOPD(target, key);
- };
- var $setDesc = function defineProperty(target, key, desc) {
- if (isTAIndex(target, key = toPrimitive(key, true))
- && isObject(desc)
- && has(desc, 'value')
- && !has(desc, 'get')
- && !has(desc, 'set')
- // TODO: add validation descriptor w/o calling accessors
- && !desc.configurable
- && (!has(desc, 'writable') || desc.writable)
- && (!has(desc, 'enumerable') || desc.enumerable)
- ) {
- target[key] = desc.value;
- return target;
- } return dP(target, key, desc);
- };
-
- if (!ALL_CONSTRUCTORS) {
- $GOPD.f = $getDesc;
- $DP.f = $setDesc;
- }
-
- $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {
- getOwnPropertyDescriptor: $getDesc,
- defineProperty: $setDesc
- });
-
- if (fails(function () { arrayToString.call({}); })) {
- arrayToString = arrayToLocaleString = function toString() {
- return arrayJoin.call(this);
- };
- }
-
- var $TypedArrayPrototype$ = redefineAll({}, proto);
- redefineAll($TypedArrayPrototype$, $iterators);
- hide($TypedArrayPrototype$, ITERATOR, $iterators.values);
- redefineAll($TypedArrayPrototype$, {
- slice: $slice,
- set: $set,
- constructor: function () { /* noop */ },
- toString: arrayToString,
- toLocaleString: $toLocaleString
- });
- addGetter($TypedArrayPrototype$, 'buffer', 'b');
- addGetter($TypedArrayPrototype$, 'byteOffset', 'o');
- addGetter($TypedArrayPrototype$, 'byteLength', 'l');
- addGetter($TypedArrayPrototype$, 'length', 'e');
- dP($TypedArrayPrototype$, TAG, {
- get: function () { return this[TYPED_ARRAY]; }
- });
-
- // eslint-disable-next-line max-statements
- module.exports = function (KEY, BYTES, wrapper, CLAMPED) {
- CLAMPED = !!CLAMPED;
- var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';
- var GETTER = 'get' + KEY;
- var SETTER = 'set' + KEY;
- var TypedArray = global[NAME];
- var Base = TypedArray || {};
- var TAC = TypedArray && getPrototypeOf(TypedArray);
- var FORCED = !TypedArray || !$typed.ABV;
- var O = {};
- var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];
- var getter = function (that, index) {
- var data = that._d;
- return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
- };
- var setter = function (that, index, value) {
- var data = that._d;
- if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;
- data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);
- };
- var addElement = function (that, index) {
- dP(that, index, {
- get: function () {
- return getter(this, index);
- },
- set: function (value) {
- return setter(this, index, value);
- },
- enumerable: true
- });
- };
- if (FORCED) {
- TypedArray = wrapper(function (that, data, $offset, $length) {
- anInstance(that, TypedArray, NAME, '_d');
- var index = 0;
- var offset = 0;
- var buffer, byteLength, length, klass;
- if (!isObject(data)) {
- length = toIndex(data);
- byteLength = length * BYTES;
- buffer = new $ArrayBuffer(byteLength);
- } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
- buffer = data;
- offset = toOffset($offset, BYTES);
- var $len = data.byteLength;
- if ($length === undefined) {
- if ($len % BYTES) throw RangeError(WRONG_LENGTH);
- byteLength = $len - offset;
- if (byteLength < 0) throw RangeError(WRONG_LENGTH);
- } else {
- byteLength = toLength($length) * BYTES;
- if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);
- }
- length = byteLength / BYTES;
- } else if (TYPED_ARRAY in data) {
- return fromList(TypedArray, data);
- } else {
- return $from.call(TypedArray, data);
- }
- hide(that, '_d', {
- b: buffer,
- o: offset,
- l: byteLength,
- e: length,
- v: new $DataView(buffer)
- });
- while (index < length) addElement(that, index++);
- });
- TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);
- hide(TypedArrayPrototype, 'constructor', TypedArray);
- } else if (!fails(function () {
- TypedArray(1);
- }) || !fails(function () {
- new TypedArray(-1); // eslint-disable-line no-new
- }) || !$iterDetect(function (iter) {
- new TypedArray(); // eslint-disable-line no-new
- new TypedArray(null); // eslint-disable-line no-new
- new TypedArray(1.5); // eslint-disable-line no-new
- new TypedArray(iter); // eslint-disable-line no-new
- }, true)) {
- TypedArray = wrapper(function (that, data, $offset, $length) {
- anInstance(that, TypedArray, NAME);
- var klass;
- // `ws` module bug, temporarily remove validation length for Uint8Array
- // https://github.com/websockets/ws/pull/645
- if (!isObject(data)) return new Base(toIndex(data));
- if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
- return $length !== undefined
- ? new Base(data, toOffset($offset, BYTES), $length)
- : $offset !== undefined
- ? new Base(data, toOffset($offset, BYTES))
- : new Base(data);
- }
- if (TYPED_ARRAY in data) return fromList(TypedArray, data);
- return $from.call(TypedArray, data);
- });
- arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {
- if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);
- });
- TypedArray[PROTOTYPE] = TypedArrayPrototype;
- if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;
- }
- var $nativeIterator = TypedArrayPrototype[ITERATOR];
- var CORRECT_ITER_NAME = !!$nativeIterator
- && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);
- var $iterator = $iterators.values;
- hide(TypedArray, TYPED_CONSTRUCTOR, true);
- hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
- hide(TypedArrayPrototype, VIEW, true);
- hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
-
- if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {
- dP(TypedArrayPrototype, TAG, {
- get: function () { return NAME; }
- });
- }
-
- O[NAME] = TypedArray;
-
- $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
-
- $export($export.S, NAME, {
- BYTES_PER_ELEMENT: BYTES
- });
-
- $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {
- from: $from,
- of: $of
- });
-
- if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);
-
- $export($export.P, NAME, proto);
-
- setSpecies(NAME);
-
- $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });
-
- $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);
-
- if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;
-
- $export($export.P + $export.F * fails(function () {
- new TypedArray(1).slice();
- }), NAME, { slice: $slice });
-
- $export($export.P + $export.F * (fails(function () {
- return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();
- }) || !fails(function () {
- TypedArrayPrototype.toLocaleString.call([1, 2]);
- })), NAME, { toLocaleString: $toLocaleString });
-
- Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;
- if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);
- };
-} else module.exports = function () { /* empty */ };
-
-
-/***/ }),
-/* 141 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var global = __webpack_require__(8);
-var hide = __webpack_require__(15);
-var uid = __webpack_require__(29);
-var TYPED = uid('typed_array');
-var VIEW = uid('view');
-var ABV = !!(global.ArrayBuffer && global.DataView);
-var CONSTR = ABV;
-var i = 0;
-var l = 9;
-var Typed;
-
-var TypedArrayConstructors = (
- 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'
-).split(',');
-
-while (i < l) {
- if (Typed = global[TypedArrayConstructors[i++]]) {
- hide(Typed.prototype, TYPED, true);
- hide(Typed.prototype, VIEW, true);
- } else CONSTR = false;
-}
-
-module.exports = {
- ABV: ABV,
- CONSTR: CONSTR,
- TYPED: TYPED,
- VIEW: VIEW
-};
-
-
-/***/ }),
-/* 142 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var redefine = __webpack_require__(23);
+var hide = __webpack_require__(39);
module.exports = function (target, src, safe) {
- for (var key in src) redefine(target, key, src[key], safe);
- return target;
+ for (var key in src) {
+ if (safe && target[key]) target[key] = src[key];
+ else hide(target, key, src[key]);
+ } return target;
};
/***/ }),
-/* 143 */
+/* 191 */
/***/ (function(module, exports) {
module.exports = function (it, Constructor, name, forbiddenField) {
@@ -11905,314 +12920,1982 @@ module.exports = function (it, Constructor, name, forbiddenField) {
/***/ }),
-/* 144 */
+/* 192 */
/***/ (function(module, exports, __webpack_require__) {
-// https://tc39.github.io/ecma262/#sec-toindex
-var toInteger = __webpack_require__(31);
-var toLength = __webpack_require__(16);
-module.exports = function (it) {
- if (it === undefined) return 0;
- var number = toInteger(it);
- var length = toLength(number);
- if (number !== length) throw RangeError('Wrong length!');
- return length;
+var isObject = __webpack_require__(22);
+module.exports = function (it, TYPE) {
+ if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
+ return it;
};
/***/ }),
-/* 145 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// check on default Array iterator
-var Iterators = __webpack_require__(45);
-var ITERATOR = __webpack_require__(3)('iterator');
-var ArrayProto = Array.prototype;
-
-module.exports = function (it) {
- return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
-};
-
-
-/***/ }),
-/* 146 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
-var has = __webpack_require__(24);
-var toObject = __webpack_require__(19);
-var IE_PROTO = __webpack_require__(87)('IE_PROTO');
-var ObjectProto = Object.prototype;
-
-module.exports = Object.getPrototypeOf || function (O) {
- O = toObject(O);
- if (has(O, IE_PROTO)) return O[IE_PROTO];
- if (typeof O.constructor == 'function' && O instanceof O.constructor) {
- return O.constructor.prototype;
- } return O instanceof Object ? ObjectProto : null;
-};
-
-
-/***/ }),
-/* 147 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var classof = __webpack_require__(64);
-var ITERATOR = __webpack_require__(3)('iterator');
-var Iterators = __webpack_require__(45);
-module.exports = __webpack_require__(39).getIteratorMethod = function (it) {
- if (it != undefined) return it[ITERATOR]
- || it['@@iterator']
- || Iterators[classof(it)];
-};
-
-
-/***/ }),
-/* 148 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 7.2.2 IsArray(argument)
-var cof = __webpack_require__(53);
-module.exports = Array.isArray || function isArray(arg) {
- return cof(arg) == 'Array';
-};
-
-
-/***/ }),
-/* 149 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 7.3.20 SpeciesConstructor(O, defaultConstructor)
-var anObject = __webpack_require__(12);
-var aFunction = __webpack_require__(136);
-var SPECIES = __webpack_require__(3)('species');
-module.exports = function (O, D) {
- var C = anObject(O).constructor;
- var S;
- return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
-};
-
-
-/***/ }),
-/* 150 */
+/* 193 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var LIBRARY = __webpack_require__(41);
-var $export = __webpack_require__(5);
-var redefine = __webpack_require__(23);
-var hide = __webpack_require__(15);
-var Iterators = __webpack_require__(45);
-var $iterCreate = __webpack_require__(233);
-var setToStringTag = __webpack_require__(63);
-var getPrototypeOf = __webpack_require__(146);
-var ITERATOR = __webpack_require__(3)('iterator');
-var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
-var FF_ITERATOR = '@@iterator';
-var KEYS = 'keys';
-var VALUES = 'values';
-var returnThis = function () { return this; };
+var implementation = __webpack_require__(481);
-module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
- $iterCreate(Constructor, NAME, next);
- var getMethod = function (kind) {
- if (!BUGGY && kind in proto) return proto[kind];
- switch (kind) {
- case KEYS: return function keys() { return new Constructor(this, kind); };
- case VALUES: return function values() { return new Constructor(this, kind); };
- } return function entries() { return new Constructor(this, kind); };
- };
- var TAG = NAME + ' Iterator';
- var DEF_VALUES = DEFAULT == VALUES;
- var VALUES_BUG = false;
- var proto = Base.prototype;
- var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
- var $default = $native || getMethod(DEFAULT);
- var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
- var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
- var methods, key, IteratorPrototype;
- // Fix native
- if ($anyNative) {
- IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
- if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
- // Set @@toStringTag to native iterators
- setToStringTag(IteratorPrototype, TAG, true);
- // fix for some old engines
- if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
- }
- }
- // fix Array#{values, @@iterator}.name in V8 / FF
- if (DEF_VALUES && $native && $native.name !== VALUES) {
- VALUES_BUG = true;
- $default = function values() { return $native.call(this); };
- }
- // Define iterator
- if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
- hide(proto, ITERATOR, $default);
- }
- // Plug for library
- Iterators[NAME] = $default;
- Iterators[TAG] = returnThis;
- if (DEFAULT) {
- methods = {
- values: DEF_VALUES ? $default : getMethod(VALUES),
- keys: IS_SET ? $default : getMethod(KEYS),
- entries: $entries
- };
- if (FORCED) for (key in methods) {
- if (!(key in proto)) redefine(proto, key, methods[key]);
- } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
- }
- return methods;
-};
+module.exports = Function.prototype.bind || implementation;
/***/ }),
-/* 151 */
+/* 194 */
/***/ (function(module, exports, __webpack_require__) {
-var ITERATOR = __webpack_require__(3)('iterator');
-var SAFE_CLOSING = false;
+"use strict";
-try {
- var riter = [7][ITERATOR]();
- riter['return'] = function () { SAFE_CLOSING = true; };
- // eslint-disable-next-line no-throw-literal
- Array.from(riter, function () { throw 2; });
-} catch (e) { /* empty */ }
-module.exports = function (exec, skipClosing) {
- if (!skipClosing && !SAFE_CLOSING) return false;
- var safe = false;
- try {
- var arr = [7];
- var iter = arr[ITERATOR]();
- iter.next = function () { return { done: safe = true }; };
- arr[ITERATOR] = function () { return iter; };
- exec(arr);
- } catch (e) { /* empty */ }
- return safe;
+var bind = __webpack_require__(193);
+var GetIntrinsic = __webpack_require__(275);
+
+var $apply = GetIntrinsic('%Function.prototype.apply%');
+var $call = GetIntrinsic('%Function.prototype.call%');
+var $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);
+
+var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);
+var $defineProperty = GetIntrinsic('%Object.defineProperty%', true);
+var $max = GetIntrinsic('%Math.max%');
+
+if ($defineProperty) {
+ try {
+ $defineProperty({}, 'a', { value: 1 });
+ } catch (e) {
+ // IE 8 has a broken defineProperty
+ $defineProperty = null;
+ }
+}
+
+module.exports = function callBind(originalFunction) {
+ var func = $reflectApply(bind, $call, arguments);
+ if ($gOPD && $defineProperty) {
+ var desc = $gOPD(func, 'length');
+ if (desc.configurable) {
+ // original length, plus the receiver, minus any additional arguments (after the receiver)
+ $defineProperty(
+ func,
+ 'length',
+ { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }
+ );
+ }
+ }
+ return func;
};
+var applyBind = function applyBind() {
+ return $reflectApply(bind, $apply, arguments);
+};
+
+if ($defineProperty) {
+ $defineProperty(module.exports, 'apply', { value: applyBind });
+} else {
+ module.exports.apply = applyBind;
+}
+
/***/ }),
-/* 152 */
+/* 195 */
/***/ (function(module, exports, __webpack_require__) {
-var dP = __webpack_require__(11).f;
-var FProto = Function.prototype;
-var nameRE = /^\s*function ([^ (]*)/;
-var NAME = 'name';
+"use strict";
-// 19.2.4.2 name
-NAME in FProto || __webpack_require__(9) && dP(FProto, NAME, {
- configurable: true,
- get: function () {
- try {
- return ('' + this).match(nameRE)[1];
- } catch (e) {
- return '';
- }
+var $ = __webpack_require__(1);
+var $indexOf = __webpack_require__(93).indexOf;
+var arrayMethodIsStrict = __webpack_require__(59);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var nativeIndexOf = [].indexOf;
+
+var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;
+var STRICT_METHOD = arrayMethodIsStrict('indexOf');
+var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });
+
+// `Array.prototype.indexOf` method
+// https://tc39.es/ecma262/#sec-array.prototype.indexof
+$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, {
+ indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {
+ return NEGATIVE_ZERO
+ // convert -0 to +0
+ ? nativeIndexOf.apply(this, arguments) || 0
+ : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);
}
});
/***/ }),
-/* 153 */
+/* 196 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+// 25.4.1.5 NewPromiseCapability(C)
+var aFunction = __webpack_require__(101);
+
+function PromiseCapability(C) {
+ var resolve, reject;
+ this.promise = new C(function ($$resolve, $$reject) {
+ if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve);
+ this.reject = aFunction(reject);
+}
+
+module.exports.f = function (C) {
+ return new PromiseCapability(C);
+};
+
+
+/***/ }),
+/* 197 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var isRegExp = __webpack_require__(154);
-var anObject = __webpack_require__(12);
-var speciesConstructor = __webpack_require__(149);
-var advanceStringIndex = __webpack_require__(93);
-var toLength = __webpack_require__(16);
-var callRegExpExec = __webpack_require__(95);
-var regexpExec = __webpack_require__(97);
-var fails = __webpack_require__(10);
-var $min = Math.min;
-var $push = [].push;
-var $SPLIT = 'split';
-var LENGTH = 'length';
-var LAST_INDEX = 'lastIndex';
-var MAX_UINT32 = 0xffffffff;
+var isString = __webpack_require__(0).isString;
+var isNumber = __webpack_require__(0).isNumber;
+var isObject = __webpack_require__(0).isObject;
+var isArray = __webpack_require__(0).isArray;
+var isUndefined = __webpack_require__(0).isUndefined;
+var LineBreaker = __webpack_require__(290);
+
+var LEADING = /^(\s)+/g;
+var TRAILING = /(\s)+$/g;
+
+/**
+ * Creates an instance of TextTools - text measurement utility
+ *
+ * @constructor
+ * @param {FontProvider} fontProvider
+ */
+function TextTools(fontProvider) {
+ this.fontProvider = fontProvider;
+}
+
+/**
+ * Converts an array of strings (or inline-definition-objects) into a collection
+ * of inlines and calculated minWidth/maxWidth.
+ * and their min/max widths
+ * @param {Object} textArray - an array of inline-definition-objects (or strings)
+ * @param {Object} styleContextStack current style stack
+ * @return {Object} collection of inlines, minWidth, maxWidth
+ */
+TextTools.prototype.buildInlines = function (textArray, styleContextStack) {
+ var measured = measure(this.fontProvider, textArray, styleContextStack);
+
+ var minWidth = 0,
+ maxWidth = 0,
+ currentLineWidth;
+
+ measured.forEach(function (inline) {
+ minWidth = Math.max(minWidth, inline.width - inline.leadingCut - inline.trailingCut);
+
+ if (!currentLineWidth) {
+ currentLineWidth = { width: 0, leadingCut: inline.leadingCut, trailingCut: 0 };
+ }
+
+ currentLineWidth.width += inline.width;
+ currentLineWidth.trailingCut = inline.trailingCut;
+
+ maxWidth = Math.max(maxWidth, getTrimmedWidth(currentLineWidth));
+
+ if (inline.lineEnd) {
+ currentLineWidth = null;
+ }
+ });
+
+ if (getStyleProperty({}, styleContextStack, 'noWrap', false)) {
+ minWidth = maxWidth;
+ }
+
+ return {
+ items: measured,
+ minWidth: minWidth,
+ maxWidth: maxWidth
+ };
+
+ function getTrimmedWidth(item) {
+ return Math.max(0, item.width - item.leadingCut - item.trailingCut);
+ }
+};
+
+/**
+ * Returns size of the specified string (without breaking it) using the current style
+ * @param {String} text text to be measured
+ * @param {Object} styleContextStack current style stack
+ * @return {Object} size of the specified string
+ */
+TextTools.prototype.sizeOfString = function (text, styleContextStack) {
+ text = text ? text.toString().replace(/\t/g, ' ') : '';
+
+ //TODO: refactor - extract from measure
+ var fontName = getStyleProperty({}, styleContextStack, 'font', 'Roboto');
+ var fontSize = getStyleProperty({}, styleContextStack, 'fontSize', 12);
+ var fontFeatures = getStyleProperty({}, styleContextStack, 'fontFeatures', null);
+ var bold = getStyleProperty({}, styleContextStack, 'bold', false);
+ var italics = getStyleProperty({}, styleContextStack, 'italics', false);
+ var lineHeight = getStyleProperty({}, styleContextStack, 'lineHeight', 1);
+ var characterSpacing = getStyleProperty({}, styleContextStack, 'characterSpacing', 0);
+
+ var font = this.fontProvider.provideFont(fontName, bold, italics);
+
+ return {
+ width: widthOfString(text, font, fontSize, characterSpacing, fontFeatures),
+ height: font.lineHeight(fontSize) * lineHeight,
+ fontSize: fontSize,
+ lineHeight: lineHeight,
+ ascender: font.ascender / 1000 * fontSize,
+ descender: font.descender / 1000 * fontSize
+ };
+};
+
+/**
+ * Returns size of the specified rotated string (without breaking it) using the current style
+ *
+ * @param {string} text text to be measured
+ * @param {number} angle
+ * @param {object} styleContextStack current style stack
+ * @returns {object} size of the specified string
+ */
+TextTools.prototype.sizeOfRotatedText = function (text, angle, styleContextStack) {
+ var angleRad = angle * Math.PI / -180;
+ var size = this.sizeOfString(text, styleContextStack);
+ return {
+ width: Math.abs(size.height * Math.sin(angleRad)) + Math.abs(size.width * Math.cos(angleRad)),
+ height: Math.abs(size.width * Math.sin(angleRad)) + Math.abs(size.height * Math.cos(angleRad))
+ };
+}
+
+TextTools.prototype.widthOfString = function (text, font, fontSize, characterSpacing, fontFeatures) {
+ return widthOfString(text, font, fontSize, characterSpacing, fontFeatures);
+};
+
+function splitWords(text, noWrap) {
+ var results = [];
+ text = text.replace(/\t/g, ' ');
+
+ if (noWrap) {
+ results.push({ text: text });
+ return results;
+ }
+
+ var breaker = new LineBreaker(text);
+ var last = 0;
+ var bk;
+
+ while (bk = breaker.nextBreak()) {
+ var word = text.slice(last, bk.position);
+
+ if (bk.required || word.match(/\r?\n$|\r$/)) { // new line
+ word = word.replace(/\r?\n$|\r$/, '');
+ results.push({ text: word, lineEnd: true });
+ } else {
+ results.push({ text: word });
+ }
+
+ last = bk.position;
+ }
+
+ return results;
+}
+
+function copyStyle(source, destination) {
+ destination = destination || {};
+ source = source || {}; //TODO: default style
+
+ for (var key in source) {
+ if (key != 'text' && source.hasOwnProperty(key)) {
+ destination[key] = source[key];
+ }
+ }
+
+ return destination;
+}
+
+function normalizeTextArray(array, styleContextStack) {
+ function flatten(array) {
+ return array.reduce(function (prev, cur) {
+ var current = isArray(cur.text) ? flatten(cur.text) : cur;
+ var more = [].concat(current).some(Array.isArray);
+ return prev.concat(more ? flatten(current) : current);
+ }, []);
+ }
+
+ function getOneWord(index, words, noWrap) {
+ if (isUndefined(words[index])) {
+ return null;
+ }
+
+ if (words[index].lineEnd) {
+ return null;
+ }
+
+ var word = words[index].text;
+
+ if (noWrap) {
+ var tmpWords = splitWords(normalizeString(word), false);
+ if (isUndefined(tmpWords[tmpWords.length - 1])) {
+ return null;
+ }
+ word = tmpWords[tmpWords.length - 1].text;
+ }
+
+ return word;
+ }
+
+ var results = [];
+
+ if (!isArray(array)) {
+ array = [array];
+ }
+
+ array = flatten(array);
+
+ var lastWord = null;
+ for (var i = 0, l = array.length; i < l; i++) {
+ var item = array[i];
+ var style = null;
+ var words;
+
+ var noWrap = getStyleProperty(item || {}, styleContextStack, 'noWrap', false);
+ if (isObject(item)) {
+ if (item._textRef && item._textRef._textNodeRef.text) {
+ item.text = item._textRef._textNodeRef.text;
+ }
+ words = splitWords(normalizeString(item.text), noWrap);
+ style = copyStyle(item);
+ } else {
+ words = splitWords(normalizeString(item), noWrap);
+ }
+
+ if (lastWord && words.length) {
+ var firstWord = getOneWord(0, words, noWrap);
+
+ var wrapWords = splitWords(normalizeString(lastWord + firstWord), false);
+ if (wrapWords.length === 1) {
+ results[results.length - 1].noNewLine = true;
+ }
+ }
+
+ for (var i2 = 0, l2 = words.length; i2 < l2; i2++) {
+ var result = {
+ text: words[i2].text
+ };
+
+ if (words[i2].lineEnd) {
+ result.lineEnd = true;
+ }
+
+ copyStyle(style, result);
+
+ results.push(result);
+ }
+
+ lastWord = null;
+ if (i + 1 < l) {
+ lastWord = getOneWord(words.length - 1, words, noWrap);
+ }
+ }
+
+ return results;
+}
+
+function normalizeString(value) {
+ if (value === undefined || value === null) {
+ return '';
+ } else if (isNumber(value)) {
+ return value.toString();
+ } else if (isString(value)) {
+ return value;
+ } else {
+ return value.toString();
+ }
+}
+
+function getStyleProperty(item, styleContextStack, property, defaultValue) {
+ var value;
+
+ if (item[property] !== undefined && item[property] !== null) {
+ // item defines this property
+ return item[property];
+ }
+
+ if (!styleContextStack) {
+ return defaultValue;
+ }
+
+ styleContextStack.auto(item, function () {
+ value = styleContextStack.getProperty(property);
+ });
+
+ if (value !== null && value !== undefined) {
+ return value;
+ } else {
+ return defaultValue;
+ }
+}
+
+function measure(fontProvider, textArray, styleContextStack) {
+ var normalized = normalizeTextArray(textArray, styleContextStack);
+
+ if (normalized.length) {
+ var leadingIndent = getStyleProperty(normalized[0], styleContextStack, 'leadingIndent', 0);
+
+ if (leadingIndent) {
+ normalized[0].leadingCut = -leadingIndent;
+ normalized[0].leadingIndent = leadingIndent;
+ }
+ }
+
+ normalized.forEach(function (item) {
+ var fontName = getStyleProperty(item, styleContextStack, 'font', 'Roboto');
+ var fontSize = getStyleProperty(item, styleContextStack, 'fontSize', 12);
+ var fontFeatures = getStyleProperty(item, styleContextStack, 'fontFeatures', null);
+ var bold = getStyleProperty(item, styleContextStack, 'bold', false);
+ var italics = getStyleProperty(item, styleContextStack, 'italics', false);
+ var color = getStyleProperty(item, styleContextStack, 'color', 'black');
+ var decoration = getStyleProperty(item, styleContextStack, 'decoration', null);
+ var decorationColor = getStyleProperty(item, styleContextStack, 'decorationColor', null);
+ var decorationStyle = getStyleProperty(item, styleContextStack, 'decorationStyle', null);
+ var background = getStyleProperty(item, styleContextStack, 'background', null);
+ var lineHeight = getStyleProperty(item, styleContextStack, 'lineHeight', 1);
+ var characterSpacing = getStyleProperty(item, styleContextStack, 'characterSpacing', 0);
+ var link = getStyleProperty(item, styleContextStack, 'link', null);
+ var linkToPage = getStyleProperty(item, styleContextStack, 'linkToPage', null);
+ var linkToDestination = getStyleProperty(item, styleContextStack, 'linkToDestination', null);
+ var noWrap = getStyleProperty(item, styleContextStack, 'noWrap', null);
+ var preserveLeadingSpaces = getStyleProperty(item, styleContextStack, 'preserveLeadingSpaces', false);
+ var preserveTrailingSpaces = getStyleProperty(item, styleContextStack, 'preserveTrailingSpaces', false);
+ var opacity = getStyleProperty(item, styleContextStack, 'opacity', 1);
+ var sup = getStyleProperty(item, styleContextStack, 'sup', false);
+ var sub = getStyleProperty(item, styleContextStack, 'sub', false);
+
+ if ((sup || sub) && item.fontSize === undefined) {
+ // font size reduction taken from here: https://en.wikipedia.org/wiki/Subscript_and_superscript#Desktop_publishing
+ fontSize *= 0.58
+ }
+
+ var font = fontProvider.provideFont(fontName, bold, italics);
+
+ item.width = widthOfString(item.text, font, fontSize, characterSpacing, fontFeatures);
+ item.height = font.lineHeight(fontSize) * lineHeight;
+
+ if (!item.leadingCut) {
+ item.leadingCut = 0;
+ }
+
+ var leadingSpaces;
+ if (!preserveLeadingSpaces && (leadingSpaces = item.text.match(LEADING))) {
+ item.leadingCut += widthOfString(leadingSpaces[0], font, fontSize, characterSpacing, fontFeatures);
+ }
+
+ var trailingSpaces;
+ if (!preserveTrailingSpaces && (trailingSpaces = item.text.match(TRAILING))) {
+ item.trailingCut = widthOfString(trailingSpaces[0], font, fontSize, characterSpacing, fontFeatures);
+ } else {
+ item.trailingCut = 0;
+ }
+
+ item.alignment = getStyleProperty(item, styleContextStack, 'alignment', 'left');
+ item.font = font;
+ item.fontSize = fontSize;
+ item.fontFeatures = fontFeatures;
+ item.characterSpacing = characterSpacing;
+ item.color = color;
+ item.decoration = decoration;
+ item.decorationColor = decorationColor;
+ item.decorationStyle = decorationStyle;
+ item.background = background;
+ item.link = link;
+ item.linkToPage = linkToPage;
+ item.linkToDestination = linkToDestination;
+ item.noWrap = noWrap;
+ item.opacity = opacity;
+ item.sup = sup;
+ item.sub = sub;
+ });
+
+ return normalized;
+}
+
+function widthOfString(text, font, fontSize, characterSpacing, fontFeatures) {
+ return font.widthOfString(text, fontSize, fontFeatures) + ((characterSpacing || 0) * (text.length - 1));
+}
+
+module.exports = TextTools;
+
+
+/***/ }),
+/* 198 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var isString = __webpack_require__(0).isString;
+
+function buildColumnWidths(columns, availableWidth) {
+ var autoColumns = [],
+ autoMin = 0, autoMax = 0,
+ starColumns = [],
+ starMaxMin = 0,
+ starMaxMax = 0,
+ fixedColumns = [],
+ initial_availableWidth = availableWidth;
+
+ columns.forEach(function (column) {
+ if (isAutoColumn(column)) {
+ autoColumns.push(column);
+ autoMin += column._minWidth;
+ autoMax += column._maxWidth;
+ } else if (isStarColumn(column)) {
+ starColumns.push(column);
+ starMaxMin = Math.max(starMaxMin, column._minWidth);
+ starMaxMax = Math.max(starMaxMax, column._maxWidth);
+ } else {
+ fixedColumns.push(column);
+ }
+ });
+
+ fixedColumns.forEach(function (col) {
+ // width specified as %
+ if (isString(col.width) && /\d+%/.test(col.width)) {
+ col.width = parseFloat(col.width) * initial_availableWidth / 100;
+ }
+ if (col.width < (col._minWidth) && col.elasticWidth) {
+ col._calcWidth = col._minWidth;
+ } else {
+ col._calcWidth = col.width;
+ }
+
+ availableWidth -= col._calcWidth;
+ });
+
+ // http://www.freesoft.org/CIE/RFC/1942/18.htm
+ // http://www.w3.org/TR/CSS2/tables.html#width-layout
+ // http://dev.w3.org/csswg/css3-tables-algorithms/Overview.src.htm
+ var minW = autoMin + starMaxMin * starColumns.length;
+ var maxW = autoMax + starMaxMax * starColumns.length;
+ if (minW >= availableWidth) {
+ // case 1 - there's no way to fit all columns within available width
+ // that's actually pretty bad situation with PDF as we have no horizontal scroll
+ // no easy workaround (unless we decide, in the future, to split single words)
+ // currently we simply use minWidths for all columns
+ autoColumns.forEach(function (col) {
+ col._calcWidth = col._minWidth;
+ });
+
+ starColumns.forEach(function (col) {
+ col._calcWidth = starMaxMin; // starMaxMin already contains padding
+ });
+ } else {
+ if (maxW < availableWidth) {
+ // case 2 - we can fit rest of the table within available space
+ autoColumns.forEach(function (col) {
+ col._calcWidth = col._maxWidth;
+ availableWidth -= col._calcWidth;
+ });
+ } else {
+ // maxW is too large, but minW fits within available width
+ var W = availableWidth - minW;
+ var D = maxW - minW;
+
+ autoColumns.forEach(function (col) {
+ var d = col._maxWidth - col._minWidth;
+ col._calcWidth = col._minWidth + d * W / D;
+ availableWidth -= col._calcWidth;
+ });
+ }
+
+ if (starColumns.length > 0) {
+ var starSize = availableWidth / starColumns.length;
+
+ starColumns.forEach(function (col) {
+ col._calcWidth = starSize;
+ });
+ }
+ }
+}
+
+function isAutoColumn(column) {
+ return column.width === 'auto';
+}
+
+function isStarColumn(column) {
+ return column.width === null || column.width === undefined || column.width === '*' || column.width === 'star';
+}
+
+//TODO: refactor and reuse in measureTable
+function measureMinMax(columns) {
+ var result = { min: 0, max: 0 };
+
+ var maxStar = { min: 0, max: 0 };
+ var starCount = 0;
+
+ for (var i = 0, l = columns.length; i < l; i++) {
+ var c = columns[i];
+
+ if (isStarColumn(c)) {
+ maxStar.min = Math.max(maxStar.min, c._minWidth);
+ maxStar.max = Math.max(maxStar.max, c._maxWidth);
+ starCount++;
+ } else if (isAutoColumn(c)) {
+ result.min += c._minWidth;
+ result.max += c._maxWidth;
+ } else {
+ result.min += ((c.width !== undefined && c.width) || c._minWidth);
+ result.max += ((c.width !== undefined && c.width) || c._maxWidth);
+ }
+ }
+
+ if (starCount) {
+ result.min += starCount * maxStar.min;
+ result.max += starCount * maxStar.max;
+ }
+
+ return result;
+}
+
+/**
+ * Calculates column widths
+ * @private
+ */
+module.exports = {
+ buildColumnWidths: buildColumnWidths,
+ measureMinMax: measureMinMax,
+ isAutoColumn: isAutoColumn,
+ isStarColumn: isStarColumn
+};
+
+
+/***/ }),
+/* 199 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var classof = __webpack_require__(41);
+var global = __webpack_require__(3);
+
+module.exports = classof(global.process) == 'process';
+
+
+/***/ }),
+/* 200 */
+/***/ (function(module, exports) {
+
+var toString = {}.toString;
+
+module.exports = Array.isArray || function (arr) {
+ return toString.call(arr) == '[object Array]';
+};
+
+
+/***/ }),
+/* 201 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var global = __webpack_require__(3);
+var getBuiltIn = __webpack_require__(34);
+var IS_PURE = __webpack_require__(56);
+var DESCRIPTORS = __webpack_require__(13);
+var NATIVE_SYMBOL = __webpack_require__(146);
+var USE_SYMBOL_AS_UID = __webpack_require__(205);
+var fails = __webpack_require__(4);
+var has = __webpack_require__(15);
+var isArray = __webpack_require__(115);
+var isObject = __webpack_require__(14);
+var anObject = __webpack_require__(11);
+var toObject = __webpack_require__(19);
+var toIndexedObject = __webpack_require__(27);
+var toPrimitive = __webpack_require__(55);
+var createPropertyDescriptor = __webpack_require__(40);
+var nativeObjectCreate = __webpack_require__(58);
+var objectKeys = __webpack_require__(94);
+var getOwnPropertyNamesModule = __webpack_require__(57);
+var getOwnPropertyNamesExternal = __webpack_require__(313);
+var getOwnPropertySymbolsModule = __webpack_require__(144);
+var getOwnPropertyDescriptorModule = __webpack_require__(54);
+var definePropertyModule = __webpack_require__(16);
+var propertyIsEnumerableModule = __webpack_require__(110);
+var createNonEnumerableProperty = __webpack_require__(18);
+var redefine = __webpack_require__(25);
+var shared = __webpack_require__(142);
+var sharedKey = __webpack_require__(111);
+var hiddenKeys = __webpack_require__(113);
+var uid = __webpack_require__(112);
+var wellKnownSymbol = __webpack_require__(6);
+var wrappedWellKnownSymbolModule = __webpack_require__(207);
+var defineWellKnownSymbol = __webpack_require__(208);
+var setToStringTag = __webpack_require__(95);
+var InternalStateModule = __webpack_require__(42);
+var $forEach = __webpack_require__(20).forEach;
+
+var HIDDEN = sharedKey('hidden');
+var SYMBOL = 'Symbol';
+var PROTOTYPE = 'prototype';
+var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
+var setInternalState = InternalStateModule.set;
+var getInternalState = InternalStateModule.getterFor(SYMBOL);
+var ObjectPrototype = Object[PROTOTYPE];
+var $Symbol = global.Symbol;
+var $stringify = getBuiltIn('JSON', 'stringify');
+var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
+var nativeDefineProperty = definePropertyModule.f;
+var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;
+var nativePropertyIsEnumerable = propertyIsEnumerableModule.f;
+var AllSymbols = shared('symbols');
+var ObjectPrototypeSymbols = shared('op-symbols');
+var StringToSymbolRegistry = shared('string-to-symbol-registry');
+var SymbolToStringRegistry = shared('symbol-to-string-registry');
+var WellKnownSymbolsStore = shared('wks');
+var QObject = global.QObject;
+// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
+var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
+
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+var setSymbolDescriptor = DESCRIPTORS && fails(function () {
+ return nativeObjectCreate(nativeDefineProperty({}, 'a', {
+ get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }
+ })).a != 7;
+}) ? function (O, P, Attributes) {
+ var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);
+ if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];
+ nativeDefineProperty(O, P, Attributes);
+ if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {
+ nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);
+ }
+} : nativeDefineProperty;
+
+var wrap = function (tag, description) {
+ var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);
+ setInternalState(symbol, {
+ type: SYMBOL,
+ tag: tag,
+ description: description
+ });
+ if (!DESCRIPTORS) symbol.description = description;
+ return symbol;
+};
+
+var isSymbol = USE_SYMBOL_AS_UID ? function (it) {
+ return typeof it == 'symbol';
+} : function (it) {
+ return Object(it) instanceof $Symbol;
+};
+
+var $defineProperty = function defineProperty(O, P, Attributes) {
+ if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);
+ anObject(O);
+ var key = toPrimitive(P, true);
+ anObject(Attributes);
+ if (has(AllSymbols, key)) {
+ if (!Attributes.enumerable) {
+ if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));
+ O[HIDDEN][key] = true;
+ } else {
+ if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;
+ Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });
+ } return setSymbolDescriptor(O, key, Attributes);
+ } return nativeDefineProperty(O, key, Attributes);
+};
+
+var $defineProperties = function defineProperties(O, Properties) {
+ anObject(O);
+ var properties = toIndexedObject(Properties);
+ var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));
+ $forEach(keys, function (key) {
+ if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);
+ });
+ return O;
+};
+
+var $create = function create(O, Properties) {
+ return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);
+};
+
+var $propertyIsEnumerable = function propertyIsEnumerable(V) {
+ var P = toPrimitive(V, true);
+ var enumerable = nativePropertyIsEnumerable.call(this, P);
+ if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;
+ return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;
+};
+
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {
+ var it = toIndexedObject(O);
+ var key = toPrimitive(P, true);
+ if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;
+ var descriptor = nativeGetOwnPropertyDescriptor(it, key);
+ if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {
+ descriptor.enumerable = true;
+ }
+ return descriptor;
+};
+
+var $getOwnPropertyNames = function getOwnPropertyNames(O) {
+ var names = nativeGetOwnPropertyNames(toIndexedObject(O));
+ var result = [];
+ $forEach(names, function (key) {
+ if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);
+ });
+ return result;
+};
+
+var $getOwnPropertySymbols = function getOwnPropertySymbols(O) {
+ var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;
+ var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));
+ var result = [];
+ $forEach(names, function (key) {
+ if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {
+ result.push(AllSymbols[key]);
+ }
+ });
+ return result;
+};
+
+// `Symbol` constructor
+// https://tc39.es/ecma262/#sec-symbol-constructor
+if (!NATIVE_SYMBOL) {
+ $Symbol = function Symbol() {
+ if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');
+ var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);
+ var tag = uid(description);
+ var setter = function (value) {
+ if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);
+ if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
+ setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));
+ };
+ if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });
+ return wrap(tag, description);
+ };
+
+ redefine($Symbol[PROTOTYPE], 'toString', function toString() {
+ return getInternalState(this).tag;
+ });
+
+ redefine($Symbol, 'withoutSetter', function (description) {
+ return wrap(uid(description), description);
+ });
+
+ propertyIsEnumerableModule.f = $propertyIsEnumerable;
+ definePropertyModule.f = $defineProperty;
+ getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;
+ getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;
+ getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;
+
+ wrappedWellKnownSymbolModule.f = function (name) {
+ return wrap(wellKnownSymbol(name), name);
+ };
+
+ if (DESCRIPTORS) {
+ // https://github.com/tc39/proposal-Symbol-description
+ nativeDefineProperty($Symbol[PROTOTYPE], 'description', {
+ configurable: true,
+ get: function description() {
+ return getInternalState(this).description;
+ }
+ });
+ if (!IS_PURE) {
+ redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });
+ }
+ }
+}
+
+$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {
+ Symbol: $Symbol
+});
+
+$forEach(objectKeys(WellKnownSymbolsStore), function (name) {
+ defineWellKnownSymbol(name);
+});
+
+$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {
+ // `Symbol.for` method
+ // https://tc39.es/ecma262/#sec-symbol.for
+ 'for': function (key) {
+ var string = String(key);
+ if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];
+ var symbol = $Symbol(string);
+ StringToSymbolRegistry[string] = symbol;
+ SymbolToStringRegistry[symbol] = string;
+ return symbol;
+ },
+ // `Symbol.keyFor` method
+ // https://tc39.es/ecma262/#sec-symbol.keyfor
+ keyFor: function keyFor(sym) {
+ if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');
+ if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];
+ },
+ useSetter: function () { USE_SETTER = true; },
+ useSimple: function () { USE_SETTER = false; }
+});
+
+$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {
+ // `Object.create` method
+ // https://tc39.es/ecma262/#sec-object.create
+ create: $create,
+ // `Object.defineProperty` method
+ // https://tc39.es/ecma262/#sec-object.defineproperty
+ defineProperty: $defineProperty,
+ // `Object.defineProperties` method
+ // https://tc39.es/ecma262/#sec-object.defineproperties
+ defineProperties: $defineProperties,
+ // `Object.getOwnPropertyDescriptor` method
+ // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor
+});
+
+$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {
+ // `Object.getOwnPropertyNames` method
+ // https://tc39.es/ecma262/#sec-object.getownpropertynames
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // `Object.getOwnPropertySymbols` method
+ // https://tc39.es/ecma262/#sec-object.getownpropertysymbols
+ getOwnPropertySymbols: $getOwnPropertySymbols
+});
+
+// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
+// https://bugs.chromium.org/p/v8/issues/detail?id=3443
+$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {
+ getOwnPropertySymbols: function getOwnPropertySymbols(it) {
+ return getOwnPropertySymbolsModule.f(toObject(it));
+ }
+});
+
+// `JSON.stringify` method behavior with symbols
+// https://tc39.es/ecma262/#sec-json.stringify
+if ($stringify) {
+ var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {
+ var symbol = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ return $stringify([symbol]) != '[null]'
+ // WebKit converts symbol values to JSON as null
+ || $stringify({ a: symbol }) != '{}'
+ // V8 throws on boxed symbols
+ || $stringify(Object(symbol)) != '{}';
+ });
+
+ $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {
+ // eslint-disable-next-line no-unused-vars
+ stringify: function stringify(it, replacer, space) {
+ var args = [it];
+ var index = 1;
+ var $replacer;
+ while (arguments.length > index) args.push(arguments[index++]);
+ $replacer = replacer;
+ if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
+ if (!isArray(replacer)) replacer = function (key, value) {
+ if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
+ if (!isSymbol(value)) return value;
+ };
+ args[1] = replacer;
+ return $stringify.apply(null, args);
+ }
+ });
+}
+
+// `Symbol.prototype[@@toPrimitive]` method
+// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
+if (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {
+ createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
+}
+// `Symbol.prototype[@@toStringTag]` property
+// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag
+setToStringTag($Symbol, SYMBOL);
+
+hiddenKeys[HIDDEN] = true;
+
+
+/***/ }),
+/* 202 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__(13);
+var fails = __webpack_require__(4);
+var createElement = __webpack_require__(138);
+
+// Thank's IE8 for his funny defineProperty
+module.exports = !DESCRIPTORS && !fails(function () {
+ return Object.defineProperty(createElement('div'), 'a', {
+ get: function () { return 7; }
+ }).a != 7;
+});
+
+
+/***/ }),
+/* 203 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__(15);
+var ownKeys = __webpack_require__(311);
+var getOwnPropertyDescriptorModule = __webpack_require__(54);
+var definePropertyModule = __webpack_require__(16);
+
+module.exports = function (target, source) {
+ var keys = ownKeys(source);
+ var defineProperty = definePropertyModule.f;
+ var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
+ for (var i = 0; i < keys.length; i++) {
+ var key = keys[i];
+ if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
+ }
+};
+
+
+/***/ }),
+/* 204 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__(15);
+var toIndexedObject = __webpack_require__(27);
+var indexOf = __webpack_require__(93).indexOf;
+var hiddenKeys = __webpack_require__(113);
+
+module.exports = function (object, names) {
+ var O = toIndexedObject(object);
+ var i = 0;
+ var result = [];
+ var key;
+ for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
+ // Don't enum bug & hidden keys
+ while (names.length > i) if (has(O, key = names[i++])) {
+ ~indexOf(result, key) || result.push(key);
+ }
+ return result;
+};
+
+
+/***/ }),
+/* 205 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var NATIVE_SYMBOL = __webpack_require__(146);
+
+module.exports = NATIVE_SYMBOL
+ // eslint-disable-next-line no-undef
+ && !Symbol.sham
+ // eslint-disable-next-line no-undef
+ && typeof Symbol.iterator == 'symbol';
+
+
+/***/ }),
+/* 206 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getBuiltIn = __webpack_require__(34);
+
+module.exports = getBuiltIn('document', 'documentElement');
+
+
+/***/ }),
+/* 207 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var wellKnownSymbol = __webpack_require__(6);
+
+exports.f = wellKnownSymbol;
+
+
+/***/ }),
+/* 208 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var path = __webpack_require__(114);
+var has = __webpack_require__(15);
+var wrappedWellKnownSymbolModule = __webpack_require__(207);
+var defineProperty = __webpack_require__(16).f;
+
+module.exports = function (NAME) {
+ var Symbol = path.Symbol || (path.Symbol = {});
+ if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {
+ value: wrappedWellKnownSymbolModule.f(NAME)
+ });
+};
+
+
+/***/ }),
+/* 209 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(14);
+var isArray = __webpack_require__(115);
+var wellKnownSymbol = __webpack_require__(6);
+
+var SPECIES = wellKnownSymbol('species');
+
+// `ArraySpeciesCreate` abstract operation
+// https://tc39.es/ecma262/#sec-arrayspeciescreate
+module.exports = function (originalArray, length) {
+ var C;
+ if (isArray(originalArray)) {
+ C = originalArray.constructor;
+ // cross-realm fallback
+ if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
+ else if (isObject(C)) {
+ C = C[SPECIES];
+ if (C === null) C = undefined;
+ }
+ } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
+};
+
+
+/***/ }),
+/* 210 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+// `Symbol.prototype.description` getter
+// https://tc39.es/ecma262/#sec-symbol.prototype.description
+
+var $ = __webpack_require__(1);
+var DESCRIPTORS = __webpack_require__(13);
+var global = __webpack_require__(3);
+var has = __webpack_require__(15);
+var isObject = __webpack_require__(14);
+var defineProperty = __webpack_require__(16).f;
+var copyConstructorProperties = __webpack_require__(203);
+
+var NativeSymbol = global.Symbol;
+
+if (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||
+ // Safari 12 bug
+ NativeSymbol().description !== undefined
+)) {
+ var EmptyStringDescriptionStore = {};
+ // wrap Symbol constructor for correct work with undefined description
+ var SymbolWrapper = function Symbol() {
+ var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);
+ var result = this instanceof SymbolWrapper
+ ? new NativeSymbol(description)
+ // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'
+ : description === undefined ? NativeSymbol() : NativeSymbol(description);
+ if (description === '') EmptyStringDescriptionStore[result] = true;
+ return result;
+ };
+ copyConstructorProperties(SymbolWrapper, NativeSymbol);
+ var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;
+ symbolPrototype.constructor = SymbolWrapper;
+
+ var symbolToString = symbolPrototype.toString;
+ var native = String(NativeSymbol('test')) == 'Symbol(test)';
+ var regexp = /^Symbol\((.*)\)[^)]+$/;
+ defineProperty(symbolPrototype, 'description', {
+ configurable: true,
+ get: function description() {
+ var symbol = isObject(this) ? this.valueOf() : this;
+ var string = symbolToString.call(symbol);
+ if (has(EmptyStringDescriptionStore, symbol)) return '';
+ var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');
+ return desc === '' ? undefined : desc;
+ }
+ });
+
+ $({ global: true, forced: true }, {
+ Symbol: SymbolWrapper
+ });
+}
+
+
+/***/ }),
+/* 211 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var defineWellKnownSymbol = __webpack_require__(208);
+
+// `Symbol.iterator` well-known symbol
+// https://tc39.es/ecma262/#sec-symbol.iterator
+defineWellKnownSymbol('iterator');
+
+
+/***/ }),
+/* 212 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var fails = __webpack_require__(4);
+var isArray = __webpack_require__(115);
+var isObject = __webpack_require__(14);
+var toObject = __webpack_require__(19);
+var toLength = __webpack_require__(8);
+var createProperty = __webpack_require__(147);
+var arraySpeciesCreate = __webpack_require__(209);
+var arrayMethodHasSpeciesSupport = __webpack_require__(116);
+var wellKnownSymbol = __webpack_require__(6);
+var V8_VERSION = __webpack_require__(148);
+
+var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
+var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
+var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
+
+// We can't use this feature detection in V8 since it causes
+// deoptimization and serious performance degradation
+// https://github.com/zloirock/core-js/issues/679
+var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {
+ var array = [];
+ array[IS_CONCAT_SPREADABLE] = false;
+ return array.concat()[0] !== array;
+});
+
+var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
+
+var isConcatSpreadable = function (O) {
+ if (!isObject(O)) return false;
+ var spreadable = O[IS_CONCAT_SPREADABLE];
+ return spreadable !== undefined ? !!spreadable : isArray(O);
+};
+
+var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
+
+// `Array.prototype.concat` method
+// https://tc39.es/ecma262/#sec-array.prototype.concat
+// with adding support of @@isConcatSpreadable and @@species
+$({ target: 'Array', proto: true, forced: FORCED }, {
+ concat: function concat(arg) { // eslint-disable-line no-unused-vars
+ var O = toObject(this);
+ var A = arraySpeciesCreate(O, 0);
+ var n = 0;
+ var i, k, length, len, E;
+ for (i = -1, length = arguments.length; i < length; i++) {
+ E = i === -1 ? O : arguments[i];
+ if (isConcatSpreadable(E)) {
+ len = toLength(E.length);
+ if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+ for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
+ } else {
+ if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+ createProperty(A, n++, E);
+ }
+ }
+ A.length = n;
+ return A;
+ }
+});
+
+
+/***/ }),
+/* 213 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var $ = __webpack_require__(1);
+var fill = __webpack_require__(150);
+var addToUnscopables = __webpack_require__(151);
+
+// `Array.prototype.fill` method
+// https://tc39.es/ecma262/#sec-array.prototype.fill
+$({ target: 'Array', proto: true }, {
+ fill: fill
+});
+
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+addToUnscopables('fill');
+
+
+/***/ }),
+/* 214 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $forEach = __webpack_require__(20).forEach;
+var arrayMethodIsStrict = __webpack_require__(59);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var STRICT_METHOD = arrayMethodIsStrict('forEach');
+var USES_TO_LENGTH = arrayMethodUsesToLength('forEach');
+
+// `Array.prototype.forEach` method implementation
+// https://tc39.es/ecma262/#sec-array.prototype.foreach
+module.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {
+ return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+} : [].forEach;
+
+
+/***/ }),
+/* 215 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__(11);
+
+module.exports = function (iterator) {
+ var returnMethod = iterator['return'];
+ if (returnMethod !== undefined) {
+ return anObject(returnMethod.call(iterator)).value;
+ }
+};
+
+
+/***/ }),
+/* 216 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var $includes = __webpack_require__(93).includes;
+var addToUnscopables = __webpack_require__(151);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });
+
+// `Array.prototype.includes` method
+// https://tc39.es/ecma262/#sec-array.prototype.includes
+$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, {
+ includes: function includes(el /* , fromIndex = 0 */) {
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
+addToUnscopables('includes');
+
+
+/***/ }),
+/* 217 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var createIteratorConstructor = __webpack_require__(320);
+var getPrototypeOf = __webpack_require__(60);
+var setPrototypeOf = __webpack_require__(45);
+var setToStringTag = __webpack_require__(95);
+var createNonEnumerableProperty = __webpack_require__(18);
+var redefine = __webpack_require__(25);
+var wellKnownSymbol = __webpack_require__(6);
+var IS_PURE = __webpack_require__(56);
+var Iterators = __webpack_require__(97);
+var IteratorsCore = __webpack_require__(218);
+
+var IteratorPrototype = IteratorsCore.IteratorPrototype;
+var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
+var ITERATOR = wellKnownSymbol('iterator');
+var KEYS = 'keys';
+var VALUES = 'values';
+var ENTRIES = 'entries';
+
+var returnThis = function () { return this; };
+
+module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
+ createIteratorConstructor(IteratorConstructor, NAME, next);
+
+ var getIterationMethod = function (KIND) {
+ if (KIND === DEFAULT && defaultIterator) return defaultIterator;
+ if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
+ switch (KIND) {
+ case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
+ case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
+ case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
+ } return function () { return new IteratorConstructor(this); };
+ };
+
+ var TO_STRING_TAG = NAME + ' Iterator';
+ var INCORRECT_VALUES_NAME = false;
+ var IterablePrototype = Iterable.prototype;
+ var nativeIterator = IterablePrototype[ITERATOR]
+ || IterablePrototype['@@iterator']
+ || DEFAULT && IterablePrototype[DEFAULT];
+ var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
+ var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
+ var CurrentIteratorPrototype, methods, KEY;
+
+ // fix native
+ if (anyNativeIterator) {
+ CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
+ if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
+ if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
+ if (setPrototypeOf) {
+ setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
+ } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {
+ createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);
+ }
+ }
+ // Set @@toStringTag to native iterators
+ setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
+ if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
+ }
+ }
+
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
+ INCORRECT_VALUES_NAME = true;
+ defaultIterator = function values() { return nativeIterator.call(this); };
+ }
+
+ // define iterator
+ if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
+ createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);
+ }
+ Iterators[NAME] = defaultIterator;
+
+ // export additional methods
+ if (DEFAULT) {
+ methods = {
+ values: getIterationMethod(VALUES),
+ keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
+ entries: getIterationMethod(ENTRIES)
+ };
+ if (FORCED) for (KEY in methods) {
+ if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
+ redefine(IterablePrototype, KEY, methods[KEY]);
+ }
+ } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
+ }
+
+ return methods;
+};
+
+
+/***/ }),
+/* 218 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var getPrototypeOf = __webpack_require__(60);
+var createNonEnumerableProperty = __webpack_require__(18);
+var has = __webpack_require__(15);
+var wellKnownSymbol = __webpack_require__(6);
+var IS_PURE = __webpack_require__(56);
+
+var ITERATOR = wellKnownSymbol('iterator');
+var BUGGY_SAFARI_ITERATORS = false;
+
+var returnThis = function () { return this; };
+
+// `%IteratorPrototype%` object
+// https://tc39.es/ecma262/#sec-%iteratorprototype%-object
+var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
+
+if ([].keys) {
+ arrayIterator = [].keys();
+ // Safari 8 has buggy iterators w/o `next`
+ if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
+ else {
+ PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
+ if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
+ }
+}
+
+if (IteratorPrototype == undefined) IteratorPrototype = {};
+
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+if (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {
+ createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
+}
+
+module.exports = {
+ IteratorPrototype: IteratorPrototype,
+ BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
+};
+
+
+/***/ }),
+/* 219 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__(4);
+
+module.exports = !fails(function () {
+ function F() { /* empty */ }
+ F.prototype.constructor = null;
+ return Object.getPrototypeOf(new F()) !== F.prototype;
+});
+
+
+/***/ }),
+/* 220 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var IndexedObject = __webpack_require__(92);
+var toIndexedObject = __webpack_require__(27);
+var arrayMethodIsStrict = __webpack_require__(59);
+
+var nativeJoin = [].join;
+
+var ES3_STRINGS = IndexedObject != Object;
+var STRICT_METHOD = arrayMethodIsStrict('join', ',');
+
+// `Array.prototype.join` method
+// https://tc39.es/ecma262/#sec-array.prototype.join
+$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {
+ join: function join(separator) {
+ return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);
+ }
+});
+
+
+/***/ }),
+/* 221 */
+/***/ (function(module, exports) {
+
+module.exports = typeof ArrayBuffer !== 'undefined' && typeof DataView !== 'undefined';
+
+
+/***/ }),
+/* 222 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var redefine = __webpack_require__(25);
+
+module.exports = function (target, src, options) {
+ for (var key in src) redefine(target, key, src[key], options);
+ return target;
+};
+
+
+/***/ }),
+/* 223 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__(35);
+var toLength = __webpack_require__(8);
+
+// `ToIndex` abstract operation
+// https://tc39.es/ecma262/#sec-toindex
+module.exports = function (it) {
+ if (it === undefined) return 0;
+ var number = toInteger(it);
+ var length = toLength(number);
+ if (number !== length) throw RangeError('Wrong length or index');
+ return length;
+};
+
+
+/***/ }),
+/* 224 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var DESCRIPTORS = __webpack_require__(13);
+var defineProperty = __webpack_require__(16).f;
+
+var FunctionPrototype = Function.prototype;
+var FunctionPrototypeToString = FunctionPrototype.toString;
+var nameRE = /^\s*function ([^ (]*)/;
+var NAME = 'name';
+
+// Function instances `.name` property
+// https://tc39.es/ecma262/#sec-function-instances-name
+if (DESCRIPTORS && !(NAME in FunctionPrototype)) {
+ defineProperty(FunctionPrototype, NAME, {
+ configurable: true,
+ get: function () {
+ try {
+ return FunctionPrototypeToString.call(this).match(nameRE)[1];
+ } catch (error) {
+ return '';
+ }
+ }
+ });
+}
+
+
+/***/ }),
+/* 225 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var DESCRIPTORS = __webpack_require__(13);
+var global = __webpack_require__(3);
+var isForced = __webpack_require__(145);
+var redefine = __webpack_require__(25);
+var has = __webpack_require__(15);
+var classof = __webpack_require__(41);
+var inheritIfRequired = __webpack_require__(226);
+var toPrimitive = __webpack_require__(55);
+var fails = __webpack_require__(4);
+var create = __webpack_require__(58);
+var getOwnPropertyNames = __webpack_require__(57).f;
+var getOwnPropertyDescriptor = __webpack_require__(54).f;
+var defineProperty = __webpack_require__(16).f;
+var trim = __webpack_require__(227).trim;
+
+var NUMBER = 'Number';
+var NativeNumber = global[NUMBER];
+var NumberPrototype = NativeNumber.prototype;
+
+// Opera ~12 has broken Object#toString
+var BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;
+
+// `ToNumber` abstract operation
+// https://tc39.es/ecma262/#sec-tonumber
+var toNumber = function (argument) {
+ var it = toPrimitive(argument, false);
+ var first, third, radix, maxCode, digits, length, index, code;
+ if (typeof it == 'string' && it.length > 2) {
+ it = trim(it);
+ first = it.charCodeAt(0);
+ if (first === 43 || first === 45) {
+ third = it.charCodeAt(2);
+ if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
+ } else if (first === 48) {
+ switch (it.charCodeAt(1)) {
+ case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i
+ case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i
+ default: return +it;
+ }
+ digits = it.slice(2);
+ length = digits.length;
+ for (index = 0; index < length; index++) {
+ code = digits.charCodeAt(index);
+ // parseInt parses a string to a first unavailable symbol
+ // but ToNumber should return NaN if a string contains unavailable symbols
+ if (code < 48 || code > maxCode) return NaN;
+ } return parseInt(digits, radix);
+ }
+ } return +it;
+};
+
+// `Number` constructor
+// https://tc39.es/ecma262/#sec-number-constructor
+if (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {
+ var NumberWrapper = function Number(value) {
+ var it = arguments.length < 1 ? 0 : value;
+ var dummy = this;
+ return dummy instanceof NumberWrapper
+ // check on 1..constructor(foo) case
+ && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)
+ ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);
+ };
+ for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (
+ // ES3:
+ 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
+ // ES2015 (in case, if modules with ES2015 Number statics required before):
+ 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
+ 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,' +
+ // ESNext
+ 'fromString,range'
+ ).split(','), j = 0, key; keys.length > j; j++) {
+ if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {
+ defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));
+ }
+ }
+ NumberWrapper.prototype = NumberPrototype;
+ NumberPrototype.constructor = NumberWrapper;
+ redefine(global, NUMBER, NumberWrapper);
+}
+
+
+/***/ }),
+/* 226 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(14);
+var setPrototypeOf = __webpack_require__(45);
+
+// makes subclassing work correct for wrapped built-ins
+module.exports = function ($this, dummy, Wrapper) {
+ var NewTarget, NewTargetPrototype;
+ if (
+ // it can work only with native `setPrototypeOf`
+ setPrototypeOf &&
+ // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
+ typeof (NewTarget = dummy.constructor) == 'function' &&
+ NewTarget !== Wrapper &&
+ isObject(NewTargetPrototype = NewTarget.prototype) &&
+ NewTargetPrototype !== Wrapper.prototype
+ ) setPrototypeOf($this, NewTargetPrototype);
+ return $this;
+};
+
+
+/***/ }),
+/* 227 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var requireObjectCoercible = __webpack_require__(33);
+var whitespaces = __webpack_require__(228);
+
+var whitespace = '[' + whitespaces + ']';
+var ltrim = RegExp('^' + whitespace + whitespace + '*');
+var rtrim = RegExp(whitespace + whitespace + '*$');
+
+// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
+var createMethod = function (TYPE) {
+ return function ($this) {
+ var string = String(requireObjectCoercible($this));
+ if (TYPE & 1) string = string.replace(ltrim, '');
+ if (TYPE & 2) string = string.replace(rtrim, '');
+ return string;
+ };
+};
+
+module.exports = {
+ // `String.prototype.{ trimLeft, trimStart }` methods
+ // https://tc39.es/ecma262/#sec-string.prototype.trimstart
+ start: createMethod(1),
+ // `String.prototype.{ trimRight, trimEnd }` methods
+ // https://tc39.es/ecma262/#sec-string.prototype.trimend
+ end: createMethod(2),
+ // `String.prototype.trim` method
+ // https://tc39.es/ecma262/#sec-string.prototype.trim
+ trim: createMethod(3)
+};
+
+
+/***/ }),
+/* 228 */
+/***/ (function(module, exports) {
+
+// a string of all valid unicode whitespaces
+// eslint-disable-next-line max-len
+module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
+
+
+/***/ }),
+/* 229 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var $ = __webpack_require__(1);
+var toObject = __webpack_require__(19);
+var nativeKeys = __webpack_require__(94);
+var fails = __webpack_require__(4);
+
+var FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });
+
+// `Object.keys` method
+// https://tc39.es/ecma262/#sec-object.keys
+$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {
+ keys: function keys(it) {
+ return nativeKeys(toObject(it));
+ }
+});
+
+
+/***/ }),
+/* 230 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var anObject = __webpack_require__(11);
+
+// `RegExp.prototype.flags` getter implementation
+// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
+module.exports = function () {
+ var that = anObject(this);
+ var result = '';
+ if (that.global) result += 'g';
+ if (that.ignoreCase) result += 'i';
+ if (that.multiline) result += 'm';
+ if (that.dotAll) result += 's';
+ if (that.unicode) result += 'u';
+ if (that.sticky) result += 'y';
+ return result;
+};
+
+
+/***/ }),
+/* 231 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var fixRegExpWellKnownSymbolLogic = __webpack_require__(162);
+var anObject = __webpack_require__(11);
+var toLength = __webpack_require__(8);
+var toInteger = __webpack_require__(35);
+var requireObjectCoercible = __webpack_require__(33);
+var advanceStringIndex = __webpack_require__(163);
+var getSubstitution = __webpack_require__(337);
+var regExpExec = __webpack_require__(164);
+
+var max = Math.max;
+var min = Math.min;
+
+var maybeToString = function (it) {
+ return it === undefined ? it : String(it);
+};
+
+// @@replace logic
+fixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
+ var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;
+ var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;
+ var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';
+
+ return [
+ // `String.prototype.replace` method
+ // https://tc39.es/ecma262/#sec-string.prototype.replace
+ function replace(searchValue, replaceValue) {
+ var O = requireObjectCoercible(this);
+ var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
+ return replacer !== undefined
+ ? replacer.call(searchValue, O, replaceValue)
+ : nativeReplace.call(String(O), searchValue, replaceValue);
+ },
+ // `RegExp.prototype[@@replace]` method
+ // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
+ function (regexp, replaceValue) {
+ if (
+ (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||
+ (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)
+ ) {
+ var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
+ if (res.done) return res.value;
+ }
+
+ var rx = anObject(regexp);
+ var S = String(this);
+
+ var functionalReplace = typeof replaceValue === 'function';
+ if (!functionalReplace) replaceValue = String(replaceValue);
+
+ var global = rx.global;
+ if (global) {
+ var fullUnicode = rx.unicode;
+ rx.lastIndex = 0;
+ }
+ var results = [];
+ while (true) {
+ var result = regExpExec(rx, S);
+ if (result === null) break;
+
+ results.push(result);
+ if (!global) break;
+
+ var matchStr = String(result[0]);
+ if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
+ }
+
+ var accumulatedResult = '';
+ var nextSourcePosition = 0;
+ for (var i = 0; i < results.length; i++) {
+ result = results[i];
+
+ var matched = String(result[0]);
+ var position = max(min(toInteger(result.index), S.length), 0);
+ var captures = [];
+ // NOTE: This is equivalent to
+ // captures = result.slice(1).map(maybeToString)
+ // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
+ // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
+ // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
+ for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
+ var namedCaptures = result.groups;
+ if (functionalReplace) {
+ var replacerArgs = [matched].concat(captures, position, S);
+ if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
+ var replacement = String(replaceValue.apply(undefined, replacerArgs));
+ } else {
+ replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
+ }
+ if (position >= nextSourcePosition) {
+ accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
+ nextSourcePosition = position + matched.length;
+ }
+ }
+ return accumulatedResult + S.slice(nextSourcePosition);
+ }
+ ];
+});
+
+
+/***/ }),
+/* 232 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var fixRegExpWellKnownSymbolLogic = __webpack_require__(162);
+var isRegExp = __webpack_require__(338);
+var anObject = __webpack_require__(11);
+var requireObjectCoercible = __webpack_require__(33);
+var speciesConstructor = __webpack_require__(36);
+var advanceStringIndex = __webpack_require__(163);
+var toLength = __webpack_require__(8);
+var callRegExpExec = __webpack_require__(164);
+var regexpExec = __webpack_require__(119);
+var fails = __webpack_require__(4);
+
+var arrayPush = [].push;
+var min = Math.min;
+var MAX_UINT32 = 0xFFFFFFFF;
// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
-var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });
+var SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });
// @@split logic
-__webpack_require__(96)('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
+fixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {
var internalSplit;
if (
- 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
- 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
- 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
- '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
- '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
- ''[$SPLIT](/.?/)[LENGTH]
+ 'abbc'.split(/(b)*/)[1] == 'c' ||
+ 'test'.split(/(?:)/, -1).length != 4 ||
+ 'ab'.split(/(?:ab)*/).length != 2 ||
+ '.'.split(/(.?)(.?)/).length != 4 ||
+ '.'.split(/()()/).length > 1 ||
+ ''.split(/.?/).length
) {
// based on es5-shim implementation, need to rework it
internalSplit = function (separator, limit) {
- var string = String(this);
- if (separator === undefined && limit === 0) return [];
+ var string = String(requireObjectCoercible(this));
+ var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
+ if (lim === 0) return [];
+ if (separator === undefined) return [string];
// If `separator` is not a regex, use native split
- if (!isRegExp(separator)) return $split.call(string, separator, limit);
+ if (!isRegExp(separator)) {
+ return nativeSplit.call(string, separator, lim);
+ }
var output = [];
var flags = (separator.ignoreCase ? 'i' : '') +
(separator.multiline ? 'm' : '') +
(separator.unicode ? 'u' : '') +
(separator.sticky ? 'y' : '');
var lastLastIndex = 0;
- var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
// Make `global` and avoid `lastIndex` issues by working with a copy
var separatorCopy = new RegExp(separator.source, flags + 'g');
var match, lastIndex, lastLength;
while (match = regexpExec.call(separatorCopy, string)) {
- lastIndex = separatorCopy[LAST_INDEX];
+ lastIndex = separatorCopy.lastIndex;
if (lastIndex > lastLastIndex) {
output.push(string.slice(lastLastIndex, match.index));
- if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
- lastLength = match[0][LENGTH];
+ if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));
+ lastLength = match[0].length;
lastLastIndex = lastIndex;
- if (output[LENGTH] >= splitLimit) break;
+ if (output.length >= lim) break;
}
- if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
+ if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop
}
- if (lastLastIndex === string[LENGTH]) {
+ if (lastLastIndex === string.length) {
if (lastLength || !separatorCopy.test('')) output.push('');
} else output.push(string.slice(lastLastIndex));
- return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
+ return output.length > lim ? output.slice(0, lim) : output;
};
// Chakra, V8
- } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
+ } else if ('0'.split(undefined, 0).length) {
internalSplit = function (separator, limit) {
- return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
+ return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);
};
- } else {
- internalSplit = $split;
- }
+ } else internalSplit = nativeSplit;
return [
// `String.prototype.split` method
- // https://tc39.github.io/ecma262/#sec-string.prototype.split
+ // https://tc39.es/ecma262/#sec-string.prototype.split
function split(separator, limit) {
- var O = defined(this);
+ var O = requireObjectCoercible(this);
var splitter = separator == undefined ? undefined : separator[SPLIT];
return splitter !== undefined
? splitter.call(separator, O, limit)
: internalSplit.call(String(O), separator, limit);
},
// `RegExp.prototype[@@split]` method
- // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
+ // https://tc39.es/ecma262/#sec-regexp.prototype-@@split
//
// NOTE: This cannot be properly polyfilled in engines that don't support
// the 'y' flag.
function (regexp, limit) {
- var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
+ var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);
if (res.done) return res.value;
var rx = anObject(regexp);
@@ -12240,7 +14923,7 @@ __webpack_require__(96)('split', 2, function (defined, SPLIT, $split, maybeCallN
var e;
if (
z === null ||
- (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
+ (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
) {
q = advanceStringIndex(S, q, unicodeMatching);
} else {
@@ -12257,609 +14940,420 @@ __webpack_require__(96)('split', 2, function (defined, SPLIT, $split, maybeCallN
return A;
}
];
-});
+}, !SUPPORTS_Y);
/***/ }),
-/* 154 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 7.2.8 IsRegExp(argument)
-var isObject = __webpack_require__(18);
-var cof = __webpack_require__(53);
-var MATCH = __webpack_require__(3)('match');
-module.exports = function (it) {
- var isRegExp;
- return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
-};
-
-
-/***/ }),
-/* 155 */
+/* 233 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(8);
-var has = __webpack_require__(24);
-var cof = __webpack_require__(53);
-var inheritIfRequired = __webpack_require__(237);
-var toPrimitive = __webpack_require__(51);
-var fails = __webpack_require__(10);
-var gOPN = __webpack_require__(55).f;
-var gOPD = __webpack_require__(67).f;
-var dP = __webpack_require__(11).f;
-var $trim = __webpack_require__(238).trim;
-var NUMBER = 'Number';
-var $Number = global[NUMBER];
-var Base = $Number;
-var proto = $Number.prototype;
-// Opera ~12 has broken Object#toString
-var BROKEN_COF = cof(__webpack_require__(65)(proto)) == NUMBER;
-var TRIM = 'trim' in String.prototype;
+var $ = __webpack_require__(1);
+var $trim = __webpack_require__(227).trim;
+var forcedStringTrimMethod = __webpack_require__(339);
-// 7.1.3 ToNumber(argument)
-var toNumber = function (argument) {
- var it = toPrimitive(argument, false);
- if (typeof it == 'string' && it.length > 2) {
- it = TRIM ? it.trim() : $trim(it, 3);
- var first = it.charCodeAt(0);
- var third, radix, maxCode;
- if (first === 43 || first === 45) {
- third = it.charCodeAt(2);
- if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
- } else if (first === 48) {
- switch (it.charCodeAt(1)) {
- case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
- case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
- default: return +it;
- }
- for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {
- code = digits.charCodeAt(i);
- // parseInt parses a string to a first unavailable symbol
- // but ToNumber should return NaN if a string contains unavailable symbols
- if (code < 48 || code > maxCode) return NaN;
- } return parseInt(digits, radix);
- }
- } return +it;
-};
-
-if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {
- $Number = function Number(value) {
- var it = arguments.length < 1 ? 0 : value;
- var that = this;
- return that instanceof $Number
- // check on 1..constructor(foo) case
- && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)
- ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);
- };
- for (var keys = __webpack_require__(9) ? gOPN(Base) : (
- // ES3:
- 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
- // ES6 (in case, if modules with ES6 Number statics required before):
- 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
- 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
- ).split(','), j = 0, key; keys.length > j; j++) {
- if (has(Base, key = keys[j]) && !has($Number, key)) {
- dP($Number, key, gOPD(Base, key));
- }
- }
- $Number.prototype = proto;
- proto.constructor = $Number;
- __webpack_require__(23)(global, NUMBER, $Number);
-}
-
-
-/***/ }),
-/* 156 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// Works with __proto__ only. Old v8 can't work with null proto objects.
-/* eslint-disable no-proto */
-var isObject = __webpack_require__(18);
-var anObject = __webpack_require__(12);
-var check = function (O, proto) {
- anObject(O);
- if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
-};
-module.exports = {
- set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
- function (test, buggy, set) {
- try {
- set = __webpack_require__(52)(Function.call, __webpack_require__(67).f(Object.prototype, '__proto__').set, 2);
- set(test, []);
- buggy = !(test instanceof Array);
- } catch (e) { buggy = true; }
- return function setPrototypeOf(O, proto) {
- check(O, proto);
- if (buggy) O.__proto__ = proto;
- else set(O, proto);
- return O;
- };
- }({}, false) : undefined),
- check: check
-};
-
-
-/***/ }),
-/* 157 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-// https://github.com/tc39/Array.prototype.includes
-var $export = __webpack_require__(5);
-var $includes = __webpack_require__(86)(true);
-
-$export($export.P, 'Array', {
- includes: function includes(el /* , fromIndex = 0 */) {
- return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
- }
-});
-
-__webpack_require__(91)('includes');
-
-
-/***/ }),
-/* 158 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-// 21.1.3.7 String.prototype.includes(searchString, position = 0)
-
-var $export = __webpack_require__(5);
-var context = __webpack_require__(241);
-var INCLUDES = 'includes';
-
-$export($export.P + $export.F * __webpack_require__(242)(INCLUDES), 'String', {
- includes: function includes(searchString /* , position = 0 */) {
- return !!~context(this, searchString, INCLUDES)
- .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
+// `String.prototype.trim` method
+// https://tc39.es/ecma262/#sec-string.prototype.trim
+$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
+ trim: function trim() {
+ return $trim(this);
}
});
/***/ }),
-/* 159 */
+/* 234 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+var $ = __webpack_require__(1);
+var createHTML = __webpack_require__(235);
+var forcedStringHTMLMethod = __webpack_require__(236);
-var anObject = __webpack_require__(12);
-var toObject = __webpack_require__(19);
-var toLength = __webpack_require__(16);
-var toInteger = __webpack_require__(31);
-var advanceStringIndex = __webpack_require__(93);
-var regExpExec = __webpack_require__(95);
-var max = Math.max;
-var min = Math.min;
-var floor = Math.floor;
-var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
-var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;
-
-var maybeToString = function (it) {
- return it === undefined ? it : String(it);
-};
-
-// @@replace logic
-__webpack_require__(96)('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
- return [
- // `String.prototype.replace` method
- // https://tc39.github.io/ecma262/#sec-string.prototype.replace
- function replace(searchValue, replaceValue) {
- var O = defined(this);
- var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
- return fn !== undefined
- ? fn.call(searchValue, O, replaceValue)
- : $replace.call(String(O), searchValue, replaceValue);
- },
- // `RegExp.prototype[@@replace]` method
- // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
- function (regexp, replaceValue) {
- var res = maybeCallNative($replace, regexp, this, replaceValue);
- if (res.done) return res.value;
-
- var rx = anObject(regexp);
- var S = String(this);
- var functionalReplace = typeof replaceValue === 'function';
- if (!functionalReplace) replaceValue = String(replaceValue);
- var global = rx.global;
- if (global) {
- var fullUnicode = rx.unicode;
- rx.lastIndex = 0;
- }
- var results = [];
- while (true) {
- var result = regExpExec(rx, S);
- if (result === null) break;
- results.push(result);
- if (!global) break;
- var matchStr = String(result[0]);
- if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
- }
- var accumulatedResult = '';
- var nextSourcePosition = 0;
- for (var i = 0; i < results.length; i++) {
- result = results[i];
- var matched = String(result[0]);
- var position = max(min(toInteger(result.index), S.length), 0);
- var captures = [];
- // NOTE: This is equivalent to
- // captures = result.slice(1).map(maybeToString)
- // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
- // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
- // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
- for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
- var namedCaptures = result.groups;
- if (functionalReplace) {
- var replacerArgs = [matched].concat(captures, position, S);
- if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
- var replacement = String(replaceValue.apply(undefined, replacerArgs));
- } else {
- replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
- }
- if (position >= nextSourcePosition) {
- accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
- nextSourcePosition = position + matched.length;
- }
- }
- return accumulatedResult + S.slice(nextSourcePosition);
- }
- ];
-
- // https://tc39.github.io/ecma262/#sec-getsubstitution
- function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
- var tailPos = position + matched.length;
- var m = captures.length;
- var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
- if (namedCaptures !== undefined) {
- namedCaptures = toObject(namedCaptures);
- symbols = SUBSTITUTION_SYMBOLS;
- }
- return $replace.call(replacement, symbols, function (match, ch) {
- var capture;
- switch (ch.charAt(0)) {
- case '$': return '$';
- case '&': return matched;
- case '`': return str.slice(0, position);
- case "'": return str.slice(tailPos);
- case '<':
- capture = namedCaptures[ch.slice(1, -1)];
- break;
- default: // \d\d?
- var n = +ch;
- if (n === 0) return match;
- if (n > m) {
- var f = floor(n / 10);
- if (f === 0) return match;
- if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
- return match;
- }
- capture = captures[n - 1];
- }
- return capture === undefined ? '' : capture;
- });
+// `String.prototype.link` method
+// https://tc39.es/ecma262/#sec-string.prototype.link
+$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('link') }, {
+ link: function link(url) {
+ return createHTML(this, 'a', 'href', url);
}
});
/***/ }),
-/* 160 */
+/* 235 */
/***/ (function(module, exports, __webpack_require__) {
-// 19.1.2.14 Object.keys(O)
-var toObject = __webpack_require__(19);
-var $keys = __webpack_require__(42);
+var requireObjectCoercible = __webpack_require__(33);
-__webpack_require__(245)('keys', function () {
- return function keys(it) {
- return $keys(toObject(it));
- };
-});
+var quot = /"/g;
+
+// B.2.3.2.1 CreateHTML(string, tag, attribute, value)
+// https://tc39.es/ecma262/#sec-createhtml
+module.exports = function (string, tag, attribute, value) {
+ var S = String(requireObjectCoercible(string));
+ var p1 = '<' + tag;
+ if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"';
+ return p1 + '>' + S + '' + tag + '>';
+};
/***/ }),
-/* 161 */
+/* 236 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__(4);
+
+// check the existence of a method, lowercase
+// of a tag and escaping quotes in arguments
+module.exports = function (METHOD_NAME) {
+ return fails(function () {
+ var test = ''[METHOD_NAME]('"');
+ return test !== test.toLowerCase() || test.split('"').length > 3;
+ });
+};
+
+
+/***/ }),
+/* 237 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-// 19.1.3.6 Object.prototype.toString()
-var classof = __webpack_require__(64);
-var test = {};
-test[__webpack_require__(3)('toStringTag')] = 'z';
-if (test + '' != '[object z]') {
- __webpack_require__(23)(Object.prototype, 'toString', function toString() {
- return '[object ' + classof(this) + ']';
- }, true);
-}
+var $ = __webpack_require__(1);
+var global = __webpack_require__(3);
+var DESCRIPTORS = __webpack_require__(13);
+var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = __webpack_require__(341);
+var ArrayBufferViewCore = __webpack_require__(5);
+var ArrayBufferModule = __webpack_require__(156);
+var anInstance = __webpack_require__(157);
+var createPropertyDescriptor = __webpack_require__(40);
+var createNonEnumerableProperty = __webpack_require__(18);
+var toLength = __webpack_require__(8);
+var toIndex = __webpack_require__(223);
+var toOffset = __webpack_require__(238);
+var toPrimitive = __webpack_require__(55);
+var has = __webpack_require__(15);
+var classof = __webpack_require__(117);
+var isObject = __webpack_require__(14);
+var create = __webpack_require__(58);
+var setPrototypeOf = __webpack_require__(45);
+var getOwnPropertyNames = __webpack_require__(57).f;
+var typedArrayFrom = __webpack_require__(343);
+var forEach = __webpack_require__(20).forEach;
+var setSpecies = __webpack_require__(158);
+var definePropertyModule = __webpack_require__(16);
+var getOwnPropertyDescriptorModule = __webpack_require__(54);
+var InternalStateModule = __webpack_require__(42);
+var inheritIfRequired = __webpack_require__(226);
+var getInternalState = InternalStateModule.get;
+var setInternalState = InternalStateModule.set;
+var nativeDefineProperty = definePropertyModule.f;
+var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
+var round = Math.round;
+var RangeError = global.RangeError;
+var ArrayBuffer = ArrayBufferModule.ArrayBuffer;
+var DataView = ArrayBufferModule.DataView;
+var NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS;
+var TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG;
+var TypedArray = ArrayBufferViewCore.TypedArray;
+var TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype;
+var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
+var isTypedArray = ArrayBufferViewCore.isTypedArray;
+var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
+var WRONG_LENGTH = 'Wrong length';
-/***/ }),
-/* 162 */
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__(163)('asyncIterator');
-
-
-/***/ }),
-/* 163 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var global = __webpack_require__(8);
-var core = __webpack_require__(39);
-var LIBRARY = __webpack_require__(41);
-var wksExt = __webpack_require__(164);
-var defineProperty = __webpack_require__(11).f;
-module.exports = function (name) {
- var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
- if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
+var fromList = function (C, list) {
+ var index = 0;
+ var length = list.length;
+ var result = new (aTypedArrayConstructor(C))(length);
+ while (length > index) result[index] = list[index++];
+ return result;
};
-
-/***/ }),
-/* 164 */
-/***/ (function(module, exports, __webpack_require__) {
-
-exports.f = __webpack_require__(3);
-
-
-/***/ }),
-/* 165 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-// ECMAScript 6 symbols shim
-var global = __webpack_require__(8);
-var has = __webpack_require__(24);
-var DESCRIPTORS = __webpack_require__(9);
-var $export = __webpack_require__(5);
-var redefine = __webpack_require__(23);
-var META = __webpack_require__(252).KEY;
-var $fails = __webpack_require__(10);
-var shared = __webpack_require__(61);
-var setToStringTag = __webpack_require__(63);
-var uid = __webpack_require__(29);
-var wks = __webpack_require__(3);
-var wksExt = __webpack_require__(164);
-var wksDefine = __webpack_require__(163);
-var enumKeys = __webpack_require__(253);
-var isArray = __webpack_require__(148);
-var anObject = __webpack_require__(12);
-var isObject = __webpack_require__(18);
-var toObject = __webpack_require__(19);
-var toIObject = __webpack_require__(43);
-var toPrimitive = __webpack_require__(51);
-var createDesc = __webpack_require__(40);
-var _create = __webpack_require__(65);
-var gOPNExt = __webpack_require__(254);
-var $GOPD = __webpack_require__(67);
-var $GOPS = __webpack_require__(89);
-var $DP = __webpack_require__(11);
-var $keys = __webpack_require__(42);
-var gOPD = $GOPD.f;
-var dP = $DP.f;
-var gOPN = gOPNExt.f;
-var $Symbol = global.Symbol;
-var $JSON = global.JSON;
-var _stringify = $JSON && $JSON.stringify;
-var PROTOTYPE = 'prototype';
-var HIDDEN = wks('_hidden');
-var TO_PRIMITIVE = wks('toPrimitive');
-var isEnum = {}.propertyIsEnumerable;
-var SymbolRegistry = shared('symbol-registry');
-var AllSymbols = shared('symbols');
-var OPSymbols = shared('op-symbols');
-var ObjectProto = Object[PROTOTYPE];
-var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
-var QObject = global.QObject;
-// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
-var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
-
-// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
-var setSymbolDesc = DESCRIPTORS && $fails(function () {
- return _create(dP({}, 'a', {
- get: function () { return dP(this, 'a', { value: 7 }).a; }
- })).a != 7;
-}) ? function (it, key, D) {
- var protoDesc = gOPD(ObjectProto, key);
- if (protoDesc) delete ObjectProto[key];
- dP(it, key, D);
- if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
-} : dP;
-
-var wrap = function (tag) {
- var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
- sym._k = tag;
- return sym;
+var addGetter = function (it, key) {
+ nativeDefineProperty(it, key, { get: function () {
+ return getInternalState(this)[key];
+ } });
};
-var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
- return typeof it == 'symbol';
-} : function (it) {
- return it instanceof $Symbol;
+var isArrayBuffer = function (it) {
+ var klass;
+ return it instanceof ArrayBuffer || (klass = classof(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer';
};
-var $defineProperty = function defineProperty(it, key, D) {
- if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
- anObject(it);
- key = toPrimitive(key, true);
- anObject(D);
- if (has(AllSymbols, key)) {
- if (!D.enumerable) {
- if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
- it[HIDDEN][key] = true;
- } else {
- if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
- D = _create(D, { enumerable: createDesc(0, false) });
- } return setSymbolDesc(it, key, D);
- } return dP(it, key, D);
-};
-var $defineProperties = function defineProperties(it, P) {
- anObject(it);
- var keys = enumKeys(P = toIObject(P));
- var i = 0;
- var l = keys.length;
- var key;
- while (l > i) $defineProperty(it, key = keys[i++], P[key]);
- return it;
-};
-var $create = function create(it, P) {
- return P === undefined ? _create(it) : $defineProperties(_create(it), P);
-};
-var $propertyIsEnumerable = function propertyIsEnumerable(key) {
- var E = isEnum.call(this, key = toPrimitive(key, true));
- if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
- return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
-};
-var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
- it = toIObject(it);
- key = toPrimitive(key, true);
- if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
- var D = gOPD(it, key);
- if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
- return D;
-};
-var $getOwnPropertyNames = function getOwnPropertyNames(it) {
- var names = gOPN(toIObject(it));
- var result = [];
- var i = 0;
- var key;
- while (names.length > i) {
- if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
- } return result;
-};
-var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
- var IS_OP = it === ObjectProto;
- var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
- var result = [];
- var i = 0;
- var key;
- while (names.length > i) {
- if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
- } return result;
+var isTypedArrayIndex = function (target, key) {
+ return isTypedArray(target)
+ && typeof key != 'symbol'
+ && key in target
+ && String(+key) == String(key);
};
-// 19.4.1.1 Symbol([description])
-if (!USE_NATIVE) {
- $Symbol = function Symbol() {
- if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
- var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
- var $set = function (value) {
- if (this === ObjectProto) $set.call(OPSymbols, value);
- if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
- setSymbolDesc(this, tag, createDesc(1, value));
- };
- if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
- return wrap(tag);
- };
- redefine($Symbol[PROTOTYPE], 'toString', function toString() {
- return this._k;
+var wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) {
+ return isTypedArrayIndex(target, key = toPrimitive(key, true))
+ ? createPropertyDescriptor(2, target[key])
+ : nativeGetOwnPropertyDescriptor(target, key);
+};
+
+var wrappedDefineProperty = function defineProperty(target, key, descriptor) {
+ if (isTypedArrayIndex(target, key = toPrimitive(key, true))
+ && isObject(descriptor)
+ && has(descriptor, 'value')
+ && !has(descriptor, 'get')
+ && !has(descriptor, 'set')
+ // TODO: add validation descriptor w/o calling accessors
+ && !descriptor.configurable
+ && (!has(descriptor, 'writable') || descriptor.writable)
+ && (!has(descriptor, 'enumerable') || descriptor.enumerable)
+ ) {
+ target[key] = descriptor.value;
+ return target;
+ } return nativeDefineProperty(target, key, descriptor);
+};
+
+if (DESCRIPTORS) {
+ if (!NATIVE_ARRAY_BUFFER_VIEWS) {
+ getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor;
+ definePropertyModule.f = wrappedDefineProperty;
+ addGetter(TypedArrayPrototype, 'buffer');
+ addGetter(TypedArrayPrototype, 'byteOffset');
+ addGetter(TypedArrayPrototype, 'byteLength');
+ addGetter(TypedArrayPrototype, 'length');
+ }
+
+ $({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, {
+ getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor,
+ defineProperty: wrappedDefineProperty
});
- $GOPD.f = $getOwnPropertyDescriptor;
- $DP.f = $defineProperty;
- __webpack_require__(55).f = gOPNExt.f = $getOwnPropertyNames;
- __webpack_require__(62).f = $propertyIsEnumerable;
- $GOPS.f = $getOwnPropertySymbols;
+ module.exports = function (TYPE, wrapper, CLAMPED) {
+ var BYTES = TYPE.match(/\d+$/)[0] / 8;
+ var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array';
+ var GETTER = 'get' + TYPE;
+ var SETTER = 'set' + TYPE;
+ var NativeTypedArrayConstructor = global[CONSTRUCTOR_NAME];
+ var TypedArrayConstructor = NativeTypedArrayConstructor;
+ var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype;
+ var exported = {};
- if (DESCRIPTORS && !__webpack_require__(41)) {
- redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
- }
-
- wksExt.f = function (name) {
- return wrap(wks(name));
- };
-}
-
-$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
-
-for (var es6Symbols = (
- // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
- 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
-).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
-
-for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
-
-$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
- // 19.4.2.1 Symbol.for(key)
- 'for': function (key) {
- return has(SymbolRegistry, key += '')
- ? SymbolRegistry[key]
- : SymbolRegistry[key] = $Symbol(key);
- },
- // 19.4.2.5 Symbol.keyFor(sym)
- keyFor: function keyFor(sym) {
- if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
- for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
- },
- useSetter: function () { setter = true; },
- useSimple: function () { setter = false; }
-});
-
-$export($export.S + $export.F * !USE_NATIVE, 'Object', {
- // 19.1.2.2 Object.create(O [, Properties])
- create: $create,
- // 19.1.2.4 Object.defineProperty(O, P, Attributes)
- defineProperty: $defineProperty,
- // 19.1.2.3 Object.defineProperties(O, Properties)
- defineProperties: $defineProperties,
- // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
- getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
- // 19.1.2.7 Object.getOwnPropertyNames(O)
- getOwnPropertyNames: $getOwnPropertyNames,
- // 19.1.2.8 Object.getOwnPropertySymbols(O)
- getOwnPropertySymbols: $getOwnPropertySymbols
-});
-
-// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
-// https://bugs.chromium.org/p/v8/issues/detail?id=3443
-var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });
-
-$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
- getOwnPropertySymbols: function getOwnPropertySymbols(it) {
- return $GOPS.f(toObject(it));
- }
-});
-
-// 24.3.2 JSON.stringify(value [, replacer [, space]])
-$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
- var S = $Symbol();
- // MS Edge converts symbol values to JSON as {}
- // WebKit converts symbol values to JSON as null
- // V8 throws on boxed symbols
- return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
-})), 'JSON', {
- stringify: function stringify(it) {
- var args = [it];
- var i = 1;
- var replacer, $replacer;
- while (arguments.length > i) args.push(arguments[i++]);
- $replacer = replacer = args[1];
- if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
- if (!isArray(replacer)) replacer = function (key, value) {
- if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
- if (!isSymbol(value)) return value;
+ var getter = function (that, index) {
+ var data = getInternalState(that);
+ return data.view[GETTER](index * BYTES + data.byteOffset, true);
};
- args[1] = replacer;
- return _stringify.apply($JSON, args);
- }
-});
-// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
-$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(15)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
-// 19.4.3.5 Symbol.prototype[@@toStringTag]
-setToStringTag($Symbol, 'Symbol');
-// 20.2.1.9 Math[@@toStringTag]
-setToStringTag(Math, 'Math', true);
-// 24.3.3 JSON[@@toStringTag]
-setToStringTag(global.JSON, 'JSON', true);
+ var setter = function (that, index, value) {
+ var data = getInternalState(that);
+ if (CLAMPED) value = (value = round(value)) < 0 ? 0 : value > 0xFF ? 0xFF : value & 0xFF;
+ data.view[SETTER](index * BYTES + data.byteOffset, value, true);
+ };
+
+ var addElement = function (that, index) {
+ nativeDefineProperty(that, index, {
+ get: function () {
+ return getter(this, index);
+ },
+ set: function (value) {
+ return setter(this, index, value);
+ },
+ enumerable: true
+ });
+ };
+
+ if (!NATIVE_ARRAY_BUFFER_VIEWS) {
+ TypedArrayConstructor = wrapper(function (that, data, offset, $length) {
+ anInstance(that, TypedArrayConstructor, CONSTRUCTOR_NAME);
+ var index = 0;
+ var byteOffset = 0;
+ var buffer, byteLength, length;
+ if (!isObject(data)) {
+ length = toIndex(data);
+ byteLength = length * BYTES;
+ buffer = new ArrayBuffer(byteLength);
+ } else if (isArrayBuffer(data)) {
+ buffer = data;
+ byteOffset = toOffset(offset, BYTES);
+ var $len = data.byteLength;
+ if ($length === undefined) {
+ if ($len % BYTES) throw RangeError(WRONG_LENGTH);
+ byteLength = $len - byteOffset;
+ if (byteLength < 0) throw RangeError(WRONG_LENGTH);
+ } else {
+ byteLength = toLength($length) * BYTES;
+ if (byteLength + byteOffset > $len) throw RangeError(WRONG_LENGTH);
+ }
+ length = byteLength / BYTES;
+ } else if (isTypedArray(data)) {
+ return fromList(TypedArrayConstructor, data);
+ } else {
+ return typedArrayFrom.call(TypedArrayConstructor, data);
+ }
+ setInternalState(that, {
+ buffer: buffer,
+ byteOffset: byteOffset,
+ byteLength: byteLength,
+ length: length,
+ view: new DataView(buffer)
+ });
+ while (index < length) addElement(that, index++);
+ });
+
+ if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);
+ TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype);
+ } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) {
+ TypedArrayConstructor = wrapper(function (dummy, data, typedArrayOffset, $length) {
+ anInstance(dummy, TypedArrayConstructor, CONSTRUCTOR_NAME);
+ return inheritIfRequired(function () {
+ if (!isObject(data)) return new NativeTypedArrayConstructor(toIndex(data));
+ if (isArrayBuffer(data)) return $length !== undefined
+ ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length)
+ : typedArrayOffset !== undefined
+ ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES))
+ : new NativeTypedArrayConstructor(data);
+ if (isTypedArray(data)) return fromList(TypedArrayConstructor, data);
+ return typedArrayFrom.call(TypedArrayConstructor, data);
+ }(), dummy, TypedArrayConstructor);
+ });
+
+ if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);
+ forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function (key) {
+ if (!(key in TypedArrayConstructor)) {
+ createNonEnumerableProperty(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]);
+ }
+ });
+ TypedArrayConstructor.prototype = TypedArrayConstructorPrototype;
+ }
+
+ if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) {
+ createNonEnumerableProperty(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor);
+ }
+
+ if (TYPED_ARRAY_TAG) {
+ createNonEnumerableProperty(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME);
+ }
+
+ exported[CONSTRUCTOR_NAME] = TypedArrayConstructor;
+
+ $({
+ global: true, forced: TypedArrayConstructor != NativeTypedArrayConstructor, sham: !NATIVE_ARRAY_BUFFER_VIEWS
+ }, exported);
+
+ if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) {
+ createNonEnumerableProperty(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES);
+ }
+
+ if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) {
+ createNonEnumerableProperty(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES);
+ }
+
+ setSpecies(CONSTRUCTOR_NAME);
+ };
+} else module.exports = function () { /* empty */ };
/***/ }),
-/* 166 */
+/* 238 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toPositiveInteger = __webpack_require__(342);
+
+module.exports = function (it, BYTES) {
+ var offset = toPositiveInteger(it);
+ if (offset % BYTES) throw RangeError('Wrong offset');
+ return offset;
+};
+
+
+/***/ }),
+/* 239 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var aFunction = __webpack_require__(44);
+var toObject = __webpack_require__(19);
+var IndexedObject = __webpack_require__(92);
+var toLength = __webpack_require__(8);
+
+// `Array.prototype.{ reduce, reduceRight }` methods implementation
+var createMethod = function (IS_RIGHT) {
+ return function (that, callbackfn, argumentsLength, memo) {
+ aFunction(callbackfn);
+ var O = toObject(that);
+ var self = IndexedObject(O);
+ var length = toLength(O.length);
+ var index = IS_RIGHT ? length - 1 : 0;
+ var i = IS_RIGHT ? -1 : 1;
+ if (argumentsLength < 2) while (true) {
+ if (index in self) {
+ memo = self[index];
+ index += i;
+ break;
+ }
+ index += i;
+ if (IS_RIGHT ? index < 0 : length <= index) {
+ throw TypeError('Reduce of empty array with no initial value');
+ }
+ }
+ for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {
+ memo = callbackfn(memo, self[index], index, O);
+ }
+ return memo;
+ };
+};
+
+module.exports = {
+ // `Array.prototype.reduce` method
+ // https://tc39.es/ecma262/#sec-array.prototype.reduce
+ left: createMethod(false),
+ // `Array.prototype.reduceRight` method
+ // https://tc39.es/ecma262/#sec-array.prototype.reduceright
+ right: createMethod(true)
+};
+
+
+/***/ }),
+/* 240 */
+/***/ (function(module, exports) {
+
+// iterable DOM collections
+// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
+module.exports = {
+ CSSRuleList: 0,
+ CSSStyleDeclaration: 0,
+ CSSValueList: 0,
+ ClientRectList: 0,
+ DOMRectList: 0,
+ DOMStringList: 0,
+ DOMTokenList: 1,
+ DataTransferItemList: 0,
+ FileList: 0,
+ HTMLAllCollection: 0,
+ HTMLCollection: 0,
+ HTMLFormElement: 0,
+ HTMLSelectElement: 0,
+ MediaList: 0,
+ MimeTypeArray: 0,
+ NamedNodeMap: 0,
+ NodeList: 1,
+ PaintRequestList: 0,
+ Plugin: 0,
+ PluginArray: 0,
+ SVGLengthList: 0,
+ SVGNumberList: 0,
+ SVGPathSegList: 0,
+ SVGPointList: 0,
+ SVGStringList: 0,
+ SVGTransformList: 0,
+ SourceBufferList: 0,
+ StyleSheetList: 0,
+ TextTrackCueList: 0,
+ TextTrackList: 0,
+ TouchList: 0
+};
+
+
+/***/ }),
+/* 241 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -12888,13 +15382,13 @@ setToStringTag(global.JSON, 'JSON', true);
/**/
-var pna = __webpack_require__(69);
+var pna = __webpack_require__(123);
/**/
module.exports = Readable;
/**/
-var isArray = __webpack_require__(132);
+var isArray = __webpack_require__(200);
/**/
/**/
@@ -12904,7 +15398,7 @@ var Duplex;
Readable.ReadableState = ReadableState;
/**/
-var EE = __webpack_require__(68).EventEmitter;
+var EE = __webpack_require__(122).EventEmitter;
var EElistenerCount = function (emitter, type) {
return emitter.listeners(type).length;
@@ -12912,12 +15406,12 @@ var EElistenerCount = function (emitter, type) {
/**/
/**/
-var Stream = __webpack_require__(167);
+var Stream = __webpack_require__(242);
/**/
/**/
-var Buffer = __webpack_require__(70).Buffer;
+var Buffer = __webpack_require__(124).Buffer;
var OurUint8Array = global.Uint8Array || function () {};
function _uint8ArrayToBuffer(chunk) {
return Buffer.from(chunk);
@@ -12929,12 +15423,12 @@ function _isUint8Array(obj) {
/**/
/**/
-var util = Object.create(__webpack_require__(56));
-util.inherits = __webpack_require__(46);
+var util = Object.create(__webpack_require__(98));
+util.inherits = __webpack_require__(86);
/**/
/**/
-var debugUtil = __webpack_require__(256);
+var debugUtil = __webpack_require__(347);
var debug = void 0;
if (debugUtil && debugUtil.debuglog) {
debug = debugUtil.debuglog('stream');
@@ -12943,8 +15437,8 @@ if (debugUtil && debugUtil.debuglog) {
}
/**/
-var BufferList = __webpack_require__(257);
-var destroyImpl = __webpack_require__(168);
+var BufferList = __webpack_require__(348);
+var destroyImpl = __webpack_require__(243);
var StringDecoder;
util.inherits(Readable, Stream);
@@ -12964,7 +15458,7 @@ function prependListener(emitter, event, fn) {
}
function ReadableState(options, stream) {
- Duplex = Duplex || __webpack_require__(32);
+ Duplex = Duplex || __webpack_require__(48);
options = options || {};
@@ -13034,14 +15528,14 @@ function ReadableState(options, stream) {
this.decoder = null;
this.encoding = null;
if (options.encoding) {
- if (!StringDecoder) StringDecoder = __webpack_require__(103).StringDecoder;
+ if (!StringDecoder) StringDecoder = __webpack_require__(125).StringDecoder;
this.decoder = new StringDecoder(options.encoding);
this.encoding = options.encoding;
}
}
function Readable(options) {
- Duplex = Duplex || __webpack_require__(32);
+ Duplex = Duplex || __webpack_require__(48);
if (!(this instanceof Readable)) return new Readable(options);
@@ -13190,7 +15684,7 @@ Readable.prototype.isPaused = function () {
// backwards compatibility.
Readable.prototype.setEncoding = function (enc) {
- if (!StringDecoder) StringDecoder = __webpack_require__(103).StringDecoder;
+ if (!StringDecoder) StringDecoder = __webpack_require__(125).StringDecoder;
this._readableState.decoder = new StringDecoder(enc);
this._readableState.encoding = enc;
return this;
@@ -13882,17 +16376,17 @@ function indexOf(xs, x) {
}
return -1;
}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(22), __webpack_require__(25)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24), __webpack_require__(47)))
/***/ }),
-/* 167 */
+/* 242 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(68).EventEmitter;
+module.exports = __webpack_require__(122).EventEmitter;
/***/ }),
-/* 168 */
+/* 243 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -13900,7 +16394,7 @@ module.exports = __webpack_require__(68).EventEmitter;
/**/
-var pna = __webpack_require__(69);
+var pna = __webpack_require__(123);
/**/
// undocumented cb() API, needed for core, not for public API
@@ -13972,7 +16466,7 @@ module.exports = {
};
/***/ }),
-/* 169 */
+/* 244 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -14043,11 +16537,11 @@ module.exports = {
module.exports = Transform;
-var Duplex = __webpack_require__(32);
+var Duplex = __webpack_require__(48);
/**/
-var util = Object.create(__webpack_require__(56));
-util.inherits = __webpack_require__(46);
+var util = Object.create(__webpack_require__(98));
+util.inherits = __webpack_require__(86);
/**/
util.inherits(Transform, Duplex);
@@ -14192,18 +16686,18 @@ function done(stream, er, data) {
}
/***/ }),
-/* 170 */
+/* 245 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(process) {
-var Buffer = __webpack_require__(4).Buffer;
-var Transform = __webpack_require__(100).Transform;
-var binding = __webpack_require__(265);
-var util = __webpack_require__(104);
-var assert = __webpack_require__(171).ok;
-var kMaxLength = __webpack_require__(4).kMaxLength;
+var Buffer = __webpack_require__(10).Buffer;
+var Transform = __webpack_require__(121).Transform;
+var binding = __webpack_require__(356);
+var util = __webpack_require__(167);
+var assert = __webpack_require__(246).ok;
+var kMaxLength = __webpack_require__(10).kMaxLength;
var kRangeErrorMessage = 'Cannot create final Buffer. It would be larger ' + 'than 0x' + kMaxLength.toString(16) + ' bytes';
// zlib doesn't provide these, so kludge them in following the same
@@ -14805,16 +17299,16 @@ util.inherits(Gunzip, Zlib);
util.inherits(DeflateRaw, Zlib);
util.inherits(InflateRaw, Zlib);
util.inherits(Unzip, Zlib);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(25)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(47)))
/***/ }),
-/* 171 */
+/* 246 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(global) {
-var objectAssign = __webpack_require__(266);
+var objectAssign = __webpack_require__(357);
// compare and isBuffer taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js
// original notice:
@@ -14884,7 +17378,7 @@ function isBuffer(b) {
// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-var util = __webpack_require__(104);
+var util = __webpack_require__(167);
var hasOwn = Object.prototype.hasOwnProperty;
var pSlice = Array.prototype.slice;
var functionsHaveNames = (function () {
@@ -15319,10 +17813,10 @@ var objectKeys = Object.keys || function (obj) {
return keys;
};
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(22)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24)))
/***/ }),
-/* 172 */
+/* 247 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -15380,7 +17874,7 @@ module.exports = adler32;
/***/ }),
-/* 173 */
+/* 248 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -15446,13 +17940,13 @@ module.exports = crc32;
/***/ }),
-/* 174 */
+/* 249 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -15643,13 +18137,13 @@ module.exports = crc32;
}));
/***/ }),
-/* 175 */
+/* 250 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(72));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(127));
}
else {}
}(this, function (CryptoJS) {
@@ -15964,28 +18458,28 @@ module.exports = crc32;
}));
/***/ }),
-/* 176 */
+/* 251 */
/***/ (function(module) {
-module.exports = JSON.parse("[[\"a140\",\"\",62],[\"a180\",\"\",32],[\"a240\",\"\",62],[\"a280\",\"\",32],[\"a2ab\",\"\",5],[\"a2e3\",\"€\"],[\"a2ef\",\"\"],[\"a2fd\",\"\"],[\"a340\",\"\",62],[\"a380\",\"\",31,\" \"],[\"a440\",\"\",62],[\"a480\",\"\",32],[\"a4f4\",\"\",10],[\"a540\",\"\",62],[\"a580\",\"\",32],[\"a5f7\",\"\",7],[\"a640\",\"\",62],[\"a680\",\"\",32],[\"a6b9\",\"\",7],[\"a6d9\",\"\",6],[\"a6ec\",\"\"],[\"a6f3\",\"\"],[\"a6f6\",\"\",8],[\"a740\",\"\",62],[\"a780\",\"\",32],[\"a7c2\",\"\",14],[\"a7f2\",\"\",12],[\"a896\",\"\",10],[\"a8bc\",\"\"],[\"a8bf\",\"ǹ\"],[\"a8c1\",\"\"],[\"a8ea\",\"\",20],[\"a958\",\"\"],[\"a95b\",\"\"],[\"a95d\",\"\"],[\"a989\",\"〾⿰\",11],[\"a997\",\"\",12],[\"a9f0\",\"\",14],[\"aaa1\",\"\",93],[\"aba1\",\"\",93],[\"aca1\",\"\",93],[\"ada1\",\"\",93],[\"aea1\",\"\",93],[\"afa1\",\"\",93],[\"d7fa\",\"\",4],[\"f8a1\",\"\",93],[\"f9a1\",\"\",93],[\"faa1\",\"\",93],[\"fba1\",\"\",93],[\"fca1\",\"\",93],[\"fda1\",\"\",93],[\"fe50\",\"⺁⺄㑳㑇⺈⺋㖞㘚㘎⺌⺗㥮㤘㧏㧟㩳㧐㭎㱮㳠⺧⺪䁖䅟⺮䌷⺳⺶⺷䎱䎬⺻䏝䓖䙡䙌\"],[\"fe80\",\"䜣䜩䝼䞍⻊䥇䥺䥽䦂䦃䦅䦆䦟䦛䦷䦶䲣䲟䲠䲡䱷䲢䴓\",6,\"䶮\",93]]");
+module.exports = JSON.parse("[[\"a140\",\"\",62],[\"a180\",\"\",32],[\"a240\",\"\",62],[\"a280\",\"\",32],[\"a2ab\",\"\",5],[\"a2e3\",\"€\"],[\"a2ef\",\"\"],[\"a2fd\",\"\"],[\"a340\",\"\",62],[\"a380\",\"\",31,\" \"],[\"a440\",\"\",62],[\"a480\",\"\",32],[\"a4f4\",\"\",10],[\"a540\",\"\",62],[\"a580\",\"\",32],[\"a5f7\",\"\",7],[\"a640\",\"\",62],[\"a680\",\"\",32],[\"a6b9\",\"\",7],[\"a6d9\",\"\",6],[\"a6ec\",\"\"],[\"a6f3\",\"\"],[\"a6f6\",\"\",8],[\"a740\",\"\",62],[\"a780\",\"\",32],[\"a7c2\",\"\",14],[\"a7f2\",\"\",12],[\"a896\",\"\",10],[\"a8bc\",\"ḿ\"],[\"a8bf\",\"ǹ\"],[\"a8c1\",\"\"],[\"a8ea\",\"\",20],[\"a958\",\"\"],[\"a95b\",\"\"],[\"a95d\",\"\"],[\"a989\",\"〾⿰\",11],[\"a997\",\"\",12],[\"a9f0\",\"\",14],[\"aaa1\",\"\",93],[\"aba1\",\"\",93],[\"aca1\",\"\",93],[\"ada1\",\"\",93],[\"aea1\",\"\",93],[\"afa1\",\"\",93],[\"d7fa\",\"\",4],[\"f8a1\",\"\",93],[\"f9a1\",\"\",93],[\"faa1\",\"\",93],[\"fba1\",\"\",93],[\"fca1\",\"\",93],[\"fda1\",\"\",93],[\"fe50\",\"⺁⺄㑳㑇⺈⺋㖞㘚㘎⺌⺗㥮㤘㧏㧟㩳㧐㭎㱮㳠⺧⺪䁖䅟⺮䌷⺳⺶⺷䎱䎬⺻䏝䓖䙡䙌\"],[\"fe80\",\"䜣䜩䝼䞍⻊䥇䥺䥽䦂䦃䦅䦆䦟䦛䦷䦶䲣䲟䲠䲡䱷䲢䴓\",6,\"䶮\",93],[\"8135f437\",\"\"]]");
/***/ }),
-/* 177 */
+/* 252 */
/***/ (function(module) {
module.exports = JSON.parse("[[\"0\",\"\\u0000\",127],[\"a140\",\" ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚\"],[\"a1a1\",\"﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢\",4,\"~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/\"],[\"a240\",\"\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁\",7,\"▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭\"],[\"a2a1\",\"╮╰╯═╞╪╡◢◣◥◤╱╲╳0\",9,\"Ⅰ\",9,\"〡\",8,\"十卄卅A\",25,\"a\",21],[\"a340\",\"wxyzΑ\",16,\"Σ\",6,\"α\",16,\"σ\",6,\"ㄅ\",10],[\"a3a1\",\"ㄐ\",25,\"˙ˉˊˇˋ\"],[\"a3e1\",\"€\"],[\"a440\",\"一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才\"],[\"a4a1\",\"丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙\"],[\"a540\",\"世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外\"],[\"a5a1\",\"央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全\"],[\"a640\",\"共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年\"],[\"a6a1\",\"式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣\"],[\"a740\",\"作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍\"],[\"a7a1\",\"均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠\"],[\"a840\",\"杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒\"],[\"a8a1\",\"芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵\"],[\"a940\",\"咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居\"],[\"a9a1\",\"屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊\"],[\"aa40\",\"昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠\"],[\"aaa1\",\"炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附\"],[\"ab40\",\"陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品\"],[\"aba1\",\"哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷\"],[\"ac40\",\"拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗\"],[\"aca1\",\"活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄\"],[\"ad40\",\"耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥\"],[\"ada1\",\"迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪\"],[\"ae40\",\"哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙\"],[\"aea1\",\"恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓\"],[\"af40\",\"浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷\"],[\"afa1\",\"砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃\"],[\"b040\",\"虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡\"],[\"b0a1\",\"陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀\"],[\"b140\",\"娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽\"],[\"b1a1\",\"情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺\"],[\"b240\",\"毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶\"],[\"b2a1\",\"瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼\"],[\"b340\",\"莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途\"],[\"b3a1\",\"部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠\"],[\"b440\",\"婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍\"],[\"b4a1\",\"插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋\"],[\"b540\",\"溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘\"],[\"b5a1\",\"窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁\"],[\"b640\",\"詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑\"],[\"b6a1\",\"間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼\"],[\"b740\",\"媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業\"],[\"b7a1\",\"楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督\"],[\"b840\",\"睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫\"],[\"b8a1\",\"腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊\"],[\"b940\",\"辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴\"],[\"b9a1\",\"飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇\"],[\"ba40\",\"愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢\"],[\"baa1\",\"滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬\"],[\"bb40\",\"罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤\"],[\"bba1\",\"說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜\"],[\"bc40\",\"劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂\"],[\"bca1\",\"慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃\"],[\"bd40\",\"瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯\"],[\"bda1\",\"翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞\"],[\"be40\",\"輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉\"],[\"bea1\",\"鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡\"],[\"bf40\",\"濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊\"],[\"bfa1\",\"縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚\"],[\"c040\",\"錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇\"],[\"c0a1\",\"嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬\"],[\"c140\",\"瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪\"],[\"c1a1\",\"薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁\"],[\"c240\",\"駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘\"],[\"c2a1\",\"癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦\"],[\"c340\",\"鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸\"],[\"c3a1\",\"獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類\"],[\"c440\",\"願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼\"],[\"c4a1\",\"纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴\"],[\"c540\",\"護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬\"],[\"c5a1\",\"禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒\"],[\"c640\",\"讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲\"],[\"c940\",\"乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕\"],[\"c9a1\",\"氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋\"],[\"ca40\",\"汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘\"],[\"caa1\",\"吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇\"],[\"cb40\",\"杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓\"],[\"cba1\",\"芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢\"],[\"cc40\",\"坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋\"],[\"cca1\",\"怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲\"],[\"cd40\",\"泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺\"],[\"cda1\",\"矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏\"],[\"ce40\",\"哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛\"],[\"cea1\",\"峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺\"],[\"cf40\",\"柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂\"],[\"cfa1\",\"洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀\"],[\"d040\",\"穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪\"],[\"d0a1\",\"苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱\"],[\"d140\",\"唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧\"],[\"d1a1\",\"恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤\"],[\"d240\",\"毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸\"],[\"d2a1\",\"牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐\"],[\"d340\",\"笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢\"],[\"d3a1\",\"荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐\"],[\"d440\",\"酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅\"],[\"d4a1\",\"唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏\"],[\"d540\",\"崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟\"],[\"d5a1\",\"捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉\"],[\"d640\",\"淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏\"],[\"d6a1\",\"痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟\"],[\"d740\",\"耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷\"],[\"d7a1\",\"蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪\"],[\"d840\",\"釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷\"],[\"d8a1\",\"堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔\"],[\"d940\",\"惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒\"],[\"d9a1\",\"晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞\"],[\"da40\",\"湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖\"],[\"daa1\",\"琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥\"],[\"db40\",\"罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳\"],[\"dba1\",\"菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺\"],[\"dc40\",\"軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈\"],[\"dca1\",\"隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆\"],[\"dd40\",\"媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤\"],[\"dda1\",\"搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼\"],[\"de40\",\"毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓\"],[\"dea1\",\"煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓\"],[\"df40\",\"稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯\"],[\"dfa1\",\"腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤\"],[\"e040\",\"觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿\"],[\"e0a1\",\"遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠\"],[\"e140\",\"凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠\"],[\"e1a1\",\"寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉\"],[\"e240\",\"榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊\"],[\"e2a1\",\"漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓\"],[\"e340\",\"禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞\"],[\"e3a1\",\"耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻\"],[\"e440\",\"裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍\"],[\"e4a1\",\"銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘\"],[\"e540\",\"噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉\"],[\"e5a1\",\"憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒\"],[\"e640\",\"澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙\"],[\"e6a1\",\"獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟\"],[\"e740\",\"膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢\"],[\"e7a1\",\"蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧\"],[\"e840\",\"踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓\"],[\"e8a1\",\"銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮\"],[\"e940\",\"噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺\"],[\"e9a1\",\"憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸\"],[\"ea40\",\"澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙\"],[\"eaa1\",\"瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘\"],[\"eb40\",\"蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠\"],[\"eba1\",\"諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌\"],[\"ec40\",\"錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕\"],[\"eca1\",\"魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎\"],[\"ed40\",\"檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶\"],[\"eda1\",\"瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞\"],[\"ee40\",\"蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞\"],[\"eea1\",\"謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜\"],[\"ef40\",\"鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰\"],[\"efa1\",\"鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶\"],[\"f040\",\"璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒\"],[\"f0a1\",\"臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧\"],[\"f140\",\"蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪\"],[\"f1a1\",\"鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰\"],[\"f240\",\"徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛\"],[\"f2a1\",\"礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕\"],[\"f340\",\"譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦\"],[\"f3a1\",\"鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲\"],[\"f440\",\"嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩\"],[\"f4a1\",\"禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿\"],[\"f540\",\"鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛\"],[\"f5a1\",\"鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥\"],[\"f640\",\"蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺\"],[\"f6a1\",\"騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚\"],[\"f740\",\"糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊\"],[\"f7a1\",\"驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾\"],[\"f840\",\"讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏\"],[\"f8a1\",\"齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚\"],[\"f940\",\"纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊\"],[\"f9a1\",\"龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓\"]]");
/***/ }),
-/* 178 */
+/* 253 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
(function() {
var ArrayT, NumberT, utils;
- NumberT = __webpack_require__(49).Number;
+ NumberT = __webpack_require__(89).Number;
- utils = __webpack_require__(26);
+ utils = __webpack_require__(38);
ArrayT = (function() {
function ArrayT(type, length, lengthType) {
@@ -16087,14 +18581,14 @@ module.exports = JSON.parse("[[\"0\",\"\\u0000\",127],[\"a140\",\" ,、。
/***/ }),
-/* 179 */
+/* 254 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
(function() {
var Struct, utils;
- utils = __webpack_require__(26);
+ utils = __webpack_require__(38);
Struct = (function() {
function Struct(fields) {
@@ -16219,39 +18713,16 @@ module.exports = JSON.parse("[[\"0\",\"\\u0000\",127],[\"a140\",\" ,、。
/***/ }),
-/* 180 */
+/* 255 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = !__webpack_require__(13) && !__webpack_require__(37)(function () {
- return Object.defineProperty(__webpack_require__(181)('div'), 'a', { get: function () { return 7; } }).a != 7;
+module.exports = !__webpack_require__(23) && !__webpack_require__(52)(function () {
+ return Object.defineProperty(__webpack_require__(177)('div'), 'a', { get: function () { return 7; } }).a != 7;
});
/***/ }),
-/* 181 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var isObject = __webpack_require__(20);
-var document = __webpack_require__(21).document;
-// typeof document.createElement is 'object' in old IE
-var is = isObject(document) && isObject(document.createElement);
-module.exports = function (it) {
- return is ? document.createElement(it) : {};
-};
-
-
-/***/ }),
-/* 182 */
-/***/ (function(module, exports) {
-
-module.exports = function (it) {
- if (typeof it != 'function') throw TypeError(it + ' is not a function!');
- return it;
-};
-
-
-/***/ }),
-/* 183 */
+/* 256 */
/***/ (function(module, exports) {
module.exports = function (done, value) {
@@ -16260,21 +18731,21 @@ module.exports = function (done, value) {
/***/ }),
-/* 184 */
+/* 257 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(27);
+module.exports = __webpack_require__(39);
/***/ }),
-/* 185 */
+/* 258 */
/***/ (function(module, exports, __webpack_require__) {
-var dP = __webpack_require__(17);
-var anObject = __webpack_require__(28);
-var getKeys = __webpack_require__(59);
+var dP = __webpack_require__(26);
+var anObject = __webpack_require__(29);
+var getKeys = __webpack_require__(105);
-module.exports = __webpack_require__(13) ? Object.defineProperties : function defineProperties(O, Properties) {
+module.exports = __webpack_require__(23) ? Object.defineProperties : function defineProperties(O, Properties) {
anObject(O);
var keys = getKeys(Properties);
var length = keys.length;
@@ -16286,13 +18757,13 @@ module.exports = __webpack_require__(13) ? Object.defineProperties : function de
/***/ }),
-/* 186 */
+/* 259 */
/***/ (function(module, exports, __webpack_require__) {
-var has = __webpack_require__(36);
-var toIObject = __webpack_require__(35);
-var arrayIndexOf = __webpack_require__(340)(false);
-var IE_PROTO = __webpack_require__(118)('IE_PROTO');
+var has = __webpack_require__(51);
+var toIObject = __webpack_require__(50);
+var arrayIndexOf = __webpack_require__(431)(false);
+var IE_PROTO = __webpack_require__(181)('IE_PROTO');
module.exports = function (object, names) {
var O = toIObject(object);
@@ -16309,10 +18780,10 @@ module.exports = function (object, names) {
/***/ }),
-/* 187 */
+/* 260 */
/***/ (function(module, exports, __webpack_require__) {
-var toInteger = __webpack_require__(117);
+var toInteger = __webpack_require__(180);
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
@@ -16322,52 +18793,31 @@ module.exports = function (index, length) {
/***/ }),
-/* 188 */
+/* 261 */
/***/ (function(module, exports, __webpack_require__) {
-// getting tag from 19.1.3.6 Object.prototype.toString()
-var cof = __webpack_require__(111);
-var TAG = __webpack_require__(14)('toStringTag');
-// ES3 wrong here
-var ARG = cof(function () { return arguments; }()) == 'Arguments';
-
-// fallback for IE11 Script Access Denied error
-var tryGet = function (it, key) {
- try {
- return it[key];
- } catch (e) { /* empty */ }
-};
-
-module.exports = function (it) {
- var O, T, B;
- return it === undefined ? 'Undefined' : it === null ? 'Null'
- // @@toStringTag case
- : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
- // builtinTag case
- : ARG ? cof(O)
- // ES3 arguments fallback
- : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
-};
+var document = __webpack_require__(17).document;
+module.exports = document && document.documentElement;
/***/ }),
-/* 189 */
+/* 262 */
/***/ (function(module, exports, __webpack_require__) {
// 7.2.2 IsArray(argument)
-var cof = __webpack_require__(111);
+var cof = __webpack_require__(99);
module.exports = Array.isArray || function isArray(arg) {
return cof(arg) == 'Array';
};
/***/ }),
-/* 190 */
+/* 263 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
-var $keys = __webpack_require__(186);
-var hiddenKeys = __webpack_require__(120).concat('length', 'prototype');
+var $keys = __webpack_require__(259);
+var hiddenKeys = __webpack_require__(183).concat('length', 'prototype');
exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
return $keys(O, hiddenKeys);
@@ -16375,29 +18825,29 @@ exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
/***/ }),
-/* 191 */
+/* 264 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(360), __esModule: true };
+module.exports = { "default": __webpack_require__(450), __esModule: true };
/***/ }),
-/* 192 */
+/* 265 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var dP = __webpack_require__(17).f;
-var create = __webpack_require__(76);
-var redefineAll = __webpack_require__(193);
-var ctx = __webpack_require__(38);
-var anInstance = __webpack_require__(194);
-var forOf = __webpack_require__(81);
-var $iterDefine = __webpack_require__(116);
-var step = __webpack_require__(183);
-var setSpecies = __webpack_require__(367);
-var DESCRIPTORS = __webpack_require__(13);
-var fastKey = __webpack_require__(80).fastKey;
-var validate = __webpack_require__(127);
+var dP = __webpack_require__(26).f;
+var create = __webpack_require__(129);
+var redefineAll = __webpack_require__(190);
+var ctx = __webpack_require__(32);
+var anInstance = __webpack_require__(191);
+var forOf = __webpack_require__(107);
+var $iterDefine = __webpack_require__(179);
+var step = __webpack_require__(256);
+var setSpecies = __webpack_require__(268);
+var DESCRIPTORS = __webpack_require__(23);
+var fastKey = __webpack_require__(132).fastKey;
+var validate = __webpack_require__(192);
var SIZE = DESCRIPTORS ? '_s' : 'size';
var getEntry = function (that, key) {
@@ -16532,35 +18982,11 @@ module.exports = {
/***/ }),
-/* 193 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var hide = __webpack_require__(27);
-module.exports = function (target, src, safe) {
- for (var key in src) {
- if (safe && target[key]) target[key] = src[key];
- else hide(target, key, src[key]);
- } return target;
-};
-
-
-/***/ }),
-/* 194 */
-/***/ (function(module, exports) {
-
-module.exports = function (it, Constructor, name, forbiddenField) {
- if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
- throw TypeError(name + ': incorrect invocation!');
- } return it;
-};
-
-
-/***/ }),
-/* 195 */
+/* 266 */
/***/ (function(module, exports, __webpack_require__) {
// call something on iterator step with safe closing on error
-var anObject = __webpack_require__(28);
+var anObject = __webpack_require__(29);
module.exports = function (iterator, fn, value, entries) {
try {
return entries ? fn(anObject(value)[0], value[1]) : fn(value);
@@ -16574,12 +19000,12 @@ module.exports = function (iterator, fn, value, entries) {
/***/ }),
-/* 196 */
+/* 267 */
/***/ (function(module, exports, __webpack_require__) {
// check on default Array iterator
-var Iterators = __webpack_require__(58);
-var ITERATOR = __webpack_require__(14)('iterator');
+var Iterators = __webpack_require__(103);
+var ITERATOR = __webpack_require__(21)('iterator');
var ArrayProto = Array.prototype;
module.exports = function (it) {
@@ -16588,24 +19014,45 @@ module.exports = function (it) {
/***/ }),
-/* 197 */
+/* 268 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(21);
-var $export = __webpack_require__(7);
-var meta = __webpack_require__(80);
-var fails = __webpack_require__(37);
-var hide = __webpack_require__(27);
-var redefineAll = __webpack_require__(193);
-var forOf = __webpack_require__(81);
-var anInstance = __webpack_require__(194);
-var isObject = __webpack_require__(20);
-var setToStringTag = __webpack_require__(79);
-var dP = __webpack_require__(17).f;
-var each = __webpack_require__(368)(0);
-var DESCRIPTORS = __webpack_require__(13);
+var global = __webpack_require__(17);
+var core = __webpack_require__(7);
+var dP = __webpack_require__(26);
+var DESCRIPTORS = __webpack_require__(23);
+var SPECIES = __webpack_require__(21)('species');
+
+module.exports = function (KEY) {
+ var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
+ if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
+ configurable: true,
+ get: function () { return this; }
+ });
+};
+
+
+/***/ }),
+/* 269 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var global = __webpack_require__(17);
+var $export = __webpack_require__(9);
+var meta = __webpack_require__(132);
+var fails = __webpack_require__(52);
+var hide = __webpack_require__(39);
+var redefineAll = __webpack_require__(190);
+var forOf = __webpack_require__(107);
+var anInstance = __webpack_require__(191);
+var isObject = __webpack_require__(22);
+var setToStringTag = __webpack_require__(106);
+var dP = __webpack_require__(26).f;
+var each = __webpack_require__(457)(0);
+var DESCRIPTORS = __webpack_require__(23);
module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
var Base = global[NAME];
@@ -16654,12 +19101,12 @@ module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
/***/ }),
-/* 198 */
+/* 270 */
/***/ (function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__(188);
-var from = __webpack_require__(372);
+var classof = __webpack_require__(185);
+var from = __webpack_require__(461);
module.exports = function (NAME) {
return function toJSON() {
if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
@@ -16669,13 +19116,13 @@ module.exports = function (NAME) {
/***/ }),
-/* 199 */
+/* 271 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// https://tc39.github.io/proposal-setmap-offrom/
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
module.exports = function (COLLECTION) {
$export($export.S, COLLECTION, { of: function of() {
@@ -16688,16 +19135,16 @@ module.exports = function (COLLECTION) {
/***/ }),
-/* 200 */
+/* 272 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// https://tc39.github.io/proposal-setmap-offrom/
-var $export = __webpack_require__(7);
-var aFunction = __webpack_require__(182);
-var ctx = __webpack_require__(38);
-var forOf = __webpack_require__(81);
+var $export = __webpack_require__(9);
+var aFunction = __webpack_require__(101);
+var ctx = __webpack_require__(32);
+var forOf = __webpack_require__(107);
module.exports = function (COLLECTION) {
$export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
@@ -16723,17 +19170,17 @@ module.exports = function (COLLECTION) {
/***/ }),
-/* 201 */
+/* 273 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var slice = Array.prototype.slice;
-var isArgs = __webpack_require__(202);
+var isArgs = __webpack_require__(274);
var origKeys = Object.keys;
-var keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(388);
+var keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(477);
var originalKeys = Object.keys;
@@ -16762,7 +19209,7 @@ module.exports = keysShim;
/***/ }),
-/* 202 */
+/* 274 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -16786,7 +19233,388 @@ module.exports = function isArguments(value) {
/***/ }),
-/* 203 */
+/* 275 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+/* globals
+ AggregateError,
+ Atomics,
+ FinalizationRegistry,
+ SharedArrayBuffer,
+ WeakRef,
+*/
+
+var undefined;
+
+var $SyntaxError = SyntaxError;
+var $Function = Function;
+var $TypeError = TypeError;
+
+// eslint-disable-next-line consistent-return
+var getEvalledConstructor = function (expressionSyntax) {
+ try {
+ // eslint-disable-next-line no-new-func
+ return Function('"use strict"; return (' + expressionSyntax + ').constructor;')();
+ } catch (e) {}
+};
+
+var $gOPD = Object.getOwnPropertyDescriptor;
+if ($gOPD) {
+ try {
+ $gOPD({}, '');
+ } catch (e) {
+ $gOPD = null; // this is IE 8, which has a broken gOPD
+ }
+}
+
+var throwTypeError = function () {
+ throw new $TypeError();
+};
+var ThrowTypeError = $gOPD
+ ? (function () {
+ try {
+ // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties
+ arguments.callee; // IE 8 does not throw here
+ return throwTypeError;
+ } catch (calleeThrows) {
+ try {
+ // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')
+ return $gOPD(arguments, 'callee').get;
+ } catch (gOPDthrows) {
+ return throwTypeError;
+ }
+ }
+ }())
+ : throwTypeError;
+
+var hasSymbols = __webpack_require__(276)();
+
+var getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto
+
+var asyncGenFunction = getEvalledConstructor('async function* () {}');
+var asyncGenFunctionPrototype = asyncGenFunction ? asyncGenFunction.prototype : undefined;
+var asyncGenPrototype = asyncGenFunctionPrototype ? asyncGenFunctionPrototype.prototype : undefined;
+
+var TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);
+
+var INTRINSICS = {
+ '%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,
+ '%Array%': Array,
+ '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,
+ '%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,
+ '%AsyncFromSyncIteratorPrototype%': undefined,
+ '%AsyncFunction%': getEvalledConstructor('async function () {}'),
+ '%AsyncGenerator%': asyncGenFunctionPrototype,
+ '%AsyncGeneratorFunction%': asyncGenFunction,
+ '%AsyncIteratorPrototype%': asyncGenPrototype ? getProto(asyncGenPrototype) : undefined,
+ '%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,
+ '%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,
+ '%Boolean%': Boolean,
+ '%DataView%': typeof DataView === 'undefined' ? undefined : DataView,
+ '%Date%': Date,
+ '%decodeURI%': decodeURI,
+ '%decodeURIComponent%': decodeURIComponent,
+ '%encodeURI%': encodeURI,
+ '%encodeURIComponent%': encodeURIComponent,
+ '%Error%': Error,
+ '%eval%': eval, // eslint-disable-line no-eval
+ '%EvalError%': EvalError,
+ '%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,
+ '%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,
+ '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,
+ '%Function%': $Function,
+ '%GeneratorFunction%': getEvalledConstructor('function* () {}'),
+ '%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,
+ '%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,
+ '%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,
+ '%isFinite%': isFinite,
+ '%isNaN%': isNaN,
+ '%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,
+ '%JSON%': typeof JSON === 'object' ? JSON : undefined,
+ '%Map%': typeof Map === 'undefined' ? undefined : Map,
+ '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),
+ '%Math%': Math,
+ '%Number%': Number,
+ '%Object%': Object,
+ '%parseFloat%': parseFloat,
+ '%parseInt%': parseInt,
+ '%Promise%': typeof Promise === 'undefined' ? undefined : Promise,
+ '%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,
+ '%RangeError%': RangeError,
+ '%ReferenceError%': ReferenceError,
+ '%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,
+ '%RegExp%': RegExp,
+ '%Set%': typeof Set === 'undefined' ? undefined : Set,
+ '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),
+ '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,
+ '%String%': String,
+ '%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,
+ '%Symbol%': hasSymbols ? Symbol : undefined,
+ '%SyntaxError%': $SyntaxError,
+ '%ThrowTypeError%': ThrowTypeError,
+ '%TypedArray%': TypedArray,
+ '%TypeError%': $TypeError,
+ '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,
+ '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
+ '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,
+ '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,
+ '%URIError%': URIError,
+ '%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,
+ '%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,
+ '%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet
+};
+
+var LEGACY_ALIASES = {
+ '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],
+ '%ArrayPrototype%': ['Array', 'prototype'],
+ '%ArrayProto_entries%': ['Array', 'prototype', 'entries'],
+ '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],
+ '%ArrayProto_keys%': ['Array', 'prototype', 'keys'],
+ '%ArrayProto_values%': ['Array', 'prototype', 'values'],
+ '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],
+ '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],
+ '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],
+ '%BooleanPrototype%': ['Boolean', 'prototype'],
+ '%DataViewPrototype%': ['DataView', 'prototype'],
+ '%DatePrototype%': ['Date', 'prototype'],
+ '%ErrorPrototype%': ['Error', 'prototype'],
+ '%EvalErrorPrototype%': ['EvalError', 'prototype'],
+ '%Float32ArrayPrototype%': ['Float32Array', 'prototype'],
+ '%Float64ArrayPrototype%': ['Float64Array', 'prototype'],
+ '%FunctionPrototype%': ['Function', 'prototype'],
+ '%Generator%': ['GeneratorFunction', 'prototype'],
+ '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],
+ '%Int8ArrayPrototype%': ['Int8Array', 'prototype'],
+ '%Int16ArrayPrototype%': ['Int16Array', 'prototype'],
+ '%Int32ArrayPrototype%': ['Int32Array', 'prototype'],
+ '%JSONParse%': ['JSON', 'parse'],
+ '%JSONStringify%': ['JSON', 'stringify'],
+ '%MapPrototype%': ['Map', 'prototype'],
+ '%NumberPrototype%': ['Number', 'prototype'],
+ '%ObjectPrototype%': ['Object', 'prototype'],
+ '%ObjProto_toString%': ['Object', 'prototype', 'toString'],
+ '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],
+ '%PromisePrototype%': ['Promise', 'prototype'],
+ '%PromiseProto_then%': ['Promise', 'prototype', 'then'],
+ '%Promise_all%': ['Promise', 'all'],
+ '%Promise_reject%': ['Promise', 'reject'],
+ '%Promise_resolve%': ['Promise', 'resolve'],
+ '%RangeErrorPrototype%': ['RangeError', 'prototype'],
+ '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],
+ '%RegExpPrototype%': ['RegExp', 'prototype'],
+ '%SetPrototype%': ['Set', 'prototype'],
+ '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],
+ '%StringPrototype%': ['String', 'prototype'],
+ '%SymbolPrototype%': ['Symbol', 'prototype'],
+ '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],
+ '%TypedArrayPrototype%': ['TypedArray', 'prototype'],
+ '%TypeErrorPrototype%': ['TypeError', 'prototype'],
+ '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],
+ '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],
+ '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],
+ '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],
+ '%URIErrorPrototype%': ['URIError', 'prototype'],
+ '%WeakMapPrototype%': ['WeakMap', 'prototype'],
+ '%WeakSetPrototype%': ['WeakSet', 'prototype']
+};
+
+var bind = __webpack_require__(193);
+var hasOwn = __webpack_require__(482);
+var $concat = bind.call(Function.call, Array.prototype.concat);
+var $spliceApply = bind.call(Function.apply, Array.prototype.splice);
+var $replace = bind.call(Function.call, String.prototype.replace);
+var $strSlice = bind.call(Function.call, String.prototype.slice);
+
+/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
+var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
+var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
+var stringToPath = function stringToPath(string) {
+ var first = $strSlice(string, 0, 1);
+ var last = $strSlice(string, -1);
+ if (first === '%' && last !== '%') {
+ throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`');
+ } else if (last === '%' && first !== '%') {
+ throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`');
+ }
+ var result = [];
+ $replace(string, rePropName, function (match, number, quote, subString) {
+ result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;
+ });
+ return result;
+};
+/* end adaptation */
+
+var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
+ var intrinsicName = name;
+ var alias;
+ if (hasOwn(LEGACY_ALIASES, intrinsicName)) {
+ alias = LEGACY_ALIASES[intrinsicName];
+ intrinsicName = '%' + alias[0] + '%';
+ }
+
+ if (hasOwn(INTRINSICS, intrinsicName)) {
+ var value = INTRINSICS[intrinsicName];
+ if (typeof value === 'undefined' && !allowMissing) {
+ throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
+ }
+
+ return {
+ alias: alias,
+ name: intrinsicName,
+ value: value
+ };
+ }
+
+ throw new $SyntaxError('intrinsic ' + name + ' does not exist!');
+};
+
+module.exports = function GetIntrinsic(name, allowMissing) {
+ if (typeof name !== 'string' || name.length === 0) {
+ throw new $TypeError('intrinsic name must be a non-empty string');
+ }
+ if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
+ throw new $TypeError('"allowMissing" argument must be a boolean');
+ }
+
+ var parts = stringToPath(name);
+ var intrinsicBaseName = parts.length > 0 ? parts[0] : '';
+
+ var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);
+ var intrinsicRealName = intrinsic.name;
+ var value = intrinsic.value;
+ var skipFurtherCaching = false;
+
+ var alias = intrinsic.alias;
+ if (alias) {
+ intrinsicBaseName = alias[0];
+ $spliceApply(parts, $concat([0, 1], alias));
+ }
+
+ for (var i = 1, isOwn = true; i < parts.length; i += 1) {
+ var part = parts[i];
+ var first = $strSlice(part, 0, 1);
+ var last = $strSlice(part, -1);
+ if (
+ (
+ (first === '"' || first === "'" || first === '`')
+ || (last === '"' || last === "'" || last === '`')
+ )
+ && first !== last
+ ) {
+ throw new $SyntaxError('property names with quotes must have matching quotes');
+ }
+ if (part === 'constructor' || !isOwn) {
+ skipFurtherCaching = true;
+ }
+
+ intrinsicBaseName += '.' + part;
+ intrinsicRealName = '%' + intrinsicBaseName + '%';
+
+ if (hasOwn(INTRINSICS, intrinsicRealName)) {
+ value = INTRINSICS[intrinsicRealName];
+ } else if (value != null) {
+ if (!(part in value)) {
+ if (!allowMissing) {
+ throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');
+ }
+ return void undefined;
+ }
+ if ($gOPD && (i + 1) >= parts.length) {
+ var desc = $gOPD(value, part);
+ isOwn = !!desc;
+
+ // By convention, when a data property is converted to an accessor
+ // property to emulate a data property that does not suffer from
+ // the override mistake, that accessor's getter is marked with
+ // an `originalValue` property. Here, when we detect this, we
+ // uphold the illusion by pretending to see that original data
+ // property, i.e., returning the value rather than the getter
+ // itself.
+ if (isOwn && 'get' in desc && !('originalValue' in desc.get)) {
+ value = desc.get;
+ } else {
+ value = value[part];
+ }
+ } else {
+ isOwn = hasOwn(value, part);
+ value = value[part];
+ }
+
+ if (isOwn && !skipFurtherCaching) {
+ INTRINSICS[intrinsicRealName] = value;
+ }
+ }
+ }
+ return value;
+};
+
+
+/***/ }),
+/* 276 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(global) {
+
+var origSymbol = global.Symbol;
+var hasSymbolSham = __webpack_require__(480);
+
+module.exports = function hasNativeSymbols() {
+ if (typeof origSymbol !== 'function') { return false; }
+ if (typeof Symbol !== 'function') { return false; }
+ if (typeof origSymbol('foo') !== 'symbol') { return false; }
+ if (typeof Symbol('bar') !== 'symbol') { return false; }
+
+ return hasSymbolSham();
+};
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24)))
+
+/***/ }),
+/* 277 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var numberIsNaN = function (value) {
+ return value !== value;
+};
+
+module.exports = function is(a, b) {
+ if (a === 0 && b === 0) {
+ return 1 / a === 1 / b;
+ }
+ if (a === b) {
+ return true;
+ }
+ if (numberIsNaN(a) && numberIsNaN(b)) {
+ return true;
+ }
+ return false;
+};
+
+
+
+/***/ }),
+/* 278 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var implementation = __webpack_require__(277);
+
+module.exports = function getPolyfill() {
+ return typeof Object.is === 'function' ? Object.is : implementation;
+};
+
+
+/***/ }),
+/* 279 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -16823,15 +19651,15 @@ module.exports = function flags() {
/***/ }),
-/* 204 */
+/* 280 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var implementation = __webpack_require__(203);
+var implementation = __webpack_require__(279);
-var supportsDescriptors = __webpack_require__(129).supportsDescriptors;
+var supportsDescriptors = __webpack_require__(108).supportsDescriptors;
var $gOPD = Object.getOwnPropertyDescriptor;
var $TypeError = TypeError;
@@ -16850,7 +19678,171 @@ module.exports = function getPolyfill() {
/***/ }),
-/* 205 */
+/* 281 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var ITERATOR = __webpack_require__(21)('iterator');
+var SAFE_CLOSING = false;
+
+try {
+ var riter = [7][ITERATOR]();
+ riter['return'] = function () { SAFE_CLOSING = true; };
+ // eslint-disable-next-line no-throw-literal
+ Array.from(riter, function () { throw 2; });
+} catch (e) { /* empty */ }
+
+module.exports = function (exec, skipClosing) {
+ if (!skipClosing && !SAFE_CLOSING) return false;
+ var safe = false;
+ try {
+ var arr = [7];
+ var iter = arr[ITERATOR]();
+ iter.next = function () { return { done: safe = true }; };
+ arr[ITERATOR] = function () { return iter; };
+ exec(arr);
+ } catch (e) { /* empty */ }
+ return safe;
+};
+
+
+/***/ }),
+/* 282 */
+/***/ (function(module, exports, __webpack_require__) {
+
+// 7.3.20 SpeciesConstructor(O, defaultConstructor)
+var anObject = __webpack_require__(29);
+var aFunction = __webpack_require__(101);
+var SPECIES = __webpack_require__(21)('species');
+module.exports = function (O, D) {
+ var C = anObject(O).constructor;
+ var S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
+};
+
+
+/***/ }),
+/* 283 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var ctx = __webpack_require__(32);
+var invoke = __webpack_require__(521);
+var html = __webpack_require__(261);
+var cel = __webpack_require__(177);
+var global = __webpack_require__(17);
+var process = global.process;
+var setTask = global.setImmediate;
+var clearTask = global.clearImmediate;
+var MessageChannel = global.MessageChannel;
+var Dispatch = global.Dispatch;
+var counter = 0;
+var queue = {};
+var ONREADYSTATECHANGE = 'onreadystatechange';
+var defer, channel, port;
+var run = function () {
+ var id = +this;
+ // eslint-disable-next-line no-prototype-builtins
+ if (queue.hasOwnProperty(id)) {
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+};
+var listener = function (event) {
+ run.call(event.data);
+};
+// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+if (!setTask || !clearTask) {
+ setTask = function setImmediate(fn) {
+ var args = [];
+ var i = 1;
+ while (arguments.length > i) args.push(arguments[i++]);
+ queue[++counter] = function () {
+ // eslint-disable-next-line no-new-func
+ invoke(typeof fn == 'function' ? fn : Function(fn), args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clearTask = function clearImmediate(id) {
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if (__webpack_require__(99)(process) == 'process') {
+ defer = function (id) {
+ process.nextTick(ctx(run, id, 1));
+ };
+ // Sphere (JS game engine) Dispatch API
+ } else if (Dispatch && Dispatch.now) {
+ defer = function (id) {
+ Dispatch.now(ctx(run, id, 1));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ } else if (MessageChannel) {
+ channel = new MessageChannel();
+ port = channel.port2;
+ channel.port1.onmessage = listener;
+ defer = ctx(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
+ defer = function (id) {
+ global.postMessage(id + '', '*');
+ };
+ global.addEventListener('message', listener, false);
+ // IE8-
+ } else if (ONREADYSTATECHANGE in cel('script')) {
+ defer = function (id) {
+ html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
+ html.removeChild(this);
+ run.call(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function (id) {
+ setTimeout(ctx(run, id, 1), 0);
+ };
+ }
+}
+module.exports = {
+ set: setTask,
+ clear: clearTask
+};
+
+
+/***/ }),
+/* 284 */
+/***/ (function(module, exports) {
+
+module.exports = function (exec) {
+ try {
+ return { e: false, v: exec() };
+ } catch (e) {
+ return { e: true, v: e };
+ }
+};
+
+
+/***/ }),
+/* 285 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__(29);
+var isObject = __webpack_require__(22);
+var newPromiseCapability = __webpack_require__(196);
+
+module.exports = function (C, x) {
+ anObject(C);
+ if (isObject(x) && x.constructor === C) return x;
+ var promiseCapability = newPromiseCapability.f(C);
+ var resolve = promiseCapability.resolve;
+ resolve(x);
+ return promiseCapability.promise;
+};
+
+
+/***/ }),
+/* 286 */
/***/ (function(module, exports, __webpack_require__) {
/* Copyright 2013 Google Inc. All Rights Reserved.
@@ -16868,15 +19860,15 @@ module.exports = function getPolyfill() {
limitations under the License.
*/
-var BrotliInput = __webpack_require__(206).BrotliInput;
-var BrotliOutput = __webpack_require__(206).BrotliOutput;
-var BrotliBitReader = __webpack_require__(432);
-var BrotliDictionary = __webpack_require__(207);
-var HuffmanCode = __webpack_require__(208).HuffmanCode;
-var BrotliBuildHuffmanTable = __webpack_require__(208).BrotliBuildHuffmanTable;
-var Context = __webpack_require__(436);
-var Prefix = __webpack_require__(437);
-var Transform = __webpack_require__(438);
+var BrotliInput = __webpack_require__(287).BrotliInput;
+var BrotliOutput = __webpack_require__(287).BrotliOutput;
+var BrotliBitReader = __webpack_require__(527);
+var BrotliDictionary = __webpack_require__(288);
+var HuffmanCode = __webpack_require__(289).HuffmanCode;
+var BrotliBuildHuffmanTable = __webpack_require__(289).BrotliBuildHuffmanTable;
+var Context = __webpack_require__(531);
+var Prefix = __webpack_require__(532);
+var Transform = __webpack_require__(533);
var kDefaultCodeLength = 8;
var kCodeLengthRepeatCode = 16;
@@ -17794,7 +20786,7 @@ BrotliDictionary.init();
/***/ }),
-/* 206 */
+/* 287 */
/***/ (function(module, exports) {
function BrotliInput(buffer) {
@@ -17834,7 +20826,7 @@ exports.BrotliOutput = BrotliOutput;
/***/ }),
-/* 207 */
+/* 288 */
/***/ (function(module, exports, __webpack_require__) {
/* Copyright 2013 Google Inc. All Rights Reserved.
@@ -17854,7 +20846,7 @@ exports.BrotliOutput = BrotliOutput;
Collection of static dictionary words.
*/
-var data = __webpack_require__(433);
+var data = __webpack_require__(528);
exports.init = function() {
exports.dictionary = data.init();
};
@@ -17876,7 +20868,7 @@ exports.maxDictionaryWordLength = 24;
/***/ }),
-/* 208 */
+/* 289 */
/***/ (function(module, exports) {
function HuffmanCode(bits, value) {
@@ -18005,7 +20997,7 @@ exports.BrotliBuildHuffmanTable = function(root_table, table, root_bits, code_le
/***/ }),
-/* 209 */
+/* 290 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -18013,13 +21005,13 @@ exports.BrotliBuildHuffmanTable = function(root_table, table, root_bits, code_le
var AI, AL, BA, BK, CB, CJ, CR, ID, LF, NL, NS, SA, SG, SP, WJ, XX;
-var UnicodeTrie = __webpack_require__(439);
+var UnicodeTrie = __webpack_require__(534);
-var base64 = __webpack_require__(440);
+var base64 = __webpack_require__(535);
-var _require = __webpack_require__(441);
+var _require = __webpack_require__(536);
BK = _require.BK;
CR = _require.CR;
@@ -18042,7 +21034,7 @@ CJ = _require.CJ;
ID = _require.ID;
NS = _require.NS;
-var _require2 = __webpack_require__(442),
+var _require2 = __webpack_require__(537),
DI_BRK = _require2.DI_BRK,
IN_BRK = _require2.IN_BRK,
CI_BRK = _require2.CI_BRK,
@@ -18231,908 +21223,1260 @@ var LineBreaker = /*#__PURE__*/function () {
module.exports = LineBreaker;
/***/ }),
-/* 210 */
+/* 291 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-function TraversalTracker() {
- this.events = {};
-}
-
-TraversalTracker.prototype.startTracking = function (event, callback) {
- var callbacks = this.events[event] || (this.events[event] = []);
-
- if (callbacks.indexOf(callback) < 0) {
- callbacks.push(callback);
- }
-};
-
-TraversalTracker.prototype.stopTracking = function (event, callback) {
- var callbacks = this.events[event];
-
- if (!callbacks) {
- return;
- }
-
- var index = callbacks.indexOf(callback);
- if (index >= 0) {
- callbacks.splice(index, 1);
- }
-};
-
-TraversalTracker.prototype.emit = function (event) {
- var args = Array.prototype.slice.call(arguments, 1);
- var callbacks = this.events[event];
-
- if (!callbacks) {
- return;
- }
-
- callbacks.forEach(function (callback) {
- callback.apply(this, args);
- });
-};
-
-TraversalTracker.prototype.auto = function (event, callback, innerFunction) {
- this.startTracking(event, callback);
- innerFunction();
- this.stopTracking(event, callback);
-};
-
-module.exports = TraversalTracker;
+
+
+function TraversalTracker() {
+ this.events = {};
+}
+
+TraversalTracker.prototype.startTracking = function (event, callback) {
+ var callbacks = this.events[event] || (this.events[event] = []);
+
+ if (callbacks.indexOf(callback) < 0) {
+ callbacks.push(callback);
+ }
+};
+
+TraversalTracker.prototype.stopTracking = function (event, callback) {
+ var callbacks = this.events[event];
+
+ if (!callbacks) {
+ return;
+ }
+
+ var index = callbacks.indexOf(callback);
+ if (index >= 0) {
+ callbacks.splice(index, 1);
+ }
+};
+
+TraversalTracker.prototype.emit = function (event) {
+ var args = Array.prototype.slice.call(arguments, 1);
+ var callbacks = this.events[event];
+
+ if (!callbacks) {
+ return;
+ }
+
+ callbacks.forEach(function (callback) {
+ callback.apply(this, args);
+ });
+};
+
+TraversalTracker.prototype.auto = function (event, callback, innerFunction) {
+ this.startTracking(event, callback);
+ innerFunction();
+ this.stopTracking(event, callback);
+};
+
+module.exports = TraversalTracker;
/***/ }),
-/* 211 */
+/* 292 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-var isString = __webpack_require__(0).isString;
-var isArray = __webpack_require__(0).isArray;
-var isUndefined = __webpack_require__(0).isUndefined;
-var isNull = __webpack_require__(0).isNull;
-
-/**
- * Creates an instance of StyleContextStack used for style inheritance and style overrides
- *
- * @constructor
- * @this {StyleContextStack}
- * @param {Object} named styles dictionary
- * @param {Object} optional default style definition
- */
-function StyleContextStack(styleDictionary, defaultStyle) {
- this.defaultStyle = defaultStyle || {};
- this.styleDictionary = styleDictionary;
- this.styleOverrides = [];
-}
-
-/**
- * Creates cloned version of current stack
- * @return {StyleContextStack} current stack snapshot
- */
-StyleContextStack.prototype.clone = function () {
- var stack = new StyleContextStack(this.styleDictionary, this.defaultStyle);
-
- this.styleOverrides.forEach(function (item) {
- stack.styleOverrides.push(item);
- });
-
- return stack;
-};
-
-/**
- * Pushes style-name or style-overrides-object onto the stack for future evaluation
- *
- * @param {String|Object} styleNameOrOverride style-name (referring to styleDictionary) or
- * a new dictionary defining overriding properties
- */
-StyleContextStack.prototype.push = function (styleNameOrOverride) {
- this.styleOverrides.push(styleNameOrOverride);
-};
-
-/**
- * Removes last style-name or style-overrides-object from the stack
- *
- * @param {Number} howMany - optional number of elements to be popped (if not specified,
- * one element will be removed from the stack)
- */
-StyleContextStack.prototype.pop = function (howMany) {
- howMany = howMany || 1;
-
- while (howMany-- > 0) {
- this.styleOverrides.pop();
- }
-};
-
-/**
- * Creates a set of named styles or/and a style-overrides-object based on the item,
- * pushes those elements onto the stack for future evaluation and returns the number
- * of elements pushed, so they can be easily poped then.
- *
- * @param {Object} item - an object with optional style property and/or style overrides
- * @return the number of items pushed onto the stack
- */
-StyleContextStack.prototype.autopush = function (item) {
- if (isString(item)) {
- return 0;
- }
-
- var styleNames = [];
-
- if (item.style) {
- if (isArray(item.style)) {
- styleNames = item.style;
- } else {
- styleNames = [item.style];
- }
- }
-
- for (var i = 0, l = styleNames.length; i < l; i++) {
- this.push(styleNames[i]);
- }
-
- var styleProperties = [
- 'font',
- 'fontSize',
- 'fontFeatures',
- 'bold',
- 'italics',
- 'alignment',
- 'color',
- 'columnGap',
- 'fillColor',
- 'fillOpacity',
- 'decoration',
- 'decorationStyle',
- 'decorationColor',
- 'background',
- 'lineHeight',
- 'characterSpacing',
- 'noWrap',
- 'markerColor',
- 'leadingIndent'
- //'tableCellPadding'
- // 'cellBorder',
- // 'headerCellBorder',
- // 'oddRowCellBorder',
- // 'evenRowCellBorder',
- // 'tableBorder'
- ];
- var styleOverrideObject = {};
- var pushStyleOverrideObject = false;
-
- styleProperties.forEach(function (key) {
- if (!isUndefined(item[key]) && !isNull(item[key])) {
- styleOverrideObject[key] = item[key];
- pushStyleOverrideObject = true;
- }
- });
-
- if (pushStyleOverrideObject) {
- this.push(styleOverrideObject);
- }
-
- return styleNames.length + (pushStyleOverrideObject ? 1 : 0);
-};
-
-/**
- * Automatically pushes elements onto the stack, using autopush based on item,
- * executes callback and then pops elements back. Returns value returned by callback
- *
- * @param {Object} item - an object with optional style property and/or style overrides
- * @param {Function} function to be called between autopush and pop
- * @return {Object} value returned by callback
- */
-StyleContextStack.prototype.auto = function (item, callback) {
- var pushedItems = this.autopush(item);
- var result = callback();
-
- if (pushedItems > 0) {
- this.pop(pushedItems);
- }
-
- return result;
-};
-
-/**
- * Evaluates stack and returns value of a named property
- *
- * @param {String} property - property name
- * @return property value or null if not found
- */
-StyleContextStack.prototype.getProperty = function (property) {
- if (this.styleOverrides) {
- for (var i = this.styleOverrides.length - 1; i >= 0; i--) {
- var item = this.styleOverrides[i];
-
- if (isString(item)) {
- // named-style-override
- var style = this.styleDictionary[item];
- if (style && !isUndefined(style[property]) && !isNull(style[property])) {
- return style[property];
- }
- } else if (!isUndefined(item[property]) && !isNull(item[property])) {
- // style-overrides-object
- return item[property];
- }
- }
- }
-
- return this.defaultStyle && this.defaultStyle[property];
-};
-
-module.exports = StyleContextStack;
+
+
+var isString = __webpack_require__(0).isString;
+var isArray = __webpack_require__(0).isArray;
+var isUndefined = __webpack_require__(0).isUndefined;
+var isNull = __webpack_require__(0).isNull;
+
+/**
+ * Creates an instance of StyleContextStack used for style inheritance and style overrides
+ *
+ * @constructor
+ * @this {StyleContextStack}
+ * @param {Object} named styles dictionary
+ * @param {Object} optional default style definition
+ */
+function StyleContextStack(styleDictionary, defaultStyle) {
+ this.defaultStyle = defaultStyle || {};
+ this.styleDictionary = styleDictionary;
+ this.styleOverrides = [];
+}
+
+/**
+ * Creates cloned version of current stack
+ * @return {StyleContextStack} current stack snapshot
+ */
+StyleContextStack.prototype.clone = function () {
+ var stack = new StyleContextStack(this.styleDictionary, this.defaultStyle);
+
+ this.styleOverrides.forEach(function (item) {
+ stack.styleOverrides.push(item);
+ });
+
+ return stack;
+};
+
+/**
+ * Pushes style-name or style-overrides-object onto the stack for future evaluation
+ *
+ * @param {String|Object} styleNameOrOverride style-name (referring to styleDictionary) or
+ * a new dictionary defining overriding properties
+ */
+StyleContextStack.prototype.push = function (styleNameOrOverride) {
+ this.styleOverrides.push(styleNameOrOverride);
+};
+
+/**
+ * Removes last style-name or style-overrides-object from the stack
+ *
+ * @param {Number} howMany - optional number of elements to be popped (if not specified,
+ * one element will be removed from the stack)
+ */
+StyleContextStack.prototype.pop = function (howMany) {
+ howMany = howMany || 1;
+
+ while (howMany-- > 0) {
+ this.styleOverrides.pop();
+ }
+};
+
+/**
+ * Creates a set of named styles or/and a style-overrides-object based on the item,
+ * pushes those elements onto the stack for future evaluation and returns the number
+ * of elements pushed, so they can be easily poped then.
+ *
+ * @param {Object} item - an object with optional style property and/or style overrides
+ * @return the number of items pushed onto the stack
+ */
+StyleContextStack.prototype.autopush = function (item) {
+ if (isString(item)) {
+ return 0;
+ }
+
+ var styleNames = [];
+
+ if (item.style) {
+ if (isArray(item.style)) {
+ styleNames = item.style;
+ } else {
+ styleNames = [item.style];
+ }
+ }
+
+ for (var i = 0, l = styleNames.length; i < l; i++) {
+ this.push(styleNames[i]);
+ }
+
+ var styleProperties = [
+ 'font',
+ 'fontSize',
+ 'fontFeatures',
+ 'bold',
+ 'italics',
+ 'alignment',
+ 'color',
+ 'columnGap',
+ 'fillColor',
+ 'fillOpacity',
+ 'decoration',
+ 'decorationStyle',
+ 'decorationColor',
+ 'background',
+ 'lineHeight',
+ 'characterSpacing',
+ 'noWrap',
+ 'markerColor',
+ 'leadingIndent',
+ 'sup',
+ 'sub'
+ //'tableCellPadding'
+ // 'cellBorder',
+ // 'headerCellBorder',
+ // 'oddRowCellBorder',
+ // 'evenRowCellBorder',
+ // 'tableBorder'
+ ];
+ var styleOverrideObject = {};
+ var pushStyleOverrideObject = false;
+
+ styleProperties.forEach(function (key) {
+ if (!isUndefined(item[key]) && !isNull(item[key])) {
+ styleOverrideObject[key] = item[key];
+ pushStyleOverrideObject = true;
+ }
+ });
+
+ if (pushStyleOverrideObject) {
+ this.push(styleOverrideObject);
+ }
+
+ return styleNames.length + (pushStyleOverrideObject ? 1 : 0);
+};
+
+/**
+ * Automatically pushes elements onto the stack, using autopush based on item,
+ * executes callback and then pops elements back. Returns value returned by callback
+ *
+ * @param {Object} item - an object with optional style property and/or style overrides
+ * @param {Function} function to be called between autopush and pop
+ * @return {Object} value returned by callback
+ */
+StyleContextStack.prototype.auto = function (item, callback) {
+ var pushedItems = this.autopush(item);
+ var result = callback();
+
+ if (pushedItems > 0) {
+ this.pop(pushedItems);
+ }
+
+ return result;
+};
+
+/**
+ * Evaluates stack and returns value of a named property
+ *
+ * @param {String} property - property name
+ * @return property value or null if not found
+ */
+StyleContextStack.prototype.getProperty = function (property) {
+ if (this.styleOverrides) {
+ for (var i = this.styleOverrides.length - 1; i >= 0; i--) {
+ var item = this.styleOverrides[i];
+
+ if (isString(item)) {
+ // named-style-override
+ var style = this.styleDictionary[item];
+ if (style && !isUndefined(style[property]) && !isNull(style[property])) {
+ return style[property];
+ }
+ } else if (!isUndefined(item[property]) && !isNull(item[property])) {
+ // style-overrides-object
+ return item[property];
+ }
+ }
+ }
+
+ return this.defaultStyle && this.defaultStyle[property];
+};
+
+module.exports = StyleContextStack;
/***/ }),
-/* 212 */
+/* 293 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-var TraversalTracker = __webpack_require__(210);
-var isString = __webpack_require__(0).isString;
-
-/**
- * Creates an instance of DocumentContext - a store for current x, y positions and available width/height.
- * It facilitates column divisions and vertical sync
- */
-function DocumentContext(pageSize, pageMargins) {
- this.pages = [];
-
- this.pageMargins = pageMargins;
-
- this.x = pageMargins.left;
- this.availableWidth = pageSize.width - pageMargins.left - pageMargins.right;
- this.availableHeight = 0;
- this.page = -1;
-
- this.snapshots = [];
-
- this.endingCell = null;
-
- this.tracker = new TraversalTracker();
-
- this.backgroundLength = [];
-
- this.addPage(pageSize);
-}
-
-DocumentContext.prototype.beginColumnGroup = function () {
- this.snapshots.push({
- x: this.x,
- y: this.y,
- availableHeight: this.availableHeight,
- availableWidth: this.availableWidth,
- page: this.page,
- bottomMost: {
- x: this.x,
- y: this.y,
- availableHeight: this.availableHeight,
- availableWidth: this.availableWidth,
- page: this.page
- },
- endingCell: this.endingCell,
- lastColumnWidth: this.lastColumnWidth
- });
-
- this.lastColumnWidth = 0;
-};
-
-DocumentContext.prototype.beginColumn = function (width, offset, endingCell) {
- var saved = this.snapshots[this.snapshots.length - 1];
-
- this.calculateBottomMost(saved);
-
- this.endingCell = endingCell;
- this.page = saved.page;
- this.x = this.x + this.lastColumnWidth + (offset || 0);
- this.y = saved.y;
- this.availableWidth = width; //saved.availableWidth - offset;
- this.availableHeight = saved.availableHeight;
-
- this.lastColumnWidth = width;
-};
-
-DocumentContext.prototype.calculateBottomMost = function (destContext) {
- if (this.endingCell) {
- this.saveContextInEndingCell(this.endingCell);
- this.endingCell = null;
- } else {
- destContext.bottomMost = bottomMostContext(this, destContext.bottomMost);
- }
-};
-
-DocumentContext.prototype.markEnding = function (endingCell) {
- this.page = endingCell._columnEndingContext.page;
- this.x = endingCell._columnEndingContext.x;
- this.y = endingCell._columnEndingContext.y;
- this.availableWidth = endingCell._columnEndingContext.availableWidth;
- this.availableHeight = endingCell._columnEndingContext.availableHeight;
- this.lastColumnWidth = endingCell._columnEndingContext.lastColumnWidth;
-};
-
-DocumentContext.prototype.saveContextInEndingCell = function (endingCell) {
- endingCell._columnEndingContext = {
- page: this.page,
- x: this.x,
- y: this.y,
- availableHeight: this.availableHeight,
- availableWidth: this.availableWidth,
- lastColumnWidth: this.lastColumnWidth
- };
-};
-
-DocumentContext.prototype.completeColumnGroup = function (height) {
- var saved = this.snapshots.pop();
-
- this.calculateBottomMost(saved);
-
- this.endingCell = null;
- this.x = saved.x;
-
- var y = saved.bottomMost.y;
- if (height) {
- if (saved.page === saved.bottomMost.page) {
- if ((saved.y + height) > y) {
- y = saved.y + height;
- }
- } else {
- y += height;
- }
- }
-
- this.y = y;
- this.page = saved.bottomMost.page;
- this.availableWidth = saved.availableWidth;
- this.availableHeight = saved.bottomMost.availableHeight;
- if (height) {
- this.availableHeight -= (y - saved.bottomMost.y);
- }
- this.lastColumnWidth = saved.lastColumnWidth;
-};
-
-DocumentContext.prototype.addMargin = function (left, right) {
- this.x += left;
- this.availableWidth -= left + (right || 0);
-};
-
-DocumentContext.prototype.moveDown = function (offset) {
- this.y += offset;
- this.availableHeight -= offset;
-
- return this.availableHeight > 0;
-};
-
-DocumentContext.prototype.initializePage = function () {
- this.y = this.pageMargins.top;
- this.availableHeight = this.getCurrentPage().pageSize.height - this.pageMargins.top - this.pageMargins.bottom;
- this.pageSnapshot().availableWidth = this.getCurrentPage().pageSize.width - this.pageMargins.left - this.pageMargins.right;
-};
-
-DocumentContext.prototype.pageSnapshot = function () {
- if (this.snapshots[0]) {
- return this.snapshots[0];
- } else {
- return this;
- }
-};
-
-DocumentContext.prototype.moveTo = function (x, y) {
- if (x !== undefined && x !== null) {
- this.x = x;
- this.availableWidth = this.getCurrentPage().pageSize.width - this.x - this.pageMargins.right;
- }
- if (y !== undefined && y !== null) {
- this.y = y;
- this.availableHeight = this.getCurrentPage().pageSize.height - this.y - this.pageMargins.bottom;
- }
-};
-
-DocumentContext.prototype.moveToRelative = function (x, y) {
- if (x !== undefined && x !== null) {
- this.x = this.x + x;
- }
- if (y !== undefined && y !== null) {
- this.y = this.y + y;
- }
-};
-
-DocumentContext.prototype.beginDetachedBlock = function () {
- this.snapshots.push({
- x: this.x,
- y: this.y,
- availableHeight: this.availableHeight,
- availableWidth: this.availableWidth,
- page: this.page,
- endingCell: this.endingCell,
- lastColumnWidth: this.lastColumnWidth
- });
-};
-
-DocumentContext.prototype.endDetachedBlock = function () {
- var saved = this.snapshots.pop();
-
- this.x = saved.x;
- this.y = saved.y;
- this.availableWidth = saved.availableWidth;
- this.availableHeight = saved.availableHeight;
- this.page = saved.page;
- this.endingCell = saved.endingCell;
- this.lastColumnWidth = saved.lastColumnWidth;
-};
-
-function pageOrientation(pageOrientationString, currentPageOrientation) {
- if (pageOrientationString === undefined) {
- return currentPageOrientation;
- } else if (isString(pageOrientationString) && (pageOrientationString.toLowerCase() === 'landscape')) {
- return 'landscape';
- } else {
- return 'portrait';
- }
-}
-
-var getPageSize = function (currentPage, newPageOrientation) {
-
- newPageOrientation = pageOrientation(newPageOrientation, currentPage.pageSize.orientation);
-
- if (newPageOrientation !== currentPage.pageSize.orientation) {
- return {
- orientation: newPageOrientation,
- width: currentPage.pageSize.height,
- height: currentPage.pageSize.width
- };
- } else {
- return {
- orientation: currentPage.pageSize.orientation,
- width: currentPage.pageSize.width,
- height: currentPage.pageSize.height
- };
- }
-
-};
-
-
-DocumentContext.prototype.moveToNextPage = function (pageOrientation) {
- var nextPageIndex = this.page + 1;
-
- var prevPage = this.page;
- var prevY = this.y;
-
- var createNewPage = nextPageIndex >= this.pages.length;
- if (createNewPage) {
- var currentAvailableWidth = this.availableWidth;
- var currentPageOrientation = this.getCurrentPage().pageSize.orientation;
-
- var pageSize = getPageSize(this.getCurrentPage(), pageOrientation);
- this.addPage(pageSize);
-
- if (currentPageOrientation === pageSize.orientation) {
- this.availableWidth = currentAvailableWidth;
- }
- } else {
- this.page = nextPageIndex;
- this.initializePage();
- }
-
- return {
- newPageCreated: createNewPage,
- prevPage: prevPage,
- prevY: prevY,
- y: this.y
- };
-};
-
-
-DocumentContext.prototype.addPage = function (pageSize) {
- var page = { items: [], pageSize: pageSize };
- this.pages.push(page);
- this.backgroundLength.push(0);
- this.page = this.pages.length - 1;
- this.initializePage();
-
- this.tracker.emit('pageAdded');
-
- return page;
-};
-
-DocumentContext.prototype.getCurrentPage = function () {
- if (this.page < 0 || this.page >= this.pages.length) {
- return null;
- }
-
- return this.pages[this.page];
-};
-
-DocumentContext.prototype.getCurrentPosition = function () {
- var pageSize = this.getCurrentPage().pageSize;
- var innerHeight = pageSize.height - this.pageMargins.top - this.pageMargins.bottom;
- var innerWidth = pageSize.width - this.pageMargins.left - this.pageMargins.right;
-
- return {
- pageNumber: this.page + 1,
- pageOrientation: pageSize.orientation,
- pageInnerHeight: innerHeight,
- pageInnerWidth: innerWidth,
- left: this.x,
- top: this.y,
- verticalRatio: ((this.y - this.pageMargins.top) / innerHeight),
- horizontalRatio: ((this.x - this.pageMargins.left) / innerWidth)
- };
-};
-
-function bottomMostContext(c1, c2) {
- var r;
-
- if (c1.page > c2.page) {
- r = c1;
- } else if (c2.page > c1.page) {
- r = c2;
- } else {
- r = (c1.y > c2.y) ? c1 : c2;
- }
-
- return {
- page: r.page,
- x: r.x,
- y: r.y,
- availableHeight: r.availableHeight,
- availableWidth: r.availableWidth
- };
-}
-
-module.exports = DocumentContext;
+
+
+var TraversalTracker = __webpack_require__(291);
+var isString = __webpack_require__(0).isString;
+
+/**
+ * Creates an instance of DocumentContext - a store for current x, y positions and available width/height.
+ * It facilitates column divisions and vertical sync
+ */
+function DocumentContext(pageSize, pageMargins) {
+ this.pages = [];
+
+ this.pageMargins = pageMargins;
+
+ this.x = pageMargins.left;
+ this.availableWidth = pageSize.width - pageMargins.left - pageMargins.right;
+ this.availableHeight = 0;
+ this.page = -1;
+
+ this.snapshots = [];
+
+ this.endingCell = null;
+
+ this.tracker = new TraversalTracker();
+
+ this.backgroundLength = [];
+
+ this.addPage(pageSize);
+}
+
+DocumentContext.prototype.beginColumnGroup = function () {
+ this.snapshots.push({
+ x: this.x,
+ y: this.y,
+ availableHeight: this.availableHeight,
+ availableWidth: this.availableWidth,
+ page: this.page,
+ bottomMost: {
+ x: this.x,
+ y: this.y,
+ availableHeight: this.availableHeight,
+ availableWidth: this.availableWidth,
+ page: this.page
+ },
+ endingCell: this.endingCell,
+ lastColumnWidth: this.lastColumnWidth
+ });
+
+ this.lastColumnWidth = 0;
+};
+
+DocumentContext.prototype.beginColumn = function (width, offset, endingCell) {
+ var saved = this.snapshots[this.snapshots.length - 1];
+
+ this.calculateBottomMost(saved);
+
+ this.endingCell = endingCell;
+ this.page = saved.page;
+ this.x = this.x + this.lastColumnWidth + (offset || 0);
+ this.y = saved.y;
+ this.availableWidth = width; //saved.availableWidth - offset;
+ this.availableHeight = saved.availableHeight;
+
+ this.lastColumnWidth = width;
+};
+
+DocumentContext.prototype.calculateBottomMost = function (destContext) {
+ if (this.endingCell) {
+ this.saveContextInEndingCell(this.endingCell);
+ this.endingCell = null;
+ } else {
+ destContext.bottomMost = bottomMostContext(this, destContext.bottomMost);
+ }
+};
+
+DocumentContext.prototype.markEnding = function (endingCell) {
+ this.page = endingCell._columnEndingContext.page;
+ this.x = endingCell._columnEndingContext.x;
+ this.y = endingCell._columnEndingContext.y;
+ this.availableWidth = endingCell._columnEndingContext.availableWidth;
+ this.availableHeight = endingCell._columnEndingContext.availableHeight;
+ this.lastColumnWidth = endingCell._columnEndingContext.lastColumnWidth;
+};
+
+DocumentContext.prototype.saveContextInEndingCell = function (endingCell) {
+ endingCell._columnEndingContext = {
+ page: this.page,
+ x: this.x,
+ y: this.y,
+ availableHeight: this.availableHeight,
+ availableWidth: this.availableWidth,
+ lastColumnWidth: this.lastColumnWidth
+ };
+};
+
+DocumentContext.prototype.completeColumnGroup = function (height) {
+ var saved = this.snapshots.pop();
+
+ this.calculateBottomMost(saved);
+
+ this.endingCell = null;
+ this.x = saved.x;
+
+ var y = saved.bottomMost.y;
+ if (height) {
+ if (saved.page === saved.bottomMost.page) {
+ if ((saved.y + height) > y) {
+ y = saved.y + height;
+ }
+ } else {
+ y += height;
+ }
+ }
+
+ this.y = y;
+ this.page = saved.bottomMost.page;
+ this.availableWidth = saved.availableWidth;
+ this.availableHeight = saved.bottomMost.availableHeight;
+ if (height) {
+ this.availableHeight -= (y - saved.bottomMost.y);
+ }
+ this.lastColumnWidth = saved.lastColumnWidth;
+};
+
+DocumentContext.prototype.addMargin = function (left, right) {
+ this.x += left;
+ this.availableWidth -= left + (right || 0);
+};
+
+DocumentContext.prototype.moveDown = function (offset) {
+ this.y += offset;
+ this.availableHeight -= offset;
+
+ return this.availableHeight > 0;
+};
+
+DocumentContext.prototype.initializePage = function () {
+ this.y = this.pageMargins.top;
+ this.availableHeight = this.getCurrentPage().pageSize.height - this.pageMargins.top - this.pageMargins.bottom;
+ this.pageSnapshot().availableWidth = this.getCurrentPage().pageSize.width - this.pageMargins.left - this.pageMargins.right;
+};
+
+DocumentContext.prototype.pageSnapshot = function () {
+ if (this.snapshots[0]) {
+ return this.snapshots[0];
+ } else {
+ return this;
+ }
+};
+
+DocumentContext.prototype.moveTo = function (x, y) {
+ if (x !== undefined && x !== null) {
+ this.x = x;
+ this.availableWidth = this.getCurrentPage().pageSize.width - this.x - this.pageMargins.right;
+ }
+ if (y !== undefined && y !== null) {
+ this.y = y;
+ this.availableHeight = this.getCurrentPage().pageSize.height - this.y - this.pageMargins.bottom;
+ }
+};
+
+DocumentContext.prototype.moveToRelative = function (x, y) {
+ if (x !== undefined && x !== null) {
+ this.x = this.x + x;
+ }
+ if (y !== undefined && y !== null) {
+ this.y = this.y + y;
+ }
+};
+
+DocumentContext.prototype.beginDetachedBlock = function () {
+ this.snapshots.push({
+ x: this.x,
+ y: this.y,
+ availableHeight: this.availableHeight,
+ availableWidth: this.availableWidth,
+ page: this.page,
+ endingCell: this.endingCell,
+ lastColumnWidth: this.lastColumnWidth
+ });
+};
+
+DocumentContext.prototype.endDetachedBlock = function () {
+ var saved = this.snapshots.pop();
+
+ this.x = saved.x;
+ this.y = saved.y;
+ this.availableWidth = saved.availableWidth;
+ this.availableHeight = saved.availableHeight;
+ this.page = saved.page;
+ this.endingCell = saved.endingCell;
+ this.lastColumnWidth = saved.lastColumnWidth;
+};
+
+function pageOrientation(pageOrientationString, currentPageOrientation) {
+ if (pageOrientationString === undefined) {
+ return currentPageOrientation;
+ } else if (isString(pageOrientationString) && (pageOrientationString.toLowerCase() === 'landscape')) {
+ return 'landscape';
+ } else {
+ return 'portrait';
+ }
+}
+
+var getPageSize = function (currentPage, newPageOrientation) {
+
+ newPageOrientation = pageOrientation(newPageOrientation, currentPage.pageSize.orientation);
+
+ if (newPageOrientation !== currentPage.pageSize.orientation) {
+ return {
+ orientation: newPageOrientation,
+ width: currentPage.pageSize.height,
+ height: currentPage.pageSize.width
+ };
+ } else {
+ return {
+ orientation: currentPage.pageSize.orientation,
+ width: currentPage.pageSize.width,
+ height: currentPage.pageSize.height
+ };
+ }
+
+};
+
+
+DocumentContext.prototype.moveToNextPage = function (pageOrientation) {
+ var nextPageIndex = this.page + 1;
+
+ var prevPage = this.page;
+ var prevY = this.y;
+
+ var createNewPage = nextPageIndex >= this.pages.length;
+ if (createNewPage) {
+ var currentAvailableWidth = this.availableWidth;
+ var currentPageOrientation = this.getCurrentPage().pageSize.orientation;
+
+ var pageSize = getPageSize(this.getCurrentPage(), pageOrientation);
+ this.addPage(pageSize);
+
+ if (currentPageOrientation === pageSize.orientation) {
+ this.availableWidth = currentAvailableWidth;
+ }
+ } else {
+ this.page = nextPageIndex;
+ this.initializePage();
+ }
+
+ return {
+ newPageCreated: createNewPage,
+ prevPage: prevPage,
+ prevY: prevY,
+ y: this.y
+ };
+};
+
+
+DocumentContext.prototype.addPage = function (pageSize) {
+ var page = { items: [], pageSize: pageSize };
+ this.pages.push(page);
+ this.backgroundLength.push(0);
+ this.page = this.pages.length - 1;
+ this.initializePage();
+
+ this.tracker.emit('pageAdded');
+
+ return page;
+};
+
+DocumentContext.prototype.getCurrentPage = function () {
+ if (this.page < 0 || this.page >= this.pages.length) {
+ return null;
+ }
+
+ return this.pages[this.page];
+};
+
+DocumentContext.prototype.getCurrentPosition = function () {
+ var pageSize = this.getCurrentPage().pageSize;
+ var innerHeight = pageSize.height - this.pageMargins.top - this.pageMargins.bottom;
+ var innerWidth = pageSize.width - this.pageMargins.left - this.pageMargins.right;
+
+ return {
+ pageNumber: this.page + 1,
+ pageOrientation: pageSize.orientation,
+ pageInnerHeight: innerHeight,
+ pageInnerWidth: innerWidth,
+ left: this.x,
+ top: this.y,
+ verticalRatio: ((this.y - this.pageMargins.top) / innerHeight),
+ horizontalRatio: ((this.x - this.pageMargins.left) / innerWidth)
+ };
+};
+
+function bottomMostContext(c1, c2) {
+ var r;
+
+ if (c1.page > c2.page) {
+ r = c1;
+ } else if (c2.page > c1.page) {
+ r = c2;
+ } else {
+ r = (c1.y > c2.y) ? c1 : c2;
+ }
+
+ return {
+ page: r.page,
+ x: r.x,
+ y: r.y,
+ availableHeight: r.availableHeight,
+ availableWidth: r.availableWidth
+ };
+}
+
+module.exports = DocumentContext;
/***/ }),
-/* 213 */
+/* 294 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-/**
- * Creates an instance of Line
- *
- * @constructor
- * @this {Line}
- * @param {Number} Maximum width this line can have
- */
-function Line(maxWidth) {
- this.maxWidth = maxWidth;
- this.leadingCut = 0;
- this.trailingCut = 0;
- this.inlineWidths = 0;
- this.inlines = [];
-}
-
-Line.prototype.getAscenderHeight = function () {
- var y = 0;
-
- this.inlines.forEach(function (inline) {
- y = Math.max(y, inline.font.ascender / 1000 * inline.fontSize);
- });
- return y;
-};
-
-Line.prototype.hasEnoughSpaceForInline = function (inline, nextInlines) {
- nextInlines = nextInlines || [];
-
- if (this.inlines.length === 0) {
- return true;
- }
- if (this.newLineForced) {
- return false;
- }
-
- var inlineWidth = inline.width;
- var inlineTrailingCut = inline.trailingCut || 0;
- if (inline.noNewLine) {
- for (var i = 0, l = nextInlines.length; i < l; i++) {
- var nextInline = nextInlines[i];
- inlineWidth += nextInline.width;
- inlineTrailingCut += nextInline.trailingCut || 0;
- if (!nextInline.noNewLine) {
- break;
- }
- }
- }
-
- return (this.inlineWidths + inlineWidth - this.leadingCut - inlineTrailingCut) <= this.maxWidth;
-};
-
-Line.prototype.addInline = function (inline) {
- if (this.inlines.length === 0) {
- this.leadingCut = inline.leadingCut || 0;
- }
- this.trailingCut = inline.trailingCut || 0;
-
- inline.x = this.inlineWidths - this.leadingCut;
-
- this.inlines.push(inline);
- this.inlineWidths += inline.width;
-
- if (inline.lineEnd) {
- this.newLineForced = true;
- }
-};
-
-Line.prototype.getWidth = function () {
- return this.inlineWidths - this.leadingCut - this.trailingCut;
-};
-
-Line.prototype.getAvailableWidth = function () {
- return this.maxWidth - this.getWidth();
-};
-
-/**
- * Returns line height
- * @return {Number}
- */
-Line.prototype.getHeight = function () {
- var max = 0;
-
- this.inlines.forEach(function (item) {
- max = Math.max(max, item.height || 0);
- });
-
- return max;
-};
-
-module.exports = Line;
+
+
+/**
+ * Creates an instance of Line
+ *
+ * @constructor
+ * @this {Line}
+ * @param {Number} Maximum width this line can have
+ */
+function Line(maxWidth) {
+ this.maxWidth = maxWidth;
+ this.leadingCut = 0;
+ this.trailingCut = 0;
+ this.inlineWidths = 0;
+ this.inlines = [];
+}
+
+Line.prototype.getAscenderHeight = function () {
+ var y = 0;
+
+ this.inlines.forEach(function (inline) {
+ y = Math.max(y, inline.font.ascender / 1000 * inline.fontSize);
+ });
+ return y;
+};
+
+Line.prototype.hasEnoughSpaceForInline = function (inline, nextInlines) {
+ nextInlines = nextInlines || [];
+
+ if (this.inlines.length === 0) {
+ return true;
+ }
+ if (this.newLineForced) {
+ return false;
+ }
+
+ var inlineWidth = inline.width;
+ var inlineTrailingCut = inline.trailingCut || 0;
+ if (inline.noNewLine) {
+ for (var i = 0, l = nextInlines.length; i < l; i++) {
+ var nextInline = nextInlines[i];
+ inlineWidth += nextInline.width;
+ inlineTrailingCut += nextInline.trailingCut || 0;
+ if (!nextInline.noNewLine) {
+ break;
+ }
+ }
+ }
+
+ return (this.inlineWidths + inlineWidth - this.leadingCut - inlineTrailingCut) <= this.maxWidth;
+};
+
+Line.prototype.addInline = function (inline) {
+ if (this.inlines.length === 0) {
+ this.leadingCut = inline.leadingCut || 0;
+ }
+ this.trailingCut = inline.trailingCut || 0;
+
+ inline.x = this.inlineWidths - this.leadingCut;
+
+ this.inlines.push(inline);
+ this.inlineWidths += inline.width;
+
+ if (inline.lineEnd) {
+ this.newLineForced = true;
+ }
+};
+
+Line.prototype.getWidth = function () {
+ return this.inlineWidths - this.leadingCut - this.trailingCut;
+};
+
+Line.prototype.getAvailableWidth = function () {
+ return this.maxWidth - this.getWidth();
+};
+
+/**
+ * Returns line height
+ * @return {Number}
+ */
+Line.prototype.getHeight = function () {
+ var max = 0;
+
+ this.inlines.forEach(function (item) {
+ max = Math.max(max, item.height || 0);
+ });
+
+ return max;
+};
+
+module.exports = Line;
/***/ }),
-/* 214 */
-/***/ (function(module, exports, __webpack_require__) {
-
-/* WEBPACK VAR INJECTION */(function(global) {module.exports = global["pdfMake"] = __webpack_require__(215);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(22)))
-
-/***/ }),
-/* 215 */
+/* 295 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/* WEBPACK VAR INJECTION */(function(Buffer, global) {
-
-var isFunction = __webpack_require__(0).isFunction;
-var isUndefined = __webpack_require__(0).isUndefined;
-var isNull = __webpack_require__(0).isNull;
-var FileSaver = __webpack_require__(218);
-var saveAs = FileSaver.saveAs;
-
-var defaultClientFonts = {
- Roboto: {
- normal: 'Roboto-Regular.ttf',
- bold: 'Roboto-Medium.ttf',
- italics: 'Roboto-Italic.ttf',
- bolditalics: 'Roboto-MediumItalic.ttf'
- }
-};
-
-function Document(docDefinition, tableLayouts, fonts, vfs) {
- this.docDefinition = docDefinition;
- this.tableLayouts = tableLayouts || null;
- this.fonts = fonts || defaultClientFonts;
- this.vfs = vfs;
-}
-
-function canCreatePdf() {
- // Ensure the browser provides the level of support needed
- if (!Object.keys || typeof Uint16Array === 'undefined') {
- return false;
- }
- return true;
-}
-
-Document.prototype._createDoc = function (options) {
- options = options || {};
- if (this.tableLayouts) {
- options.tableLayouts = this.tableLayouts;
- }
-
- var PdfPrinter = __webpack_require__(219);
-
- var printer = new PdfPrinter(this.fonts);
- __webpack_require__(84).bindFS(this.vfs); // bind virtual file system to file system
-
- var doc = printer.createPdfKitDocument(this.docDefinition, options);
-
- return doc;
-};
-
-Document.prototype._flushDoc = function (doc, callback) {
- var chunks = [];
- var result;
-
- doc.on('readable', function () {
- var chunk;
- while ((chunk = doc.read(9007199254740991)) !== null) {
- chunks.push(chunk);
- }
- });
- doc.on('end', function () {
- result = Buffer.concat(chunks);
- callback(result, doc._pdfMakePages);
- });
- doc.end();
-};
-
-Document.prototype._getPages = function (options, cb) {
- if (!cb) {
- throw '_getPages is an async method and needs a callback argument';
- }
- var doc = this._createDoc(options);
- this._flushDoc(doc, function (ignoreBuffer, pages) {
- cb(pages);
- });
-};
-
-Document.prototype._bufferToBlob = function (buffer) {
- var blob;
- try {
- blob = new Blob([buffer], { type: 'application/pdf' });
- } catch (e) {
- // Old browser which can't handle it without making it an byte array (ie10)
- if (e.name === 'InvalidStateError') {
- var byteArray = new Uint8Array(buffer);
- blob = new Blob([byteArray.buffer], { type: 'application/pdf' });
- }
- }
-
- if (!blob) {
- throw 'Could not generate blob';
- }
-
- return blob;
-};
-
-Document.prototype._openWindow = function () {
- // we have to open the window immediately and store the reference
- // otherwise popup blockers will stop us
- var win = window.open('', '_blank');
- if (win === null) {
- throw 'Open PDF in new window blocked by browser';
- }
-
- return win;
-};
-
-Document.prototype._openPdf = function (options, win) {
- if (!win) {
- win = this._openWindow();
- }
- try {
- this.getBlob(function (result) {
- var urlCreator = window.URL || window.webkitURL;
- var pdfUrl = urlCreator.createObjectURL(result);
- win.location.href = pdfUrl;
-
- /* temporarily disabled
- if (win !== window) {
- setTimeout(function () {
- if (isNull(win.window)) { // is closed by AdBlock
- window.location.href = pdfUrl; // open in actual window
- }
- }, 500);
- }
- */
- }, options);
- } catch (e) {
- win.close();
- throw e;
- }
-};
-
-Document.prototype.open = function (options, win) {
- options = options || {};
- options.autoPrint = false;
- win = win || null;
-
- this._openPdf(options, win);
-};
-
-
-Document.prototype.print = function (options, win) {
- options = options || {};
- options.autoPrint = true;
- win = win || null;
-
- this._openPdf(options, win);
-};
-
-/**
- * download(defaultFileName = 'file.pdf', cb = null, options = {})
- * or
- * download(cb, options = {})
- */
-Document.prototype.download = function (defaultFileName, cb, options) {
- if (isFunction(defaultFileName)) {
- if (!isUndefined(cb)) {
- options = cb;
- }
- cb = defaultFileName;
- defaultFileName = null;
- }
-
- defaultFileName = defaultFileName || 'file.pdf';
- this.getBlob(function (result) {
- saveAs(result, defaultFileName);
-
- if (isFunction(cb)) {
- cb();
- }
- }, options);
-};
-
-Document.prototype.getBase64 = function (cb, options) {
- if (!cb) {
- throw 'getBase64 is an async method and needs a callback argument';
- }
- this.getBuffer(function (buffer) {
- cb(buffer.toString('base64'));
- }, options);
-};
-
-Document.prototype.getDataUrl = function (cb, options) {
- if (!cb) {
- throw 'getDataUrl is an async method and needs a callback argument';
- }
- this.getBuffer(function (buffer) {
- cb('data:application/pdf;base64,' + buffer.toString('base64'));
- }, options);
-};
-
-Document.prototype.getBlob = function (cb, options) {
- if (!cb) {
- throw 'getBlob is an async method and needs a callback argument';
- }
- var that = this;
- this.getBuffer(function (result) {
- var blob = that._bufferToBlob(result);
- cb(blob);
- }, options);
-};
-
-Document.prototype.getBuffer = function (cb, options) {
- if (!cb) {
- throw 'getBuffer is an async method and needs a callback argument';
- }
- var doc = this._createDoc(options);
- this._flushDoc(doc, function (buffer) {
- cb(buffer);
- });
-};
-
-Document.prototype.getStream = function (options) {
- var doc = this._createDoc(options);
- return doc;
-};
-
-module.exports = {
- createPdf: function (docDefinition, tableLayouts, fonts, vfs) {
- if (!canCreatePdf()) {
- throw 'Your browser does not provide the level of support needed';
- }
- return new Document(
- docDefinition,
- tableLayouts || global.pdfMake.tableLayouts,
- fonts || global.pdfMake.fonts,
- vfs || global.pdfMake.vfs
- );
- }
-};
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer, __webpack_require__(22)))
+var $ = __webpack_require__(1);
+var getPrototypeOf = __webpack_require__(60);
+var setPrototypeOf = __webpack_require__(45);
+var create = __webpack_require__(58);
+var createNonEnumerableProperty = __webpack_require__(18);
+var createPropertyDescriptor = __webpack_require__(40);
+var iterate = __webpack_require__(136);
+
+var $AggregateError = function AggregateError(errors, message) {
+ var that = this;
+ if (!(that instanceof $AggregateError)) return new $AggregateError(errors, message);
+ if (setPrototypeOf) {
+ // eslint-disable-next-line unicorn/error-message
+ that = setPrototypeOf(new Error(undefined), getPrototypeOf(that));
+ }
+ if (message !== undefined) createNonEnumerableProperty(that, 'message', String(message));
+ var errorsArray = [];
+ iterate(errors, errorsArray.push, { that: errorsArray });
+ createNonEnumerableProperty(that, 'errors', errorsArray);
+ return that;
+};
+
+$AggregateError.prototype = create(Error.prototype, {
+ constructor: createPropertyDescriptor(5, $AggregateError),
+ message: createPropertyDescriptor(5, ''),
+ name: createPropertyDescriptor(5, 'AggregateError')
+});
+
+// `AggregateError` constructor
+// https://tc39.es/ecma262/#sec-aggregate-error-constructor
+$({ global: true }, {
+ AggregateError: $AggregateError
+});
+
/***/ }),
-/* 216 */
+/* 296 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+
+module.exports = global.Promise;
+
+
+/***/ }),
+/* 297 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+var fails = __webpack_require__(4);
+var bind = __webpack_require__(96);
+var html = __webpack_require__(206);
+var createElement = __webpack_require__(138);
+var IS_IOS = __webpack_require__(298);
+var IS_NODE = __webpack_require__(199);
+
+var location = global.location;
+var set = global.setImmediate;
+var clear = global.clearImmediate;
+var process = global.process;
+var MessageChannel = global.MessageChannel;
+var Dispatch = global.Dispatch;
+var counter = 0;
+var queue = {};
+var ONREADYSTATECHANGE = 'onreadystatechange';
+var defer, channel, port;
+
+var run = function (id) {
+ // eslint-disable-next-line no-prototype-builtins
+ if (queue.hasOwnProperty(id)) {
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+};
+
+var runner = function (id) {
+ return function () {
+ run(id);
+ };
+};
+
+var listener = function (event) {
+ run(event.data);
+};
+
+var post = function (id) {
+ // old engines have not location.origin
+ global.postMessage(id + '', location.protocol + '//' + location.host);
+};
+
+// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+if (!set || !clear) {
+ set = function setImmediate(fn) {
+ var args = [];
+ var i = 1;
+ while (arguments.length > i) args.push(arguments[i++]);
+ queue[++counter] = function () {
+ // eslint-disable-next-line no-new-func
+ (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clear = function clearImmediate(id) {
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if (IS_NODE) {
+ defer = function (id) {
+ process.nextTick(runner(id));
+ };
+ // Sphere (JS game engine) Dispatch API
+ } else if (Dispatch && Dispatch.now) {
+ defer = function (id) {
+ Dispatch.now(runner(id));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ // except iOS - https://github.com/zloirock/core-js/issues/624
+ } else if (MessageChannel && !IS_IOS) {
+ channel = new MessageChannel();
+ port = channel.port2;
+ channel.port1.onmessage = listener;
+ defer = bind(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if (
+ global.addEventListener &&
+ typeof postMessage == 'function' &&
+ !global.importScripts &&
+ location && location.protocol !== 'file:' &&
+ !fails(post)
+ ) {
+ defer = post;
+ global.addEventListener('message', listener, false);
+ // IE8-
+ } else if (ONREADYSTATECHANGE in createElement('script')) {
+ defer = function (id) {
+ html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {
+ html.removeChild(this);
+ run(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function (id) {
+ setTimeout(runner(id), 0);
+ };
+ }
+}
+
+module.exports = {
+ set: set,
+ clear: clear
+};
+
+
+/***/ }),
+/* 298 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var userAgent = __webpack_require__(149);
+
+module.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);
+
+
+/***/ }),
+/* 299 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__(11);
+var isObject = __webpack_require__(14);
+var newPromiseCapability = __webpack_require__(109);
+
+module.exports = function (C, x) {
+ anObject(C);
+ if (isObject(x) && x.constructor === C) return x;
+ var promiseCapability = newPromiseCapability.f(C);
+ var resolve = promiseCapability.resolve;
+ resolve(x);
+ return promiseCapability.promise;
+};
+
+
+/***/ }),
+/* 300 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var aFunction = __webpack_require__(44);
+var newPromiseCapabilityModule = __webpack_require__(109);
+var perform = __webpack_require__(137);
+var iterate = __webpack_require__(136);
+
+// `Promise.allSettled` method
+// https://tc39.es/ecma262/#sec-promise.allsettled
+$({ target: 'Promise', stat: true }, {
+ allSettled: function allSettled(iterable) {
+ var C = this;
+ var capability = newPromiseCapabilityModule.f(C);
+ var resolve = capability.resolve;
+ var reject = capability.reject;
+ var result = perform(function () {
+ var promiseResolve = aFunction(C.resolve);
+ var values = [];
+ var counter = 0;
+ var remaining = 1;
+ iterate(iterable, function (promise) {
+ var index = counter++;
+ var alreadyCalled = false;
+ values.push(undefined);
+ remaining++;
+ promiseResolve.call(C, promise).then(function (value) {
+ if (alreadyCalled) return;
+ alreadyCalled = true;
+ values[index] = { status: 'fulfilled', value: value };
+ --remaining || resolve(values);
+ }, function (error) {
+ if (alreadyCalled) return;
+ alreadyCalled = true;
+ values[index] = { status: 'rejected', reason: error };
+ --remaining || resolve(values);
+ });
+ });
+ --remaining || resolve(values);
+ });
+ if (result.error) reject(result.value);
+ return capability.promise;
+ }
+});
+
+
+/***/ }),
+/* 301 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var aFunction = __webpack_require__(44);
+var getBuiltIn = __webpack_require__(34);
+var newPromiseCapabilityModule = __webpack_require__(109);
+var perform = __webpack_require__(137);
+var iterate = __webpack_require__(136);
+
+var PROMISE_ANY_ERROR = 'No one promise resolved';
+
+// `Promise.any` method
+// https://tc39.es/ecma262/#sec-promise.any
+$({ target: 'Promise', stat: true }, {
+ any: function any(iterable) {
+ var C = this;
+ var capability = newPromiseCapabilityModule.f(C);
+ var resolve = capability.resolve;
+ var reject = capability.reject;
+ var result = perform(function () {
+ var promiseResolve = aFunction(C.resolve);
+ var errors = [];
+ var counter = 0;
+ var remaining = 1;
+ var alreadyResolved = false;
+ iterate(iterable, function (promise) {
+ var index = counter++;
+ var alreadyRejected = false;
+ errors.push(undefined);
+ remaining++;
+ promiseResolve.call(C, promise).then(function (value) {
+ if (alreadyRejected || alreadyResolved) return;
+ alreadyResolved = true;
+ resolve(value);
+ }, function (error) {
+ if (alreadyRejected || alreadyResolved) return;
+ alreadyRejected = true;
+ errors[index] = error;
+ --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR));
+ });
+ });
+ --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR));
+ });
+ if (result.error) reject(result.value);
+ return capability.promise;
+ }
+});
+
+
+/***/ }),
+/* 302 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var ___EXPOSE_LOADER_IMPORT___ = __webpack_require__(303);
+var ___EXPOSE_LOADER_GET_GLOBAL_THIS___ = __webpack_require__(571);
+var ___EXPOSE_LOADER_GLOBAL_THIS___ = ___EXPOSE_LOADER_GET_GLOBAL_THIS___;
+if (typeof ___EXPOSE_LOADER_GLOBAL_THIS___["pdfMake"] === 'undefined') ___EXPOSE_LOADER_GLOBAL_THIS___["pdfMake"] = ___EXPOSE_LOADER_IMPORT___;
+module.exports = ___EXPOSE_LOADER_IMPORT___;
+
+
+/***/ }),
+/* 303 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(Buffer, global) {
+
+var isFunction = __webpack_require__(0).isFunction;
+var isUndefined = __webpack_require__(0).isUndefined;
+var isNull = __webpack_require__(0).isNull;
+var FileSaver = __webpack_require__(306);
+var saveAs = FileSaver.saveAs;
+
+var defaultClientFonts = {
+ Roboto: {
+ normal: 'Roboto-Regular.ttf',
+ bold: 'Roboto-Medium.ttf',
+ italics: 'Roboto-Italic.ttf',
+ bolditalics: 'Roboto-MediumItalic.ttf'
+ }
+};
+
+function Document(docDefinition, tableLayouts, fonts, vfs) {
+ this.docDefinition = docDefinition;
+ this.tableLayouts = tableLayouts || null;
+ this.fonts = fonts || defaultClientFonts;
+ this.vfs = vfs;
+}
+
+function canCreatePdf() {
+ // Ensure the browser provides the level of support needed
+ if (!Object.keys || typeof Uint16Array === 'undefined') {
+ return false;
+ }
+ return true;
+}
+
+Document.prototype._createDoc = function (options, cb) {
+ options = options || {};
+ if (this.tableLayouts) {
+ options.tableLayouts = this.tableLayouts;
+ }
+
+ var PdfPrinter = __webpack_require__(307);
+
+ var printer = new PdfPrinter(this.fonts);
+ __webpack_require__(53).bindFS(this.vfs); // bind virtual file system to file system
+
+ if (!isFunction(cb)) {
+ var doc = printer.createPdfKitDocument(this.docDefinition, options);
+
+ return doc;
+ }
+
+ var URLBrowserResolver = __webpack_require__(556);
+ var urlResolver = new URLBrowserResolver(__webpack_require__(53));
+
+ for (var font in this.fonts) {
+ if (this.fonts.hasOwnProperty(font)) {
+ if (this.fonts[font].normal) {
+ urlResolver.resolve(this.fonts[font].normal);
+ }
+ if (this.fonts[font].bold) {
+ urlResolver.resolve(this.fonts[font].bold);
+ }
+ if (this.fonts[font].italics) {
+ urlResolver.resolve(this.fonts[font].italics);
+ }
+ if (this.fonts[font].bolditalics) {
+ urlResolver.resolve(this.fonts[font].bolditalics);
+ }
+ }
+ }
+
+ if (this.docDefinition.images) {
+ for (var image in this.docDefinition.images) {
+ if (this.docDefinition.images.hasOwnProperty(image)) {
+ urlResolver.resolve(this.docDefinition.images[image]);
+ }
+ }
+ }
+
+ var _this = this;
+
+ urlResolver.resolved().then(function () {
+ var doc = printer.createPdfKitDocument(_this.docDefinition, options);
+
+ cb(doc);
+ }, function (result) {
+ throw result;
+ });
+};
+
+Document.prototype._flushDoc = function (doc, callback) {
+ var chunks = [];
+ var result;
+
+ doc.on('readable', function () {
+ var chunk;
+ while ((chunk = doc.read(9007199254740991)) !== null) {
+ chunks.push(chunk);
+ }
+ });
+ doc.on('end', function () {
+ result = Buffer.concat(chunks);
+ callback(result, doc._pdfMakePages);
+ });
+ doc.end();
+};
+
+Document.prototype._getPages = function (options, cb) {
+ if (!cb) {
+ throw '_getPages is an async method and needs a callback argument';
+ }
+ var _this = this;
+
+ this._createDoc(options, function (doc) {
+ _this._flushDoc(doc, function (ignoreBuffer, pages) {
+ cb(pages);
+ });
+ });
+};
+
+Document.prototype._bufferToBlob = function (buffer) {
+ var blob;
+ try {
+ blob = new Blob([buffer], { type: 'application/pdf' });
+ } catch (e) {
+ // Old browser which can't handle it without making it an byte array (ie10)
+ if (e.name === 'InvalidStateError') {
+ var byteArray = new Uint8Array(buffer);
+ blob = new Blob([byteArray.buffer], { type: 'application/pdf' });
+ }
+ }
+
+ if (!blob) {
+ throw 'Could not generate blob';
+ }
+
+ return blob;
+};
+
+Document.prototype._openWindow = function () {
+ // we have to open the window immediately and store the reference
+ // otherwise popup blockers will stop us
+ var win = window.open('', '_blank');
+ if (win === null) {
+ throw 'Open PDF in new window blocked by browser';
+ }
+
+ return win;
+};
+
+Document.prototype._openPdf = function (options, win) {
+ if (!win) {
+ win = this._openWindow();
+ }
+ try {
+ this.getBlob(function (result) {
+ var urlCreator = window.URL || window.webkitURL;
+ var pdfUrl = urlCreator.createObjectURL(result);
+ win.location.href = pdfUrl;
+
+ /* temporarily disabled
+ if (win !== window) {
+ setTimeout(function () {
+ if (isNull(win.window)) { // is closed by AdBlock
+ window.location.href = pdfUrl; // open in actual window
+ }
+ }, 500);
+ }
+ */
+ }, options);
+ } catch (e) {
+ win.close();
+ throw e;
+ }
+};
+
+Document.prototype.open = function (options, win) {
+ options = options || {};
+ options.autoPrint = false;
+ win = win || null;
+
+ this._openPdf(options, win);
+};
+
+
+Document.prototype.print = function (options, win) {
+ options = options || {};
+ options.autoPrint = true;
+ win = win || null;
+
+ this._openPdf(options, win);
+};
+
+/**
+ * download(defaultFileName = 'file.pdf', cb = null, options = {})
+ * or
+ * download(cb, options = {})
+ */
+Document.prototype.download = function (defaultFileName, cb, options) {
+ if (isFunction(defaultFileName)) {
+ if (!isUndefined(cb)) {
+ options = cb;
+ }
+ cb = defaultFileName;
+ defaultFileName = null;
+ }
+
+ defaultFileName = defaultFileName || 'file.pdf';
+ this.getBlob(function (result) {
+ saveAs(result, defaultFileName);
+
+ if (isFunction(cb)) {
+ cb();
+ }
+ }, options);
+};
+
+Document.prototype.getBase64 = function (cb, options) {
+ if (!cb) {
+ throw 'getBase64 is an async method and needs a callback argument';
+ }
+ this.getBuffer(function (buffer) {
+ cb(buffer.toString('base64'));
+ }, options);
+};
+
+Document.prototype.getDataUrl = function (cb, options) {
+ if (!cb) {
+ throw 'getDataUrl is an async method and needs a callback argument';
+ }
+ this.getBuffer(function (buffer) {
+ cb('data:application/pdf;base64,' + buffer.toString('base64'));
+ }, options);
+};
+
+Document.prototype.getBlob = function (cb, options) {
+ if (!cb) {
+ throw 'getBlob is an async method and needs a callback argument';
+ }
+ var that = this;
+ this.getBuffer(function (result) {
+ var blob = that._bufferToBlob(result);
+ cb(blob);
+ }, options);
+};
+
+Document.prototype.getBuffer = function (cb, options) {
+ if (!cb) {
+ throw 'getBuffer is an async method and needs a callback argument';
+ }
+
+ var _this = this;
+
+ this._createDoc(options, function (doc) {
+ _this._flushDoc(doc, function (buffer) {
+ cb(buffer);
+ });
+ });
+};
+
+Document.prototype.getStream = function (options, cb) {
+ if (!isFunction(cb)) {
+ var doc = this._createDoc(options);
+ return doc;
+ }
+
+ this._createDoc(options, function (doc) {
+ cb(doc);
+ });
+};
+
+module.exports = {
+ createPdf: function (docDefinition, tableLayouts, fonts, vfs) {
+ if (!canCreatePdf()) {
+ throw 'Your browser does not provide the level of support needed';
+ }
+ return new Document(
+ docDefinition,
+ tableLayouts || global.pdfMake.tableLayouts,
+ fonts || global.pdfMake.fonts,
+ vfs || global.pdfMake.vfs
+ );
+ }
+};
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer, __webpack_require__(24)))
+
+/***/ }),
+/* 304 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -19263,9 +22607,7 @@ function fromByteArray (uint8) {
// go through the array every three bytes, we'll deal with trailing stuff later
for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
- parts.push(encodeChunk(
- uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)
- ))
+ parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
}
// pad the end with zeros, but make sure to not forget the extra bytes
@@ -19291,9 +22633,10 @@ function fromByteArray (uint8) {
/***/ }),
-/* 217 */
+/* 305 */
/***/ (function(module, exports) {
+/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */
exports.read = function (buffer, offset, isLE, mLen, nBytes) {
var e, m
var eLen = (nBytes * 8) - mLen - 1
@@ -19381,782 +22724,890 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
/***/ }),
-/* 218 */
+/* 306 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(global) {var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function(a,b){if(true)!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (b),
__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
- __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));else {}})(this,function(){"use strict";function b(a,b){return"undefined"==typeof b?b={autoBom:!1}:"object"!=typeof b&&(console.warn("Deprecated: Expected third argument to be a object"),b={autoBom:!b}),b.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\uFEFF",a],{type:a.type}):a}function c(b,c,d){var e=new XMLHttpRequest;e.open("GET",b),e.responseType="blob",e.onload=function(){a(e.response,c,d)},e.onerror=function(){console.error("could not download file")},e.send()}function d(a){var b=new XMLHttpRequest;b.open("HEAD",a,!1);try{b.send()}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent("click"))}catch(c){var b=document.createEvent("MouseEvents");b.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b)}}var f="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,a=f.saveAs||("object"!=typeof window||window!==f?function(){}:(typeof HTMLAnchorElement !== "undefined" && "download" in HTMLAnchorElement.prototype)?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement("a");g=g||b.name||"download",j.download=g,j.rel="noopener","string"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target="_blank")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href)},4E4),setTimeout(function(){e(j)},0))}:"msSaveOrOpenBlob"in navigator?function(f,g,h){if(g=g||f.name||"download","string"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else{var i=document.createElement("a");i.href=f,i.target="_blank",setTimeout(function(){e(i)})}}:function(a,b,d,e){if(e=e||open("","_blank"),e&&(e.document.title=e.document.body.innerText="downloading..."),"string"==typeof a)return c(a,b,d);var g="application/octet-stream"===a.type,h=/constructor/i.test(f.HTMLElement)||f.safari,i=/CriOS\/[\d]+/.test(navigator.userAgent);if((i||g&&h)&&"object"==typeof FileReader){var j=new FileReader;j.onloadend=function(){var a=j.result;a=i?a:a.replace(/^data:[^;]*;/,"data:attachment/file;"),e?e.location.href=a:location=a,e=null},j.readAsDataURL(a)}else{var k=f.URL||f.webkitURL,l=k.createObjectURL(a);e?e.location=l:location.href=l,e=null,setTimeout(function(){k.revokeObjectURL(l)},4E4)}});f.saveAs=a.saveAs=a, true&&(module.exports=a)});
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));else {}})(this,function(){"use strict";function b(a,b){return"undefined"==typeof b?b={autoBom:!1}:"object"!=typeof b&&(console.warn("Deprecated: Expected third argument to be a object"),b={autoBom:!b}),b.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\uFEFF",a],{type:a.type}):a}function c(a,b,c){var d=new XMLHttpRequest;d.open("GET",a),d.responseType="blob",d.onload=function(){g(d.response,b,c)},d.onerror=function(){console.error("could not download file")},d.send()}function d(a){var b=new XMLHttpRequest;b.open("HEAD",a,!1);try{b.send()}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent("click"))}catch(c){var b=document.createEvent("MouseEvents");b.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b)}}var f="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,a=f.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),g=f.saveAs||("object"!=typeof window||window!==f?function(){}:(typeof HTMLAnchorElement !== "undefined" && "download" in HTMLAnchorElement.prototype)&&!a?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement("a");g=g||b.name||"download",j.download=g,j.rel="noopener","string"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target="_blank")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href)},4E4),setTimeout(function(){e(j)},0))}:"msSaveOrOpenBlob"in navigator?function(f,g,h){if(g=g||f.name||"download","string"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else{var i=document.createElement("a");i.href=f,i.target="_blank",setTimeout(function(){e(i)})}}:function(b,d,e,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),"string"==typeof b)return c(b,d,e);var h="application/octet-stream"===b.type,i=/constructor/i.test(f.HTMLElement)||f.safari,j=/CriOS\/[\d]+/.test(navigator.userAgent);if((j||h&&i||a)&&"undefined"!=typeof FileReader){var k=new FileReader;k.onloadend=function(){var a=k.result;a=j?a:a.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=a:location=a,g=null},k.readAsDataURL(b)}else{var l=f.URL||f.webkitURL,m=l.createObjectURL(b);g?g.location=m:location.href=m,g=null,setTimeout(function(){l.revokeObjectURL(m)},4E4)}});f.saveAs=g.saveAs=g, true&&(module.exports=g)});
//# sourceMappingURL=FileSaver.min.js.map
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(22)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24)))
/***/ }),
-/* 219 */
+/* 307 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/*eslint no-unused-vars: ["error", {"args": "none"}]*/
-
-
-var PdfKitEngine = __webpack_require__(220);
-var FontProvider = __webpack_require__(444);
-var LayoutBuilder = __webpack_require__(445);
-var sizes = __webpack_require__(452);
-var ImageMeasure = __webpack_require__(453);
-var SVGMeasure = __webpack_require__(454);
-var textDecorator = __webpack_require__(455);
-var TextTools = __webpack_require__(130);
-var isFunction = __webpack_require__(0).isFunction;
-var isString = __webpack_require__(0).isString;
-var isNumber = __webpack_require__(0).isNumber;
-var isBoolean = __webpack_require__(0).isBoolean;
-var isArray = __webpack_require__(0).isArray;
-var isUndefined = __webpack_require__(0).isUndefined;
-
-var getSvgToPDF = function () {
- try {
- // optional dependency to support svg nodes
- return __webpack_require__(456);
- } catch (e) {
- throw new Error('Please install svg-to-pdfkit to enable svg nodes');
- }
-};
-
-var findFont = function (fonts, requiredFonts, defaultFont) {
- for (var i = 0; i < requiredFonts.length; i++) {
- var requiredFont = requiredFonts[i].toLowerCase();
-
- for (var font in fonts) {
- if (font.toLowerCase() === requiredFont) {
- return font;
- }
- }
- }
-
- return defaultFont;
-};
-
-////////////////////////////////////////
-// PdfPrinter
-
-/**
- * @class Creates an instance of a PdfPrinter which turns document definition into a pdf
- *
- * @param {Object} fontDescriptors font definition dictionary
- *
- * @example
- * var fontDescriptors = {
- * Roboto: {
- * normal: 'fonts/Roboto-Regular.ttf',
- * bold: 'fonts/Roboto-Medium.ttf',
- * italics: 'fonts/Roboto-Italic.ttf',
- * bolditalics: 'fonts/Roboto-MediumItalic.ttf'
- * }
- * };
- *
- * var printer = new PdfPrinter(fontDescriptors);
- */
-function PdfPrinter(fontDescriptors) {
- this.fontDescriptors = fontDescriptors;
-}
-
-/**
- * Executes layout engine for the specified document and renders it into a pdfkit document
- * ready to be saved.
- *
- * @param {Object} docDefinition document definition
- * @param {Object} docDefinition.content an array describing the pdf structure (for more information take a look at the examples in the /examples folder)
- * @param {Object} [docDefinition.defaultStyle] default (implicit) style definition
- * @param {Object} [docDefinition.styles] dictionary defining all styles which can be used in the document
- * @param {Object} [docDefinition.pageSize] page size (pdfkit units, A4 dimensions by default)
- * @param {Number} docDefinition.pageSize.width width
- * @param {Number} docDefinition.pageSize.height height
- * @param {Object} [docDefinition.pageMargins] page margins (pdfkit units)
- * @param {Number} docDefinition.maxPagesNumber maximum number of pages to render
- *
- * @example
- *
- * var docDefinition = {
- * info: {
- * title: 'awesome Document',
- * author: 'john doe',
- * subject: 'subject of document',
- * keywords: 'keywords for document',
- * },
- * content: [
- * 'First paragraph',
- * 'Second paragraph, this time a little bit longer',
- * { text: 'Third paragraph, slightly bigger font size', fontSize: 20 },
- * { text: 'Another paragraph using a named style', style: 'header' },
- * { text: ['playing with ', 'inlines' ] },
- * { text: ['and ', { text: 'restyling ', bold: true }, 'them'] },
- * ],
- * styles: {
- * header: { fontSize: 30, bold: true }
- * }
- * }
- *
- * var pdfKitDoc = printer.createPdfKitDocument(docDefinition);
- *
- * pdfKitDoc.pipe(fs.createWriteStream('sample.pdf'));
- * pdfKitDoc.end();
- *
- * @return {Object} a pdfKit document object which can be saved or encode to data-url
- */
-PdfPrinter.prototype.createPdfKitDocument = function (docDefinition, options) {
- options = options || {};
-
- docDefinition.version = docDefinition.version || '1.3';
- docDefinition.compress = isBoolean(docDefinition.compress) ? docDefinition.compress : true;
- docDefinition.images = docDefinition.images || {};
- docDefinition.pageMargins = ((docDefinition.pageMargins !== undefined) && (docDefinition.pageMargins !== null)) ? docDefinition.pageMargins : 40;
-
- var pageSize = fixPageSize(docDefinition.pageSize, docDefinition.pageOrientation);
-
- var pdfOptions = {
- size: [pageSize.width, pageSize.height],
- pdfVersion: docDefinition.version,
- compress: docDefinition.compress,
- userPassword: docDefinition.userPassword,
- ownerPassword: docDefinition.ownerPassword,
- permissions: docDefinition.permissions,
- fontLayoutCache: isBoolean(options.fontLayoutCache) ? options.fontLayoutCache : true,
- bufferPages: options.bufferPages || false,
- autoFirstPage: false,
- font: null
- };
-
- this.pdfKitDoc = PdfKitEngine.createPdfDocument(pdfOptions);
- setMetadata(docDefinition, this.pdfKitDoc);
-
- this.fontProvider = new FontProvider(this.fontDescriptors, this.pdfKitDoc);
-
- var builder = new LayoutBuilder(pageSize, fixPageMargins(docDefinition.pageMargins), new ImageMeasure(this.pdfKitDoc, docDefinition.images), new SVGMeasure());
-
- registerDefaultTableLayouts(builder);
- if (options.tableLayouts) {
- builder.registerTableLayouts(options.tableLayouts);
- }
-
- var pages = builder.layoutDocument(docDefinition.content, this.fontProvider, docDefinition.styles || {}, docDefinition.defaultStyle || {
- fontSize: 12,
- font: 'Roboto'
- }, docDefinition.background, docDefinition.header, docDefinition.footer, docDefinition.images, docDefinition.watermark, docDefinition.pageBreakBefore);
- var maxNumberPages = docDefinition.maxPagesNumber || -1;
- if (isNumber(maxNumberPages) && maxNumberPages > -1) {
- pages = pages.slice(0, maxNumberPages);
- }
-
- // if pageSize.height is set to Infinity, calculate the actual height of the page that
- // was laid out using the height of each of the items in the page.
- if (pageSize.height === Infinity) {
- var pageHeight = calculatePageHeight(pages, docDefinition.pageMargins);
- this.pdfKitDoc.options.size = [pageSize.width, pageHeight];
- }
-
- renderPages(pages, this.fontProvider, this.pdfKitDoc, options.progressCallback);
-
- if (options.autoPrint) {
- var printActionRef = this.pdfKitDoc.ref({
- Type: 'Action',
- S: 'Named',
- N: 'Print'
- });
- this.pdfKitDoc._root.data.OpenAction = printActionRef;
- printActionRef.end();
- }
- return this.pdfKitDoc;
-};
-
-function setMetadata(docDefinition, pdfKitDoc) {
- // PDF standard has these properties reserved: Title, Author, Subject, Keywords,
- // Creator, Producer, CreationDate, ModDate, Trapped.
- // To keep the pdfmake api consistent, the info field are defined lowercase.
- // Custom properties don't contain a space.
- function standardizePropertyKey(key) {
- var standardProperties = ['Title', 'Author', 'Subject', 'Keywords',
- 'Creator', 'Producer', 'CreationDate', 'ModDate', 'Trapped'];
- var standardizedKey = key.charAt(0).toUpperCase() + key.slice(1);
- if (standardProperties.indexOf(standardizedKey) !== -1) {
- return standardizedKey;
- }
-
- return key.replace(/\s+/g, '');
- }
-
- pdfKitDoc.info.Producer = 'pdfmake';
- pdfKitDoc.info.Creator = 'pdfmake';
-
- if (docDefinition.info) {
- for (var key in docDefinition.info) {
- var value = docDefinition.info[key];
- if (value) {
- key = standardizePropertyKey(key);
- pdfKitDoc.info[key] = value;
- }
- }
- }
-}
-
-function calculatePageHeight(pages, margins) {
- function getItemHeight(item) {
- if (isFunction(item.item.getHeight)) {
- return item.item.getHeight();
- } else if (item.item._height) {
- return item.item._height;
- } else {
- // TODO: add support for next item types
- return 0;
- }
- }
-
- function getBottomPosition(item) {
- var top = item.item.y;
- var height = getItemHeight(item);
- return top + height;
- }
-
- var fixedMargins = fixPageMargins(margins || 40);
- var height = fixedMargins.top;
-
- pages.forEach(function (page) {
- page.items.forEach(function (item) {
- var bottomPosition = getBottomPosition(item);
- if (bottomPosition > height) {
- height = bottomPosition;
- }
- });
- });
-
- height += fixedMargins.bottom;
-
- return height;
-}
-
-function fixPageSize(pageSize, pageOrientation) {
- function isNeedSwapPageSizes(pageOrientation) {
- if (isString(pageOrientation)) {
- pageOrientation = pageOrientation.toLowerCase();
- return ((pageOrientation === 'portrait') && (size.width > size.height)) ||
- ((pageOrientation === 'landscape') && (size.width < size.height));
- }
- return false;
- }
-
- // if pageSize.height is set to auto, set the height to infinity so there are no page breaks.
- if (pageSize && pageSize.height === 'auto') {
- pageSize.height = Infinity;
- }
-
- var size = pageSize2widthAndHeight(pageSize || 'A4');
- if (isNeedSwapPageSizes(pageOrientation)) { // swap page sizes
- size = { width: size.height, height: size.width };
- }
- size.orientation = size.width > size.height ? 'landscape' : 'portrait';
- return size;
-}
-
-function fixPageMargins(margin) {
- if (isNumber(margin)) {
- margin = { left: margin, right: margin, top: margin, bottom: margin };
- } else if (isArray(margin)) {
- if (margin.length === 2) {
- margin = { left: margin[0], top: margin[1], right: margin[0], bottom: margin[1] };
- } else if (margin.length === 4) {
- margin = { left: margin[0], top: margin[1], right: margin[2], bottom: margin[3] };
- } else {
- throw 'Invalid pageMargins definition';
- }
- }
-
- return margin;
-}
-
-function registerDefaultTableLayouts(layoutBuilder) {
- layoutBuilder.registerTableLayouts({
- noBorders: {
- hLineWidth: function (i) {
- return 0;
- },
- vLineWidth: function (i) {
- return 0;
- },
- paddingLeft: function (i) {
- return i && 4 || 0;
- },
- paddingRight: function (i, node) {
- return (i < node.table.widths.length - 1) ? 4 : 0;
- }
- },
- headerLineOnly: {
- hLineWidth: function (i, node) {
- if (i === 0 || i === node.table.body.length) {
- return 0;
- }
- return (i === node.table.headerRows) ? 2 : 0;
- },
- vLineWidth: function (i) {
- return 0;
- },
- paddingLeft: function (i) {
- return i === 0 ? 0 : 8;
- },
- paddingRight: function (i, node) {
- return (i === node.table.widths.length - 1) ? 0 : 8;
- }
- },
- lightHorizontalLines: {
- hLineWidth: function (i, node) {
- if (i === 0 || i === node.table.body.length) {
- return 0;
- }
- return (i === node.table.headerRows) ? 2 : 1;
- },
- vLineWidth: function (i) {
- return 0;
- },
- hLineColor: function (i) {
- return i === 1 ? 'black' : '#aaa';
- },
- paddingLeft: function (i) {
- return i === 0 ? 0 : 8;
- },
- paddingRight: function (i, node) {
- return (i === node.table.widths.length - 1) ? 0 : 8;
- }
- }
- });
-}
-
-function pageSize2widthAndHeight(pageSize) {
- if (isString(pageSize)) {
- var size = sizes[pageSize.toUpperCase()];
- if (!size) {
- throw 'Page size ' + pageSize + ' not recognized';
- }
- return { width: size[0], height: size[1] };
- }
-
- return pageSize;
-}
-
-function updatePageOrientationInOptions(currentPage, pdfKitDoc) {
- var previousPageOrientation = pdfKitDoc.options.size[0] > pdfKitDoc.options.size[1] ? 'landscape' : 'portrait';
-
- if (currentPage.pageSize.orientation !== previousPageOrientation) {
- var width = pdfKitDoc.options.size[0];
- var height = pdfKitDoc.options.size[1];
- pdfKitDoc.options.size = [height, width];
- }
-}
-
-function renderPages(pages, fontProvider, pdfKitDoc, progressCallback) {
- pdfKitDoc._pdfMakePages = pages;
- pdfKitDoc.addPage();
-
- var totalItems = 0;
- if (progressCallback) {
- pages.forEach(function (page) {
- totalItems += page.items.length;
- });
- }
-
- var renderedItems = 0;
- progressCallback = progressCallback || function () {
- };
-
- for (var i = 0; i < pages.length; i++) {
- if (i > 0) {
- updatePageOrientationInOptions(pages[i], pdfKitDoc);
- pdfKitDoc.addPage(pdfKitDoc.options);
- }
-
- var page = pages[i];
- for (var ii = 0, il = page.items.length; ii < il; ii++) {
- var item = page.items[ii];
- switch (item.type) {
- case 'vector':
- renderVector(item.item, pdfKitDoc);
- break;
- case 'line':
- renderLine(item.item, item.item.x, item.item.y, pdfKitDoc);
- break;
- case 'image':
- renderImage(item.item, item.item.x, item.item.y, pdfKitDoc);
- break;
- case 'svg':
- renderSVG(item.item, item.item.x, item.item.y, pdfKitDoc, fontProvider);
- break;
- case 'beginClip':
- beginClip(item.item, pdfKitDoc);
- break;
- case 'endClip':
- endClip(pdfKitDoc);
- break;
- }
- renderedItems++;
- progressCallback(renderedItems / totalItems);
- }
- if (page.watermark) {
- renderWatermark(page, pdfKitDoc);
- }
- }
-}
-
-function renderLine(line, x, y, pdfKitDoc) {
- function preparePageNodeRefLine(_pageNodeRef, inline) {
- var newWidth;
- var diffWidth;
- var textTools = new TextTools(null);
-
- if (isUndefined(_pageNodeRef.positions)) {
- throw 'Page reference id not found';
- }
-
- var pageNumber = _pageNodeRef.positions[0].pageNumber.toString();
-
- inline.text = pageNumber;
- newWidth = textTools.widthOfString(inline.text, inline.font, inline.fontSize, inline.characterSpacing, inline.fontFeatures);
- diffWidth = inline.width - newWidth;
- inline.width = newWidth;
-
- switch (inline.alignment) {
- case 'right':
- inline.x += diffWidth;
- break;
- case 'center':
- inline.x += diffWidth / 2;
- break;
- }
- }
-
- if (line._pageNodeRef) {
- preparePageNodeRefLine(line._pageNodeRef, line.inlines[0]);
- }
-
- x = x || 0;
- y = y || 0;
-
- var lineHeight = line.getHeight();
- var ascenderHeight = line.getAscenderHeight();
- var descent = lineHeight - ascenderHeight;
-
- textDecorator.drawBackground(line, x, y, pdfKitDoc);
-
- //TODO: line.optimizeInlines();
- for (var i = 0, l = line.inlines.length; i < l; i++) {
- var inline = line.inlines[i];
- var shiftToBaseline = lineHeight - ((inline.font.ascender / 1000) * inline.fontSize) - descent;
-
- if (inline._pageNodeRef) {
- preparePageNodeRefLine(inline._pageNodeRef, inline);
- }
-
- var options = {
- lineBreak: false,
- textWidth: inline.width,
- characterSpacing: inline.characterSpacing,
- wordCount: 1,
- link: inline.link
- };
-
- if (inline.linkToDestination) {
- options.goTo = inline.linkToDestination;
- }
-
- if (line.id && i === 0) {
- options.destination = line.id;
- }
-
- if (inline.fontFeatures) {
- options.features = inline.fontFeatures;
- }
-
- var opacity = isNumber(inline.opacity) ? inline.opacity : 1;
- pdfKitDoc.opacity(opacity);
- pdfKitDoc.fill(inline.color || 'black');
-
- pdfKitDoc._font = inline.font;
- pdfKitDoc.fontSize(inline.fontSize);
- pdfKitDoc.text(inline.text, x + inline.x, y + shiftToBaseline, options);
-
- if (inline.linkToPage) {
- var _ref = pdfKitDoc.ref({ Type: 'Action', S: 'GoTo', D: [inline.linkToPage, 0, 0] }).end();
- pdfKitDoc.annotate(x + inline.x, y + shiftToBaseline, inline.width, inline.height, {
- Subtype: 'Link',
- Dest: [inline.linkToPage - 1, 'XYZ', null, null, null]
- });
- }
-
- }
-
- textDecorator.drawDecorations(line, x, y, pdfKitDoc);
-}
-
-function renderWatermark(page, pdfKitDoc) {
- var watermark = page.watermark;
-
- pdfKitDoc.fill(watermark.color);
- pdfKitDoc.opacity(watermark.opacity);
-
- pdfKitDoc.save();
-
- pdfKitDoc.rotate(watermark.angle, { origin: [pdfKitDoc.page.width / 2, pdfKitDoc.page.height / 2] });
-
- var x = pdfKitDoc.page.width / 2 - watermark._size.size.width / 2;
- var y = pdfKitDoc.page.height / 2 - watermark._size.size.height / 2;
-
- pdfKitDoc._font = watermark.font;
- pdfKitDoc.fontSize(watermark.fontSize);
- pdfKitDoc.text(watermark.text, x, y, { lineBreak: false });
-
- pdfKitDoc.restore();
-}
-
-function renderVector(vector, pdfKitDoc) {
- //TODO: pdf optimization (there's no need to write all properties everytime)
- pdfKitDoc.lineWidth(vector.lineWidth || 1);
- if (vector.dash) {
- pdfKitDoc.dash(vector.dash.length, { space: vector.dash.space || vector.dash.length, phase: vector.dash.phase || 0 });
- } else {
- pdfKitDoc.undash();
- }
- pdfKitDoc.lineJoin(vector.lineJoin || 'miter');
- pdfKitDoc.lineCap(vector.lineCap || 'butt');
-
- //TODO: clipping
-
- var gradient = null;
-
- switch (vector.type) {
- case 'ellipse':
- pdfKitDoc.ellipse(vector.x, vector.y, vector.r1, vector.r2);
-
- if (vector.linearGradient) {
- gradient = pdfKitDoc.linearGradient(vector.x - vector.r1, vector.y, vector.x + vector.r1, vector.y);
- }
- break;
- case 'rect':
- if (vector.r) {
- pdfKitDoc.roundedRect(vector.x, vector.y, vector.w, vector.h, vector.r);
- } else {
- pdfKitDoc.rect(vector.x, vector.y, vector.w, vector.h);
- }
-
- if (vector.linearGradient) {
- gradient = pdfKitDoc.linearGradient(vector.x, vector.y, vector.x + vector.w, vector.y);
- }
- break;
- case 'line':
- pdfKitDoc.moveTo(vector.x1, vector.y1);
- pdfKitDoc.lineTo(vector.x2, vector.y2);
- break;
- case 'polyline':
- if (vector.points.length === 0) {
- break;
- }
-
- pdfKitDoc.moveTo(vector.points[0].x, vector.points[0].y);
- for (var i = 1, l = vector.points.length; i < l; i++) {
- pdfKitDoc.lineTo(vector.points[i].x, vector.points[i].y);
- }
-
- if (vector.points.length > 1) {
- var p1 = vector.points[0];
- var pn = vector.points[vector.points.length - 1];
-
- if (vector.closePath || p1.x === pn.x && p1.y === pn.y) {
- pdfKitDoc.closePath();
- }
- }
- break;
- case 'path':
- pdfKitDoc.path(vector.d);
- break;
- }
-
- if (vector.linearGradient && gradient) {
- var step = 1 / (vector.linearGradient.length - 1);
-
- for (var i = 0; i < vector.linearGradient.length; i++) {
- gradient.stop(i * step, vector.linearGradient[i]);
- }
-
- vector.color = gradient;
- }
-
- var fillOpacity = isNumber(vector.fillOpacity) ? vector.fillOpacity : 1;
- var strokeOpacity = isNumber(vector.strokeOpacity) ? vector.strokeOpacity : 1;
-
- if (vector.color && vector.lineColor) {
- pdfKitDoc.fillColor(vector.color, fillOpacity);
- pdfKitDoc.strokeColor(vector.lineColor, strokeOpacity);
- pdfKitDoc.fillAndStroke();
- } else if (vector.color) {
- pdfKitDoc.fillColor(vector.color, fillOpacity);
- pdfKitDoc.fill();
- } else {
- pdfKitDoc.strokeColor(vector.lineColor || 'black', strokeOpacity);
- pdfKitDoc.stroke();
- }
-}
-
-function renderImage(image, x, y, pdfKitDoc) {
- var opacity = isNumber(image.opacity) ? image.opacity : 1;
- pdfKitDoc.opacity(opacity);
- pdfKitDoc.image(image.image, image.x, image.y, { width: image._width, height: image._height });
- if (image.link) {
- pdfKitDoc.link(image.x, image.y, image._width, image._height, image.link);
- }
- if (image.linkToPage) {
- pdfKitDoc.ref({ Type: 'Action', S: 'GoTo', D: [image.linkToPage, 0, 0] }).end();
- pdfKitDoc.annotate(image.x, image.y, image._width, image._height, { Subtype: 'Link', Dest: [image.linkToPage - 1, 'XYZ', null, null, null] });
- }
- if (image.linkToDestination) {
- pdfKitDoc.goTo(image.x, image.y, image._width, image._height, image.linkToDestination);
- }
-}
-
-function renderSVG(svg, x, y, pdfKitDoc, fontProvider) {
- var options = Object.assign({ width: svg._width, height: svg._height, assumePt: true }, svg.options);
- options.fontCallback = function (family, bold, italic) {
- var fontsFamily = family.split(',').map(function (f) { return f.trim().replace(/('|")/g, ''); });
- var font = findFont(fontProvider.fonts, fontsFamily, svg.font || 'Roboto');
-
- var fontFile = fontProvider.getFontFile(font, bold, italic);
- if (fontFile === null) {
- var type = fontProvider.getFontType(bold, italic);
- throw new Error('Font \'' + font + '\' in style \'' + type + '\' is not defined in the font section of the document definition.');
- }
-
- return fontFile;
- };
-
- getSvgToPDF()(pdfKitDoc, svg.svg, svg.x, svg.y, options);
-}
-
-function beginClip(rect, pdfKitDoc) {
- pdfKitDoc.save();
- pdfKitDoc.addContent('' + rect.x + ' ' + rect.y + ' ' + rect.width + ' ' + rect.height + ' re');
- pdfKitDoc.clip();
-}
-
-function endClip(pdfKitDoc) {
- pdfKitDoc.restore();
-}
-
-module.exports = PdfPrinter;
+/*eslint no-unused-vars: ["error", {"args": "none"}]*/
+
+
+var PdfKitEngine = __webpack_require__(308);
+var FontProvider = __webpack_require__(539);
+var LayoutBuilder = __webpack_require__(540);
+var sizes = __webpack_require__(547);
+var ImageMeasure = __webpack_require__(548);
+var SVGMeasure = __webpack_require__(549);
+var textDecorator = __webpack_require__(553);
+var TextTools = __webpack_require__(197);
+var isFunction = __webpack_require__(0).isFunction;
+var isString = __webpack_require__(0).isString;
+var isNumber = __webpack_require__(0).isNumber;
+var isBoolean = __webpack_require__(0).isBoolean;
+var isArray = __webpack_require__(0).isArray;
+var isUndefined = __webpack_require__(0).isUndefined;
+
+var getSvgToPDF = function () {
+ try {
+ // optional dependency to support svg nodes
+ return __webpack_require__(554);
+ } catch (e) {
+ throw new Error('Please install svg-to-pdfkit to enable svg nodes');
+ }
+};
+
+var findFont = function (fonts, requiredFonts, defaultFont) {
+ for (var i = 0; i < requiredFonts.length; i++) {
+ var requiredFont = requiredFonts[i].toLowerCase();
+
+ for (var font in fonts) {
+ if (font.toLowerCase() === requiredFont) {
+ return font;
+ }
+ }
+ }
+
+ return defaultFont;
+};
+
+////////////////////////////////////////
+// PdfPrinter
+
+/**
+ * @class Creates an instance of a PdfPrinter which turns document definition into a pdf
+ *
+ * @param {Object} fontDescriptors font definition dictionary
+ *
+ * @example
+ * var fontDescriptors = {
+ * Roboto: {
+ * normal: 'fonts/Roboto-Regular.ttf',
+ * bold: 'fonts/Roboto-Medium.ttf',
+ * italics: 'fonts/Roboto-Italic.ttf',
+ * bolditalics: 'fonts/Roboto-MediumItalic.ttf'
+ * }
+ * };
+ *
+ * var printer = new PdfPrinter(fontDescriptors);
+ */
+function PdfPrinter(fontDescriptors) {
+ this.fontDescriptors = fontDescriptors;
+}
+
+/**
+ * Executes layout engine for the specified document and renders it into a pdfkit document
+ * ready to be saved.
+ *
+ * @param {Object} docDefinition document definition
+ * @param {Object} docDefinition.content an array describing the pdf structure (for more information take a look at the examples in the /examples folder)
+ * @param {Object} [docDefinition.defaultStyle] default (implicit) style definition
+ * @param {Object} [docDefinition.styles] dictionary defining all styles which can be used in the document
+ * @param {Object} [docDefinition.pageSize] page size (pdfkit units, A4 dimensions by default)
+ * @param {Number} docDefinition.pageSize.width width
+ * @param {Number} docDefinition.pageSize.height height
+ * @param {Object} [docDefinition.pageMargins] page margins (pdfkit units)
+ * @param {Number} docDefinition.maxPagesNumber maximum number of pages to render
+ *
+ * @example
+ *
+ * var docDefinition = {
+ * info: {
+ * title: 'awesome Document',
+ * author: 'john doe',
+ * subject: 'subject of document',
+ * keywords: 'keywords for document',
+ * },
+ * content: [
+ * 'First paragraph',
+ * 'Second paragraph, this time a little bit longer',
+ * { text: 'Third paragraph, slightly bigger font size', fontSize: 20 },
+ * { text: 'Another paragraph using a named style', style: 'header' },
+ * { text: ['playing with ', 'inlines' ] },
+ * { text: ['and ', { text: 'restyling ', bold: true }, 'them'] },
+ * ],
+ * styles: {
+ * header: { fontSize: 30, bold: true }
+ * }
+ * }
+ *
+ * var pdfKitDoc = printer.createPdfKitDocument(docDefinition);
+ *
+ * pdfKitDoc.pipe(fs.createWriteStream('sample.pdf'));
+ * pdfKitDoc.end();
+ *
+ * @return {Object} a pdfKit document object which can be saved or encode to data-url
+ */
+PdfPrinter.prototype.createPdfKitDocument = function (docDefinition, options) {
+ options = options || {};
+
+ docDefinition.version = docDefinition.version || '1.3';
+ docDefinition.compress = isBoolean(docDefinition.compress) ? docDefinition.compress : true;
+ docDefinition.images = docDefinition.images || {};
+ docDefinition.pageMargins = ((docDefinition.pageMargins !== undefined) && (docDefinition.pageMargins !== null)) ? docDefinition.pageMargins : 40;
+
+ var pageSize = fixPageSize(docDefinition.pageSize, docDefinition.pageOrientation);
+
+ var pdfOptions = {
+ size: [pageSize.width, pageSize.height],
+ pdfVersion: docDefinition.version,
+ compress: docDefinition.compress,
+ userPassword: docDefinition.userPassword,
+ ownerPassword: docDefinition.ownerPassword,
+ permissions: docDefinition.permissions,
+ fontLayoutCache: isBoolean(options.fontLayoutCache) ? options.fontLayoutCache : true,
+ bufferPages: options.bufferPages || false,
+ autoFirstPage: false,
+ font: null
+ };
+
+ this.pdfKitDoc = PdfKitEngine.createPdfDocument(pdfOptions);
+ setMetadata(docDefinition, this.pdfKitDoc);
+
+ this.fontProvider = new FontProvider(this.fontDescriptors, this.pdfKitDoc);
+
+ var builder = new LayoutBuilder(pageSize, fixPageMargins(docDefinition.pageMargins), new ImageMeasure(this.pdfKitDoc, docDefinition.images), new SVGMeasure());
+
+ registerDefaultTableLayouts(builder);
+ if (options.tableLayouts) {
+ builder.registerTableLayouts(options.tableLayouts);
+ }
+
+ var pages = builder.layoutDocument(docDefinition.content, this.fontProvider, docDefinition.styles || {}, docDefinition.defaultStyle || {
+ fontSize: 12,
+ font: 'Roboto'
+ }, docDefinition.background, docDefinition.header, docDefinition.footer, docDefinition.images, docDefinition.watermark, docDefinition.pageBreakBefore);
+ var maxNumberPages = docDefinition.maxPagesNumber || -1;
+ if (isNumber(maxNumberPages) && maxNumberPages > -1) {
+ pages = pages.slice(0, maxNumberPages);
+ }
+
+ // if pageSize.height is set to Infinity, calculate the actual height of the page that
+ // was laid out using the height of each of the items in the page.
+ if (pageSize.height === Infinity) {
+ var pageHeight = calculatePageHeight(pages, docDefinition.pageMargins);
+ this.pdfKitDoc.options.size = [pageSize.width, pageHeight];
+ }
+
+ renderPages(pages, this.fontProvider, this.pdfKitDoc, options.progressCallback);
+
+ if (options.autoPrint) {
+ var printActionRef = this.pdfKitDoc.ref({
+ Type: 'Action',
+ S: 'Named',
+ N: 'Print'
+ });
+ this.pdfKitDoc._root.data.OpenAction = printActionRef;
+ printActionRef.end();
+ }
+ return this.pdfKitDoc;
+};
+
+function setMetadata(docDefinition, pdfKitDoc) {
+ // PDF standard has these properties reserved: Title, Author, Subject, Keywords,
+ // Creator, Producer, CreationDate, ModDate, Trapped.
+ // To keep the pdfmake api consistent, the info field are defined lowercase.
+ // Custom properties don't contain a space.
+ function standardizePropertyKey(key) {
+ var standardProperties = ['Title', 'Author', 'Subject', 'Keywords',
+ 'Creator', 'Producer', 'CreationDate', 'ModDate', 'Trapped'];
+ var standardizedKey = key.charAt(0).toUpperCase() + key.slice(1);
+ if (standardProperties.indexOf(standardizedKey) !== -1) {
+ return standardizedKey;
+ }
+
+ return key.replace(/\s+/g, '');
+ }
+
+ pdfKitDoc.info.Producer = 'pdfmake';
+ pdfKitDoc.info.Creator = 'pdfmake';
+
+ if (docDefinition.info) {
+ for (var key in docDefinition.info) {
+ var value = docDefinition.info[key];
+ if (value) {
+ key = standardizePropertyKey(key);
+ pdfKitDoc.info[key] = value;
+ }
+ }
+ }
+}
+
+function calculatePageHeight(pages, margins) {
+ function getItemHeight(item) {
+ if (isFunction(item.item.getHeight)) {
+ return item.item.getHeight();
+ } else if (item.item._height) {
+ return item.item._height;
+ } else if (item.type === 'vector') {
+ return item.item.y1 > item.item.y2 ? item.item.y1 : item.item.y2;
+ } else {
+ // TODO: add support for next item types
+ return 0;
+ }
+ }
+
+ function getBottomPosition(item) {
+ var top = item.item.y || 0;
+ var height = getItemHeight(item);
+ return top + height;
+ }
+
+ var fixedMargins = fixPageMargins(margins || 40);
+ var height = fixedMargins.top;
+
+ pages.forEach(function (page) {
+ page.items.forEach(function (item) {
+ var bottomPosition = getBottomPosition(item);
+ if (bottomPosition > height) {
+ height = bottomPosition;
+ }
+ });
+ });
+
+ height += fixedMargins.bottom;
+
+ return height;
+}
+
+function fixPageSize(pageSize, pageOrientation) {
+ function isNeedSwapPageSizes(pageOrientation) {
+ if (isString(pageOrientation)) {
+ pageOrientation = pageOrientation.toLowerCase();
+ return ((pageOrientation === 'portrait') && (size.width > size.height)) ||
+ ((pageOrientation === 'landscape') && (size.width < size.height));
+ }
+ return false;
+ }
+
+ // if pageSize.height is set to auto, set the height to infinity so there are no page breaks.
+ if (pageSize && pageSize.height === 'auto') {
+ pageSize.height = Infinity;
+ }
+
+ var size = pageSize2widthAndHeight(pageSize || 'A4');
+ if (isNeedSwapPageSizes(pageOrientation)) { // swap page sizes
+ size = { width: size.height, height: size.width };
+ }
+ size.orientation = size.width > size.height ? 'landscape' : 'portrait';
+ return size;
+}
+
+function fixPageMargins(margin) {
+ if (isNumber(margin)) {
+ margin = { left: margin, right: margin, top: margin, bottom: margin };
+ } else if (isArray(margin)) {
+ if (margin.length === 2) {
+ margin = { left: margin[0], top: margin[1], right: margin[0], bottom: margin[1] };
+ } else if (margin.length === 4) {
+ margin = { left: margin[0], top: margin[1], right: margin[2], bottom: margin[3] };
+ } else {
+ throw 'Invalid pageMargins definition';
+ }
+ }
+
+ return margin;
+}
+
+function registerDefaultTableLayouts(layoutBuilder) {
+ layoutBuilder.registerTableLayouts({
+ noBorders: {
+ hLineWidth: function (i) {
+ return 0;
+ },
+ vLineWidth: function (i) {
+ return 0;
+ },
+ paddingLeft: function (i) {
+ return i && 4 || 0;
+ },
+ paddingRight: function (i, node) {
+ return (i < node.table.widths.length - 1) ? 4 : 0;
+ }
+ },
+ headerLineOnly: {
+ hLineWidth: function (i, node) {
+ if (i === 0 || i === node.table.body.length) {
+ return 0;
+ }
+ return (i === node.table.headerRows) ? 2 : 0;
+ },
+ vLineWidth: function (i) {
+ return 0;
+ },
+ paddingLeft: function (i) {
+ return i === 0 ? 0 : 8;
+ },
+ paddingRight: function (i, node) {
+ return (i === node.table.widths.length - 1) ? 0 : 8;
+ }
+ },
+ lightHorizontalLines: {
+ hLineWidth: function (i, node) {
+ if (i === 0 || i === node.table.body.length) {
+ return 0;
+ }
+ return (i === node.table.headerRows) ? 2 : 1;
+ },
+ vLineWidth: function (i) {
+ return 0;
+ },
+ hLineColor: function (i) {
+ return i === 1 ? 'black' : '#aaa';
+ },
+ paddingLeft: function (i) {
+ return i === 0 ? 0 : 8;
+ },
+ paddingRight: function (i, node) {
+ return (i === node.table.widths.length - 1) ? 0 : 8;
+ }
+ }
+ });
+}
+
+function pageSize2widthAndHeight(pageSize) {
+ if (isString(pageSize)) {
+ var size = sizes[pageSize.toUpperCase()];
+ if (!size) {
+ throw 'Page size ' + pageSize + ' not recognized';
+ }
+ return { width: size[0], height: size[1] };
+ }
+
+ return pageSize;
+}
+
+function updatePageOrientationInOptions(currentPage, pdfKitDoc) {
+ var previousPageOrientation = pdfKitDoc.options.size[0] > pdfKitDoc.options.size[1] ? 'landscape' : 'portrait';
+
+ if (currentPage.pageSize.orientation !== previousPageOrientation) {
+ var width = pdfKitDoc.options.size[0];
+ var height = pdfKitDoc.options.size[1];
+ pdfKitDoc.options.size = [height, width];
+ }
+}
+
+function renderPages(pages, fontProvider, pdfKitDoc, progressCallback) {
+ pdfKitDoc._pdfMakePages = pages;
+ pdfKitDoc.addPage();
+
+ var totalItems = 0;
+ if (progressCallback) {
+ pages.forEach(function (page) {
+ totalItems += page.items.length;
+ });
+ }
+
+ var renderedItems = 0;
+ progressCallback = progressCallback || function () {
+ };
+
+ for (var i = 0; i < pages.length; i++) {
+ if (i > 0) {
+ updatePageOrientationInOptions(pages[i], pdfKitDoc);
+ pdfKitDoc.addPage(pdfKitDoc.options);
+ }
+
+ var page = pages[i];
+ for (var ii = 0, il = page.items.length; ii < il; ii++) {
+ var item = page.items[ii];
+ switch (item.type) {
+ case 'vector':
+ renderVector(item.item, pdfKitDoc);
+ break;
+ case 'line':
+ renderLine(item.item, item.item.x, item.item.y, pdfKitDoc);
+ break;
+ case 'image':
+ renderImage(item.item, item.item.x, item.item.y, pdfKitDoc);
+ break;
+ case 'svg':
+ renderSVG(item.item, item.item.x, item.item.y, pdfKitDoc, fontProvider);
+ break;
+ case 'beginClip':
+ beginClip(item.item, pdfKitDoc);
+ break;
+ case 'endClip':
+ endClip(pdfKitDoc);
+ break;
+ }
+ renderedItems++;
+ progressCallback(renderedItems / totalItems);
+ }
+ if (page.watermark) {
+ renderWatermark(page, pdfKitDoc);
+ }
+ }
+}
+
+/**
+ * Shift the "y" height of the text baseline up or down (superscript or subscript,
+ * respectively). The exact shift can / should be changed according to standard
+ * conventions.
+ *
+ * @param {number} y
+ * @param {any} inline
+ */
+function offsetText(y, inline) {
+ var newY = y;
+ if (inline.sup) {
+ newY -= inline.fontSize * 0.75;
+ }
+ if (inline.sub) {
+ newY += inline.fontSize * 0.35;
+ }
+ return newY;
+}
+
+function renderLine(line, x, y, pdfKitDoc) {
+ function preparePageNodeRefLine(_pageNodeRef, inline) {
+ var newWidth;
+ var diffWidth;
+ var textTools = new TextTools(null);
+
+ if (isUndefined(_pageNodeRef.positions)) {
+ throw 'Page reference id not found';
+ }
+
+ var pageNumber = _pageNodeRef.positions[0].pageNumber.toString();
+
+ inline.text = pageNumber;
+ newWidth = textTools.widthOfString(inline.text, inline.font, inline.fontSize, inline.characterSpacing, inline.fontFeatures);
+ diffWidth = inline.width - newWidth;
+ inline.width = newWidth;
+
+ switch (inline.alignment) {
+ case 'right':
+ inline.x += diffWidth;
+ break;
+ case 'center':
+ inline.x += diffWidth / 2;
+ break;
+ }
+ }
+
+ if (line._pageNodeRef) {
+ preparePageNodeRefLine(line._pageNodeRef, line.inlines[0]);
+ }
+
+ x = x || 0;
+ y = y || 0;
+
+ var lineHeight = line.getHeight();
+ var ascenderHeight = line.getAscenderHeight();
+ var descent = lineHeight - ascenderHeight;
+
+ textDecorator.drawBackground(line, x, y, pdfKitDoc);
+
+ //TODO: line.optimizeInlines();
+ for (var i = 0, l = line.inlines.length; i < l; i++) {
+ var inline = line.inlines[i];
+ var shiftToBaseline = lineHeight - ((inline.font.ascender / 1000) * inline.fontSize) - descent;
+
+ if (inline._pageNodeRef) {
+ preparePageNodeRefLine(inline._pageNodeRef, inline);
+ }
+
+ var options = {
+ lineBreak: false,
+ textWidth: inline.width,
+ characterSpacing: inline.characterSpacing,
+ wordCount: 1,
+ link: inline.link
+ };
+
+ if (inline.linkToDestination) {
+ options.goTo = inline.linkToDestination;
+ }
+
+ if (line.id && i === 0) {
+ options.destination = line.id;
+ }
+
+ if (inline.fontFeatures) {
+ options.features = inline.fontFeatures;
+ }
+
+ var opacity = isNumber(inline.opacity) ? inline.opacity : 1;
+ pdfKitDoc.opacity(opacity);
+ pdfKitDoc.fill(inline.color || 'black');
+
+ pdfKitDoc._font = inline.font;
+ pdfKitDoc.fontSize(inline.fontSize);
+
+ var shiftedY = offsetText(y + shiftToBaseline, inline);
+ pdfKitDoc.text(inline.text, x + inline.x, shiftedY, options);
+
+ if (inline.linkToPage) {
+ var _ref = pdfKitDoc.ref({ Type: 'Action', S: 'GoTo', D: [inline.linkToPage, 0, 0] }).end();
+ pdfKitDoc.annotate(x + inline.x, shiftedY, inline.width, inline.height, {
+ Subtype: 'Link',
+ Dest: [inline.linkToPage - 1, 'XYZ', null, null, null]
+ });
+ }
+
+ }
+ // Decorations won't draw correctly for superscript
+ textDecorator.drawDecorations(line, x, y, pdfKitDoc);
+}
+
+function renderWatermark(page, pdfKitDoc) {
+ var watermark = page.watermark;
+
+ pdfKitDoc.fill(watermark.color);
+ pdfKitDoc.opacity(watermark.opacity);
+
+ pdfKitDoc.save();
+
+ pdfKitDoc.rotate(watermark.angle, { origin: [pdfKitDoc.page.width / 2, pdfKitDoc.page.height / 2] });
+
+ var x = pdfKitDoc.page.width / 2 - watermark._size.size.width / 2;
+ var y = pdfKitDoc.page.height / 2 - watermark._size.size.height / 2;
+
+ pdfKitDoc._font = watermark.font;
+ pdfKitDoc.fontSize(watermark.fontSize);
+ pdfKitDoc.text(watermark.text, x, y, { lineBreak: false });
+
+ pdfKitDoc.restore();
+}
+
+function renderVector(vector, pdfKitDoc) {
+ //TODO: pdf optimization (there's no need to write all properties everytime)
+ pdfKitDoc.lineWidth(vector.lineWidth || 1);
+ if (vector.dash) {
+ pdfKitDoc.dash(vector.dash.length, { space: vector.dash.space || vector.dash.length, phase: vector.dash.phase || 0 });
+ } else {
+ pdfKitDoc.undash();
+ }
+ pdfKitDoc.lineJoin(vector.lineJoin || 'miter');
+ pdfKitDoc.lineCap(vector.lineCap || 'butt');
+
+ //TODO: clipping
+
+ var gradient = null;
+
+ switch (vector.type) {
+ case 'ellipse':
+ pdfKitDoc.ellipse(vector.x, vector.y, vector.r1, vector.r2);
+
+ if (vector.linearGradient) {
+ gradient = pdfKitDoc.linearGradient(vector.x - vector.r1, vector.y, vector.x + vector.r1, vector.y);
+ }
+ break;
+ case 'rect':
+ if (vector.r) {
+ pdfKitDoc.roundedRect(vector.x, vector.y, vector.w, vector.h, vector.r);
+ } else {
+ pdfKitDoc.rect(vector.x, vector.y, vector.w, vector.h);
+ }
+
+ if (vector.linearGradient) {
+ gradient = pdfKitDoc.linearGradient(vector.x, vector.y, vector.x + vector.w, vector.y);
+ }
+ break;
+ case 'line':
+ pdfKitDoc.moveTo(vector.x1, vector.y1);
+ pdfKitDoc.lineTo(vector.x2, vector.y2);
+ break;
+ case 'polyline':
+ if (vector.points.length === 0) {
+ break;
+ }
+
+ pdfKitDoc.moveTo(vector.points[0].x, vector.points[0].y);
+ for (var i = 1, l = vector.points.length; i < l; i++) {
+ pdfKitDoc.lineTo(vector.points[i].x, vector.points[i].y);
+ }
+
+ if (vector.points.length > 1) {
+ var p1 = vector.points[0];
+ var pn = vector.points[vector.points.length - 1];
+
+ if (vector.closePath || p1.x === pn.x && p1.y === pn.y) {
+ pdfKitDoc.closePath();
+ }
+ }
+ break;
+ case 'path':
+ pdfKitDoc.path(vector.d);
+ break;
+ }
+
+ if (vector.linearGradient && gradient) {
+ var step = 1 / (vector.linearGradient.length - 1);
+
+ for (var i = 0; i < vector.linearGradient.length; i++) {
+ gradient.stop(i * step, vector.linearGradient[i]);
+ }
+
+ vector.color = gradient;
+ }
+
+ var fillOpacity = isNumber(vector.fillOpacity) ? vector.fillOpacity : 1;
+ var strokeOpacity = isNumber(vector.strokeOpacity) ? vector.strokeOpacity : 1;
+
+ if (vector.color && vector.lineColor) {
+ pdfKitDoc.fillColor(vector.color, fillOpacity);
+ pdfKitDoc.strokeColor(vector.lineColor, strokeOpacity);
+ pdfKitDoc.fillAndStroke();
+ } else if (vector.color) {
+ pdfKitDoc.fillColor(vector.color, fillOpacity);
+ pdfKitDoc.fill();
+ } else {
+ pdfKitDoc.strokeColor(vector.lineColor || 'black', strokeOpacity);
+ pdfKitDoc.stroke();
+ }
+}
+
+function renderImage(image, x, y, pdfKitDoc) {
+ var opacity = isNumber(image.opacity) ? image.opacity : 1;
+ pdfKitDoc.opacity(opacity);
+ if (image.cover) {
+ var align = image.cover.align || 'center';
+ var valign = image.cover.valign || 'center';
+ var width = image.cover.width ? image.cover.width : image.width;
+ var height = image.cover.height ? image.cover.height : image.height;
+ pdfKitDoc.save();
+ pdfKitDoc.rect(image.x, image.y, width, height).clip();
+ pdfKitDoc.image(image.image, image.x, image.y, { cover: [width, height], align: align, valign: valign });
+ pdfKitDoc.restore();
+ } else {
+ pdfKitDoc.image(image.image, image.x, image.y, { width: image._width, height: image._height });
+ }
+ if (image.link) {
+ pdfKitDoc.link(image.x, image.y, image._width, image._height, image.link);
+ }
+ if (image.linkToPage) {
+ pdfKitDoc.ref({ Type: 'Action', S: 'GoTo', D: [image.linkToPage, 0, 0] }).end();
+ pdfKitDoc.annotate(image.x, image.y, image._width, image._height, { Subtype: 'Link', Dest: [image.linkToPage - 1, 'XYZ', null, null, null] });
+ }
+ if (image.linkToDestination) {
+ pdfKitDoc.goTo(image.x, image.y, image._width, image._height, image.linkToDestination);
+ }
+}
+
+function renderSVG(svg, x, y, pdfKitDoc, fontProvider) {
+ var options = Object.assign({ width: svg._width, height: svg._height, assumePt: true }, svg.options);
+ options.fontCallback = function (family, bold, italic) {
+ var fontsFamily = family.split(',').map(function (f) { return f.trim().replace(/('|")/g, ''); });
+ var font = findFont(fontProvider.fonts, fontsFamily, svg.font || 'Roboto');
+
+ var fontFile = fontProvider.getFontFile(font, bold, italic);
+ if (fontFile === null) {
+ var type = fontProvider.getFontType(bold, italic);
+ throw new Error('Font \'' + font + '\' in style \'' + type + '\' is not defined in the font section of the document definition.');
+ }
+
+ return fontFile;
+ };
+
+ getSvgToPDF()(pdfKitDoc, svg.svg, svg.x, svg.y, options);
+}
+
+function beginClip(rect, pdfKitDoc) {
+ pdfKitDoc.save();
+ pdfKitDoc.addContent('' + rect.x + ' ' + rect.y + ' ' + rect.width + ' ' + rect.height + ' re');
+ pdfKitDoc.clip();
+}
+
+function endClip(pdfKitDoc) {
+ pdfKitDoc.restore();
+}
+
+module.exports = PdfPrinter;
/***/ }),
-/* 220 */
+/* 308 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-function _interopDefault(ex) {
- return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex;
-}
-
-var PdfKit = _interopDefault(__webpack_require__(221));
-
-function getEngineInstance() {
- return PdfKit;
-}
-
-function createPdfDocument(options) {
- options = options || {};
- return new PdfKit(options);
-}
-
-module.exports = {
- getEngineInstance: getEngineInstance,
- createPdfDocument: createPdfDocument
-};
+
+
+function _interopDefault(ex) {
+ return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex;
+}
+
+var PdfKit = _interopDefault(__webpack_require__(309));
+
+function getEngineInstance() {
+ return PdfKit;
+}
+
+function createPdfDocument(options) {
+ options = options || {};
+ return new PdfKit(options);
+}
+
+module.exports = {
+ getEngineInstance: getEngineInstance,
+ createPdfDocument: createPdfDocument
+};
/***/ }),
-/* 221 */
+/* 309 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(Buffer, __dirname) {
+__webpack_require__(201);
+
+__webpack_require__(210);
+
+__webpack_require__(211);
+
+__webpack_require__(212);
+
+__webpack_require__(314);
+
+__webpack_require__(213);
+
+__webpack_require__(315);
+
+__webpack_require__(316);
+
+__webpack_require__(317);
+
+__webpack_require__(216);
+
+__webpack_require__(28);
+
+__webpack_require__(220);
+
+__webpack_require__(322);
+
+__webpack_require__(46);
+
+__webpack_require__(323);
+
+__webpack_require__(324);
+
+__webpack_require__(61);
+
+__webpack_require__(224);
+
+__webpack_require__(225);
+
+__webpack_require__(326);
+
+__webpack_require__(328);
+
+__webpack_require__(330);
+
+__webpack_require__(229);
+
+__webpack_require__(331);
+
+__webpack_require__(31);
+
+__webpack_require__(118);
+
+__webpack_require__(334);
+
+__webpack_require__(335);
+
+__webpack_require__(336);
+
+__webpack_require__(160);
+
+__webpack_require__(161);
+
+__webpack_require__(231);
+
+__webpack_require__(232);
+
+__webpack_require__(233);
+
+__webpack_require__(234);
+
+__webpack_require__(340);
+
+__webpack_require__(62);
+
+__webpack_require__(63);
+
+__webpack_require__(64);
+
+__webpack_require__(65);
+
+__webpack_require__(66);
+
+__webpack_require__(67);
+
+__webpack_require__(68);
+
+__webpack_require__(69);
+
+__webpack_require__(70);
+
+__webpack_require__(71);
+
+__webpack_require__(72);
+
+__webpack_require__(73);
+
+__webpack_require__(74);
+
+__webpack_require__(75);
+
+__webpack_require__(76);
+
+__webpack_require__(77);
+
+__webpack_require__(78);
+
+__webpack_require__(79);
+
+__webpack_require__(80);
+
+__webpack_require__(81);
+
+__webpack_require__(82);
+
+__webpack_require__(83);
+
+__webpack_require__(84);
+
+__webpack_require__(85);
+
+__webpack_require__(346);
+
+__webpack_require__(120);
+
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
-__webpack_require__(222);
+var _stream = _interopRequireDefault(__webpack_require__(121));
-__webpack_require__(137);
+var _zlib = _interopRequireDefault(__webpack_require__(245));
-__webpack_require__(224);
+var _cryptoJs = _interopRequireDefault(__webpack_require__(368));
-__webpack_require__(139);
+var _fontkit = _interopRequireDefault(__webpack_require__(392));
-__webpack_require__(44);
+var _events = __webpack_require__(122);
-__webpack_require__(152);
+var _linebreak = _interopRequireDefault(__webpack_require__(290));
-__webpack_require__(92);
-
-__webpack_require__(153);
-
-__webpack_require__(155);
-
-__webpack_require__(240);
-
-__webpack_require__(157);
-
-__webpack_require__(158);
-
-__webpack_require__(243);
-
-__webpack_require__(244);
-
-__webpack_require__(159);
-
-__webpack_require__(66);
-
-__webpack_require__(160);
-
-__webpack_require__(246);
-
-__webpack_require__(247);
-
-__webpack_require__(250);
-
-__webpack_require__(161);
-
-__webpack_require__(162);
-
-__webpack_require__(165);
-
-__webpack_require__(99);
-
-__webpack_require__(255);
-
-var _stream = _interopRequireDefault(__webpack_require__(100));
-
-var _zlib = _interopRequireDefault(__webpack_require__(170));
-
-var _cryptoJs = _interopRequireDefault(__webpack_require__(277));
-
-var _fontkit = _interopRequireDefault(__webpack_require__(301));
-
-var _events = __webpack_require__(68);
-
-var _linebreak = _interopRequireDefault(__webpack_require__(209));
-
-var _pngJs = _interopRequireDefault(__webpack_require__(443));
+var _pngJs = _interopRequireDefault(__webpack_require__(538));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-var fs = __webpack_require__(84);
+var fs = __webpack_require__(53);
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
@@ -26312,545 +29763,905 @@ mixin(OutlineMixin);
mixin(AcroFormMixin);
var _default = PDFDocument;
exports.default = _default;
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer, "/"))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer, "/"))
/***/ }),
-/* 222 */
+/* 310 */
/***/ (function(module, exports, __webpack_require__) {
-"use strict";
+var global = __webpack_require__(3);
+var inspectSource = __webpack_require__(140);
-// B.2.3.12 String.prototype.strike()
-__webpack_require__(133)('strike', function (createHTML) {
- return function strike() {
- return createHTML(this, 'strike', '', '');
- };
-});
+var WeakMap = global.WeakMap;
+
+module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
/***/ }),
-/* 223 */
+/* 311 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(61)('native-function-to-string', Function.toString);
+var getBuiltIn = __webpack_require__(34);
+var getOwnPropertyNamesModule = __webpack_require__(57);
+var getOwnPropertySymbolsModule = __webpack_require__(144);
+var anObject = __webpack_require__(11);
+
+// all object keys, includes non-enumerable and symbols
+module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
+ var keys = getOwnPropertyNamesModule.f(anObject(it));
+ var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
+ return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
+};
/***/ }),
-/* 224 */
+/* 312 */
/***/ (function(module, exports, __webpack_require__) {
-// 19.1.3.1 Object.assign(target, source)
-var $export = __webpack_require__(5);
+var DESCRIPTORS = __webpack_require__(13);
+var definePropertyModule = __webpack_require__(16);
+var anObject = __webpack_require__(11);
+var objectKeys = __webpack_require__(94);
-$export($export.S + $export.F, 'Object', { assign: __webpack_require__(225) });
-
-
-/***/ }),
-/* 225 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-// 19.1.2.1 Object.assign(target, source, ...)
-var DESCRIPTORS = __webpack_require__(9);
-var getKeys = __webpack_require__(42);
-var gOPS = __webpack_require__(89);
-var pIE = __webpack_require__(62);
-var toObject = __webpack_require__(19);
-var IObject = __webpack_require__(85);
-var $assign = Object.assign;
-
-// should work with symbols and should have deterministic property order (V8 bug)
-module.exports = !$assign || __webpack_require__(10)(function () {
- var A = {};
- var B = {};
- // eslint-disable-next-line no-undef
- var S = Symbol();
- var K = 'abcdefghijklmnopqrst';
- A[S] = 7;
- K.split('').forEach(function (k) { B[k] = k; });
- return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
-}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
- var T = toObject(target);
- var aLen = arguments.length;
- var index = 1;
- var getSymbols = gOPS.f;
- var isEnum = pIE.f;
- while (aLen > index) {
- var S = IObject(arguments[index++]);
- var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
- var length = keys.length;
- var j = 0;
- var key;
- while (length > j) {
- key = keys[j++];
- if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
- }
- } return T;
-} : $assign;
-
-
-/***/ }),
-/* 226 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var global = __webpack_require__(8);
-var DESCRIPTORS = __webpack_require__(9);
-var LIBRARY = __webpack_require__(41);
-var $typed = __webpack_require__(141);
-var hide = __webpack_require__(15);
-var redefineAll = __webpack_require__(142);
-var fails = __webpack_require__(10);
-var anInstance = __webpack_require__(143);
-var toInteger = __webpack_require__(31);
-var toLength = __webpack_require__(16);
-var toIndex = __webpack_require__(144);
-var gOPN = __webpack_require__(55).f;
-var dP = __webpack_require__(11).f;
-var arrayFill = __webpack_require__(90);
-var setToStringTag = __webpack_require__(63);
-var ARRAY_BUFFER = 'ArrayBuffer';
-var DATA_VIEW = 'DataView';
-var PROTOTYPE = 'prototype';
-var WRONG_LENGTH = 'Wrong length!';
-var WRONG_INDEX = 'Wrong index!';
-var $ArrayBuffer = global[ARRAY_BUFFER];
-var $DataView = global[DATA_VIEW];
-var Math = global.Math;
-var RangeError = global.RangeError;
-// eslint-disable-next-line no-shadow-restricted-names
-var Infinity = global.Infinity;
-var BaseBuffer = $ArrayBuffer;
-var abs = Math.abs;
-var pow = Math.pow;
-var floor = Math.floor;
-var log = Math.log;
-var LN2 = Math.LN2;
-var BUFFER = 'buffer';
-var BYTE_LENGTH = 'byteLength';
-var BYTE_OFFSET = 'byteOffset';
-var $BUFFER = DESCRIPTORS ? '_b' : BUFFER;
-var $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH;
-var $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;
-
-// IEEE754 conversions based on https://github.com/feross/ieee754
-function packIEEE754(value, mLen, nBytes) {
- var buffer = new Array(nBytes);
- var eLen = nBytes * 8 - mLen - 1;
- var eMax = (1 << eLen) - 1;
- var eBias = eMax >> 1;
- var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0;
- var i = 0;
- var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;
- var e, m, c;
- value = abs(value);
- // eslint-disable-next-line no-self-compare
- if (value != value || value === Infinity) {
- // eslint-disable-next-line no-self-compare
- m = value != value ? 1 : 0;
- e = eMax;
- } else {
- e = floor(log(value) / LN2);
- if (value * (c = pow(2, -e)) < 1) {
- e--;
- c *= 2;
- }
- if (e + eBias >= 1) {
- value += rt / c;
- } else {
- value += rt * 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) * pow(2, mLen);
- e = e + eBias;
- } else {
- m = value * pow(2, eBias - 1) * pow(2, mLen);
- e = 0;
- }
- }
- for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);
- e = e << mLen | m;
- eLen += mLen;
- for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);
- buffer[--i] |= s * 128;
- return buffer;
-}
-function unpackIEEE754(buffer, mLen, nBytes) {
- var eLen = nBytes * 8 - mLen - 1;
- var eMax = (1 << eLen) - 1;
- var eBias = eMax >> 1;
- var nBits = eLen - 7;
- var i = nBytes - 1;
- var s = buffer[i--];
- var e = s & 127;
- var m;
- s >>= 7;
- for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);
- m = e & (1 << -nBits) - 1;
- e >>= -nBits;
- nBits += mLen;
- for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);
- if (e === 0) {
- e = 1 - eBias;
- } else if (e === eMax) {
- return m ? NaN : s ? -Infinity : Infinity;
- } else {
- m = m + pow(2, mLen);
- e = e - eBias;
- } return (s ? -1 : 1) * m * pow(2, e - mLen);
-}
-
-function unpackI32(bytes) {
- return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];
-}
-function packI8(it) {
- return [it & 0xff];
-}
-function packI16(it) {
- return [it & 0xff, it >> 8 & 0xff];
-}
-function packI32(it) {
- return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];
-}
-function packF64(it) {
- return packIEEE754(it, 52, 8);
-}
-function packF32(it) {
- return packIEEE754(it, 23, 4);
-}
-
-function addGetter(C, key, internal) {
- dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } });
-}
-
-function get(view, bytes, index, isLittleEndian) {
- var numIndex = +index;
- var intIndex = toIndex(numIndex);
- if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);
- var store = view[$BUFFER]._b;
- var start = intIndex + view[$OFFSET];
- var pack = store.slice(start, start + bytes);
- return isLittleEndian ? pack : pack.reverse();
-}
-function set(view, bytes, index, conversion, value, isLittleEndian) {
- var numIndex = +index;
- var intIndex = toIndex(numIndex);
- if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);
- var store = view[$BUFFER]._b;
- var start = intIndex + view[$OFFSET];
- var pack = conversion(+value);
- for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];
-}
-
-if (!$typed.ABV) {
- $ArrayBuffer = function ArrayBuffer(length) {
- anInstance(this, $ArrayBuffer, ARRAY_BUFFER);
- var byteLength = toIndex(length);
- this._b = arrayFill.call(new Array(byteLength), 0);
- this[$LENGTH] = byteLength;
- };
-
- $DataView = function DataView(buffer, byteOffset, byteLength) {
- anInstance(this, $DataView, DATA_VIEW);
- anInstance(buffer, $ArrayBuffer, DATA_VIEW);
- var bufferLength = buffer[$LENGTH];
- var offset = toInteger(byteOffset);
- if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!');
- byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
- if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);
- this[$BUFFER] = buffer;
- this[$OFFSET] = offset;
- this[$LENGTH] = byteLength;
- };
-
- if (DESCRIPTORS) {
- addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
- addGetter($DataView, BUFFER, '_b');
- addGetter($DataView, BYTE_LENGTH, '_l');
- addGetter($DataView, BYTE_OFFSET, '_o');
- }
-
- redefineAll($DataView[PROTOTYPE], {
- getInt8: function getInt8(byteOffset) {
- return get(this, 1, byteOffset)[0] << 24 >> 24;
- },
- getUint8: function getUint8(byteOffset) {
- return get(this, 1, byteOffset)[0];
- },
- getInt16: function getInt16(byteOffset /* , littleEndian */) {
- var bytes = get(this, 2, byteOffset, arguments[1]);
- return (bytes[1] << 8 | bytes[0]) << 16 >> 16;
- },
- getUint16: function getUint16(byteOffset /* , littleEndian */) {
- var bytes = get(this, 2, byteOffset, arguments[1]);
- return bytes[1] << 8 | bytes[0];
- },
- getInt32: function getInt32(byteOffset /* , littleEndian */) {
- return unpackI32(get(this, 4, byteOffset, arguments[1]));
- },
- getUint32: function getUint32(byteOffset /* , littleEndian */) {
- return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;
- },
- getFloat32: function getFloat32(byteOffset /* , littleEndian */) {
- return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);
- },
- getFloat64: function getFloat64(byteOffset /* , littleEndian */) {
- return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);
- },
- setInt8: function setInt8(byteOffset, value) {
- set(this, 1, byteOffset, packI8, value);
- },
- setUint8: function setUint8(byteOffset, value) {
- set(this, 1, byteOffset, packI8, value);
- },
- setInt16: function setInt16(byteOffset, value /* , littleEndian */) {
- set(this, 2, byteOffset, packI16, value, arguments[2]);
- },
- setUint16: function setUint16(byteOffset, value /* , littleEndian */) {
- set(this, 2, byteOffset, packI16, value, arguments[2]);
- },
- setInt32: function setInt32(byteOffset, value /* , littleEndian */) {
- set(this, 4, byteOffset, packI32, value, arguments[2]);
- },
- setUint32: function setUint32(byteOffset, value /* , littleEndian */) {
- set(this, 4, byteOffset, packI32, value, arguments[2]);
- },
- setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {
- set(this, 4, byteOffset, packF32, value, arguments[2]);
- },
- setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {
- set(this, 8, byteOffset, packF64, value, arguments[2]);
- }
- });
-} else {
- if (!fails(function () {
- $ArrayBuffer(1);
- }) || !fails(function () {
- new $ArrayBuffer(-1); // eslint-disable-line no-new
- }) || fails(function () {
- new $ArrayBuffer(); // eslint-disable-line no-new
- new $ArrayBuffer(1.5); // eslint-disable-line no-new
- new $ArrayBuffer(NaN); // eslint-disable-line no-new
- return $ArrayBuffer.name != ARRAY_BUFFER;
- })) {
- $ArrayBuffer = function ArrayBuffer(length) {
- anInstance(this, $ArrayBuffer);
- return new BaseBuffer(toIndex(length));
- };
- var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];
- for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) {
- if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]);
- }
- if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer;
- }
- // iOS Safari 7.x bug
- var view = new $DataView(new $ArrayBuffer(2));
- var $setInt8 = $DataView[PROTOTYPE].setInt8;
- view.setInt8(0, 2147483648);
- view.setInt8(1, 2147483649);
- if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], {
- setInt8: function setInt8(byteOffset, value) {
- $setInt8.call(this, byteOffset, value << 24 >> 24);
- },
- setUint8: function setUint8(byteOffset, value) {
- $setInt8.call(this, byteOffset, value << 24 >> 24);
- }
- }, true);
-}
-setToStringTag($ArrayBuffer, ARRAY_BUFFER);
-setToStringTag($DataView, DATA_VIEW);
-hide($DataView[PROTOTYPE], $typed.VIEW, true);
-exports[ARRAY_BUFFER] = $ArrayBuffer;
-exports[DATA_VIEW] = $DataView;
-
-
-/***/ }),
-/* 227 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var dP = __webpack_require__(11);
-var anObject = __webpack_require__(12);
-var getKeys = __webpack_require__(42);
-
-module.exports = __webpack_require__(9) ? Object.defineProperties : function defineProperties(O, Properties) {
+// `Object.defineProperties` method
+// https://tc39.es/ecma262/#sec-object.defineproperties
+module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
anObject(O);
- var keys = getKeys(Properties);
+ var keys = objectKeys(Properties);
var length = keys.length;
- var i = 0;
- var P;
- while (length > i) dP.f(O, P = keys[i++], Properties[P]);
+ var index = 0;
+ var key;
+ while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);
return O;
};
/***/ }),
-/* 228 */
+/* 313 */
/***/ (function(module, exports, __webpack_require__) {
-var document = __webpack_require__(8).document;
-module.exports = document && document.documentElement;
+var toIndexedObject = __webpack_require__(27);
+var nativeGetOwnPropertyNames = __webpack_require__(57).f;
+
+var toString = {}.toString;
+
+var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function (it) {
+ try {
+ return nativeGetOwnPropertyNames(it);
+ } catch (error) {
+ return windowNames.slice();
+ }
+};
+
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+module.exports.f = function getOwnPropertyNames(it) {
+ return windowNames && toString.call(it) == '[object Window]'
+ ? getWindowNames(it)
+ : nativeGetOwnPropertyNames(toIndexedObject(it));
+};
/***/ }),
-/* 229 */
+/* 314 */
/***/ (function(module, exports, __webpack_require__) {
-// 0 -> Array#forEach
-// 1 -> Array#map
-// 2 -> Array#filter
-// 3 -> Array#some
-// 4 -> Array#every
-// 5 -> Array#find
-// 6 -> Array#findIndex
-var ctx = __webpack_require__(52);
-var IObject = __webpack_require__(85);
+"use strict";
+
+var $ = __webpack_require__(1);
+var $every = __webpack_require__(20).every;
+var arrayMethodIsStrict = __webpack_require__(59);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var STRICT_METHOD = arrayMethodIsStrict('every');
+var USES_TO_LENGTH = arrayMethodUsesToLength('every');
+
+// `Array.prototype.every` method
+// https://tc39.es/ecma262/#sec-array.prototype.every
+$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {
+ every: function every(callbackfn /* , thisArg */) {
+ return $every(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+
+/***/ }),
+/* 315 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var $filter = __webpack_require__(20).filter;
+var arrayMethodHasSpeciesSupport = __webpack_require__(116);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');
+// Edge 14- issue
+var USES_TO_LENGTH = arrayMethodUsesToLength('filter');
+
+// `Array.prototype.filter` method
+// https://tc39.es/ecma262/#sec-array.prototype.filter
+// with adding support of @@species
+$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
+ filter: function filter(callbackfn /* , thisArg */) {
+ return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+
+/***/ }),
+/* 316 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var forEach = __webpack_require__(214);
+
+// `Array.prototype.forEach` method
+// https://tc39.es/ecma262/#sec-array.prototype.foreach
+$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {
+ forEach: forEach
+});
+
+
+/***/ }),
+/* 317 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var $ = __webpack_require__(1);
+var from = __webpack_require__(318);
+var checkCorrectnessOfIteration = __webpack_require__(155);
+
+var INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {
+ Array.from(iterable);
+});
+
+// `Array.from` method
+// https://tc39.es/ecma262/#sec-array.from
+$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {
+ from: from
+});
+
+
+/***/ }),
+/* 318 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var bind = __webpack_require__(96);
var toObject = __webpack_require__(19);
-var toLength = __webpack_require__(16);
-var asc = __webpack_require__(230);
-module.exports = function (TYPE, $create) {
- var IS_MAP = TYPE == 1;
- var IS_FILTER = TYPE == 2;
- var IS_SOME = TYPE == 3;
- var IS_EVERY = TYPE == 4;
- var IS_FIND_INDEX = TYPE == 6;
- var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
- var create = $create || asc;
- return function ($this, callbackfn, that) {
- var O = toObject($this);
- var self = IObject(O);
- var f = ctx(callbackfn, that, 3);
- var length = toLength(self.length);
- var index = 0;
- var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
- var val, res;
- for (;length > index; index++) if (NO_HOLES || index in self) {
- val = self[index];
- res = f(val, index, O);
- if (TYPE) {
- if (IS_MAP) result[index] = res; // map
- else if (res) switch (TYPE) {
- case 3: return true; // some
- case 5: return val; // find
- case 6: return index; // findIndex
- case 2: result.push(val); // filter
- } else if (IS_EVERY) return false; // every
- }
+var callWithSafeIterationClosing = __webpack_require__(319);
+var isArrayIteratorMethod = __webpack_require__(152);
+var toLength = __webpack_require__(8);
+var createProperty = __webpack_require__(147);
+var getIteratorMethod = __webpack_require__(153);
+
+// `Array.from` method implementation
+// https://tc39.es/ecma262/#sec-array.from
+module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
+ var O = toObject(arrayLike);
+ var C = typeof this == 'function' ? this : Array;
+ var argumentsLength = arguments.length;
+ var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
+ var mapping = mapfn !== undefined;
+ var iteratorMethod = getIteratorMethod(O);
+ var index = 0;
+ var length, result, step, iterator, next, value;
+ if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);
+ // if the target is not iterable or it's an array with the default iterator - use a simple case
+ if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {
+ iterator = iteratorMethod.call(O);
+ next = iterator.next;
+ result = new C();
+ for (;!(step = next.call(iterator)).done; index++) {
+ value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;
+ createProperty(result, index, value);
}
- return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
- };
+ } else {
+ length = toLength(O.length);
+ result = new C(length);
+ for (;length > index; index++) {
+ value = mapping ? mapfn(O[index], index) : O[index];
+ createProperty(result, index, value);
+ }
+ }
+ result.length = index;
+ return result;
};
/***/ }),
-/* 230 */
+/* 319 */
/***/ (function(module, exports, __webpack_require__) {
-// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
-var speciesConstructor = __webpack_require__(231);
+var anObject = __webpack_require__(11);
+var iteratorClose = __webpack_require__(215);
-module.exports = function (original, length) {
- return new (speciesConstructor(original))(length);
+// call something on iterator step with safe closing on error
+module.exports = function (iterator, fn, value, ENTRIES) {
+ try {
+ return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);
+ // 7.4.6 IteratorClose(iterator, completion)
+ } catch (error) {
+ iteratorClose(iterator);
+ throw error;
+ }
};
/***/ }),
-/* 231 */
+/* 320 */
/***/ (function(module, exports, __webpack_require__) {
-var isObject = __webpack_require__(18);
-var isArray = __webpack_require__(148);
-var SPECIES = __webpack_require__(3)('species');
+"use strict";
-module.exports = function (original) {
- var C;
- if (isArray(original)) {
- C = original.constructor;
- // cross-realm fallback
- if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
- if (isObject(C)) {
- C = C[SPECIES];
- if (C === null) C = undefined;
- }
- } return C === undefined ? Array : C;
+var IteratorPrototype = __webpack_require__(218).IteratorPrototype;
+var create = __webpack_require__(58);
+var createPropertyDescriptor = __webpack_require__(40);
+var setToStringTag = __webpack_require__(95);
+var Iterators = __webpack_require__(97);
+
+var returnThis = function () { return this; };
+
+module.exports = function (IteratorConstructor, NAME, next) {
+ var TO_STRING_TAG = NAME + ' Iterator';
+ IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });
+ setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
+ Iterators[TO_STRING_TAG] = returnThis;
+ return IteratorConstructor;
};
/***/ }),
-/* 232 */
+/* 321 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(14);
+
+module.exports = function (it) {
+ if (!isObject(it) && it !== null) {
+ throw TypeError("Can't set " + String(it) + ' as a prototype');
+ } return it;
+};
+
+
+/***/ }),
+/* 322 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var $map = __webpack_require__(20).map;
+var arrayMethodHasSpeciesSupport = __webpack_require__(116);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');
+// FF49- issue
+var USES_TO_LENGTH = arrayMethodUsesToLength('map');
+
+// `Array.prototype.map` method
+// https://tc39.es/ecma262/#sec-array.prototype.map
+// with adding support of @@species
+$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
+ map: function map(callbackfn /* , thisArg */) {
+ return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+
+/***/ }),
+/* 323 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var $some = __webpack_require__(20).some;
+var arrayMethodIsStrict = __webpack_require__(59);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var STRICT_METHOD = arrayMethodIsStrict('some');
+var USES_TO_LENGTH = arrayMethodUsesToLength('some');
+
+// `Array.prototype.some` method
+// https://tc39.es/ecma262/#sec-array.prototype.some
+$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {
+ some: function some(callbackfn /* , thisArg */) {
+ return $some(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+
+/***/ }),
+/* 324 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var global = __webpack_require__(3);
+var arrayBufferModule = __webpack_require__(156);
+var setSpecies = __webpack_require__(158);
+
+var ARRAY_BUFFER = 'ArrayBuffer';
+var ArrayBuffer = arrayBufferModule[ARRAY_BUFFER];
+var NativeArrayBuffer = global[ARRAY_BUFFER];
+
+// `ArrayBuffer` constructor
+// https://tc39.es/ecma262/#sec-arraybuffer-constructor
+$({ global: true, forced: NativeArrayBuffer !== ArrayBuffer }, {
+ ArrayBuffer: ArrayBuffer
+});
+
+setSpecies(ARRAY_BUFFER);
+
+
+/***/ }),
+/* 325 */
/***/ (function(module, exports) {
-module.exports = function (done, value) {
- return { value: value, done: !!done };
+// IEEE754 conversions based on https://github.com/feross/ieee754
+// eslint-disable-next-line no-shadow-restricted-names
+var Infinity = 1 / 0;
+var abs = Math.abs;
+var pow = Math.pow;
+var floor = Math.floor;
+var log = Math.log;
+var LN2 = Math.LN2;
+
+var pack = function (number, mantissaLength, bytes) {
+ var buffer = new Array(bytes);
+ var exponentLength = bytes * 8 - mantissaLength - 1;
+ var eMax = (1 << exponentLength) - 1;
+ var eBias = eMax >> 1;
+ var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0;
+ var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0;
+ var index = 0;
+ var exponent, mantissa, c;
+ number = abs(number);
+ // eslint-disable-next-line no-self-compare
+ if (number != number || number === Infinity) {
+ // eslint-disable-next-line no-self-compare
+ mantissa = number != number ? 1 : 0;
+ exponent = eMax;
+ } else {
+ exponent = floor(log(number) / LN2);
+ if (number * (c = pow(2, -exponent)) < 1) {
+ exponent--;
+ c *= 2;
+ }
+ if (exponent + eBias >= 1) {
+ number += rt / c;
+ } else {
+ number += rt * pow(2, 1 - eBias);
+ }
+ if (number * c >= 2) {
+ exponent++;
+ c /= 2;
+ }
+ if (exponent + eBias >= eMax) {
+ mantissa = 0;
+ exponent = eMax;
+ } else if (exponent + eBias >= 1) {
+ mantissa = (number * c - 1) * pow(2, mantissaLength);
+ exponent = exponent + eBias;
+ } else {
+ mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength);
+ exponent = 0;
+ }
+ }
+ for (; mantissaLength >= 8; buffer[index++] = mantissa & 255, mantissa /= 256, mantissaLength -= 8);
+ exponent = exponent << mantissaLength | mantissa;
+ exponentLength += mantissaLength;
+ for (; exponentLength > 0; buffer[index++] = exponent & 255, exponent /= 256, exponentLength -= 8);
+ buffer[--index] |= sign * 128;
+ return buffer;
+};
+
+var unpack = function (buffer, mantissaLength) {
+ var bytes = buffer.length;
+ var exponentLength = bytes * 8 - mantissaLength - 1;
+ var eMax = (1 << exponentLength) - 1;
+ var eBias = eMax >> 1;
+ var nBits = exponentLength - 7;
+ var index = bytes - 1;
+ var sign = buffer[index--];
+ var exponent = sign & 127;
+ var mantissa;
+ sign >>= 7;
+ for (; nBits > 0; exponent = exponent * 256 + buffer[index], index--, nBits -= 8);
+ mantissa = exponent & (1 << -nBits) - 1;
+ exponent >>= -nBits;
+ nBits += mantissaLength;
+ for (; nBits > 0; mantissa = mantissa * 256 + buffer[index], index--, nBits -= 8);
+ if (exponent === 0) {
+ exponent = 1 - eBias;
+ } else if (exponent === eMax) {
+ return mantissa ? NaN : sign ? -Infinity : Infinity;
+ } else {
+ mantissa = mantissa + pow(2, mantissaLength);
+ exponent = exponent - eBias;
+ } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength);
+};
+
+module.exports = {
+ pack: pack,
+ unpack: unpack
};
/***/ }),
-/* 233 */
+/* 326 */
/***/ (function(module, exports, __webpack_require__) {
-"use strict";
+var $ = __webpack_require__(1);
+var numberIsFinite = __webpack_require__(327);
-var create = __webpack_require__(65);
-var descriptor = __webpack_require__(40);
-var setToStringTag = __webpack_require__(63);
-var IteratorPrototype = {};
+// `Number.isFinite` method
+// https://tc39.es/ecma262/#sec-number.isfinite
+$({ target: 'Number', stat: true }, { isFinite: numberIsFinite });
-// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
-__webpack_require__(15)(IteratorPrototype, __webpack_require__(3)('iterator'), function () { return this; });
-module.exports = function (Constructor, NAME, next) {
- Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
- setToStringTag(Constructor, NAME + ' Iterator');
+/***/ }),
+/* 327 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(3);
+
+var globalIsFinite = global.isFinite;
+
+// `Number.isFinite` method
+// https://tc39.es/ecma262/#sec-number.isfinite
+module.exports = Number.isFinite || function isFinite(it) {
+ return typeof it == 'number' && globalIsFinite(it);
};
/***/ }),
-/* 234 */
+/* 328 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var $ = __webpack_require__(1);
+var assign = __webpack_require__(329);
+
+// `Object.assign` method
+// https://tc39.es/ecma262/#sec-object.assign
+$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {
+ assign: assign
+});
+
+
+/***/ }),
+/* 329 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(8);
-var dP = __webpack_require__(11);
-var DESCRIPTORS = __webpack_require__(9);
-var SPECIES = __webpack_require__(3)('species');
+var DESCRIPTORS = __webpack_require__(13);
+var fails = __webpack_require__(4);
+var objectKeys = __webpack_require__(94);
+var getOwnPropertySymbolsModule = __webpack_require__(144);
+var propertyIsEnumerableModule = __webpack_require__(110);
+var toObject = __webpack_require__(19);
+var IndexedObject = __webpack_require__(92);
-module.exports = function (KEY) {
- var C = global[KEY];
- if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
- configurable: true,
- get: function () { return this; }
+var nativeAssign = Object.assign;
+var defineProperty = Object.defineProperty;
+
+// `Object.assign` method
+// https://tc39.es/ecma262/#sec-object.assign
+module.exports = !nativeAssign || fails(function () {
+ // should have correct order of operations (Edge bug)
+ if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {
+ enumerable: true,
+ get: function () {
+ defineProperty(this, 'b', {
+ value: 3,
+ enumerable: false
+ });
+ }
+ }), { b: 2 })).b !== 1) return true;
+ // should work with symbols and should have deterministic property order (V8 bug)
+ var A = {};
+ var B = {};
+ // eslint-disable-next-line no-undef
+ var symbol = Symbol();
+ var alphabet = 'abcdefghijklmnopqrst';
+ A[symbol] = 7;
+ alphabet.split('').forEach(function (chr) { B[chr] = chr; });
+ return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
+}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
+ var T = toObject(target);
+ var argumentsLength = arguments.length;
+ var index = 1;
+ var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
+ var propertyIsEnumerable = propertyIsEnumerableModule.f;
+ while (argumentsLength > index) {
+ var S = IndexedObject(arguments[index++]);
+ var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);
+ var length = keys.length;
+ var j = 0;
+ var key;
+ while (length > j) {
+ key = keys[j++];
+ if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];
+ }
+ } return T;
+} : nativeAssign;
+
+
+/***/ }),
+/* 330 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var $ = __webpack_require__(1);
+var fails = __webpack_require__(4);
+var toObject = __webpack_require__(19);
+var nativeGetPrototypeOf = __webpack_require__(60);
+var CORRECT_PROTOTYPE_GETTER = __webpack_require__(219);
+
+var FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); });
+
+// `Object.getPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.getprototypeof
+$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, {
+ getPrototypeOf: function getPrototypeOf(it) {
+ return nativeGetPrototypeOf(toObject(it));
+ }
+});
+
+
+
+/***/ }),
+/* 331 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var $ = __webpack_require__(1);
+var setPrototypeOf = __webpack_require__(45);
+
+// `Object.setPrototypeOf` method
+// https://tc39.es/ecma262/#sec-object.setprototypeof
+$({ target: 'Object', stat: true }, {
+ setPrototypeOf: setPrototypeOf
+});
+
+
+/***/ }),
+/* 332 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var TO_STRING_TAG_SUPPORT = __webpack_require__(154);
+var classof = __webpack_require__(117);
+
+// `Object.prototype.toString` method implementation
+// https://tc39.es/ecma262/#sec-object.prototype.tostring
+module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
+ return '[object ' + classof(this) + ']';
+};
+
+
+/***/ }),
+/* 333 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var fails = __webpack_require__(4);
+
+// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
+// so we use an intermediate function.
+function RE(s, f) {
+ return RegExp(s, f);
+}
+
+exports.UNSUPPORTED_Y = fails(function () {
+ // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
+ var re = RE('a', 'y');
+ re.lastIndex = 2;
+ return re.exec('abcd') != null;
+});
+
+exports.BROKEN_CARET = fails(function () {
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
+ var re = RE('^r', 'gy');
+ re.lastIndex = 2;
+ return re.exec('str') != null;
+});
+
+
+/***/ }),
+/* 334 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var redefine = __webpack_require__(25);
+var anObject = __webpack_require__(11);
+var fails = __webpack_require__(4);
+var flags = __webpack_require__(230);
+
+var TO_STRING = 'toString';
+var RegExpPrototype = RegExp.prototype;
+var nativeToString = RegExpPrototype[TO_STRING];
+
+var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
+// FF44- RegExp#toString has a wrong name
+var INCORRECT_NAME = nativeToString.name != TO_STRING;
+
+// `RegExp.prototype.toString` method
+// https://tc39.es/ecma262/#sec-regexp.prototype.tostring
+if (NOT_GENERIC || INCORRECT_NAME) {
+ redefine(RegExp.prototype, TO_STRING, function toString() {
+ var R = anObject(this);
+ var p = String(R.source);
+ var rf = R.flags;
+ var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);
+ return '/' + p + '/' + f;
+ }, { unsafe: true });
+}
+
+
+/***/ }),
+/* 335 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $ = __webpack_require__(1);
+var codeAt = __webpack_require__(159).codeAt;
+
+// `String.prototype.codePointAt` method
+// https://tc39.es/ecma262/#sec-string.prototype.codepointat
+$({ target: 'String', proto: true }, {
+ codePointAt: function codePointAt(pos) {
+ return codeAt(this, pos);
+ }
+});
+
+
+/***/ }),
+/* 336 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var $ = __webpack_require__(1);
+var toAbsoluteIndex = __webpack_require__(43);
+
+var fromCharCode = String.fromCharCode;
+var nativeFromCodePoint = String.fromCodePoint;
+
+// length should be 1, old FF problem
+var INCORRECT_LENGTH = !!nativeFromCodePoint && nativeFromCodePoint.length != 1;
+
+// `String.fromCodePoint` method
+// https://tc39.es/ecma262/#sec-string.fromcodepoint
+$({ target: 'String', stat: true, forced: INCORRECT_LENGTH }, {
+ fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars
+ var elements = [];
+ var length = arguments.length;
+ var i = 0;
+ var code;
+ while (length > i) {
+ code = +arguments[i++];
+ if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw RangeError(code + ' is not a valid code point');
+ elements.push(code < 0x10000
+ ? fromCharCode(code)
+ : fromCharCode(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00)
+ );
+ } return elements.join('');
+ }
+});
+
+
+/***/ }),
+/* 337 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toObject = __webpack_require__(19);
+
+var floor = Math.floor;
+var replace = ''.replace;
+var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d\d?|<[^>]*>)/g;
+var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d\d?)/g;
+
+// https://tc39.es/ecma262/#sec-getsubstitution
+module.exports = function (matched, str, position, captures, namedCaptures, replacement) {
+ var tailPos = position + matched.length;
+ var m = captures.length;
+ var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
+ if (namedCaptures !== undefined) {
+ namedCaptures = toObject(namedCaptures);
+ symbols = SUBSTITUTION_SYMBOLS;
+ }
+ return replace.call(replacement, symbols, function (match, ch) {
+ var capture;
+ switch (ch.charAt(0)) {
+ case '$': return '$';
+ case '&': return matched;
+ case '`': return str.slice(0, position);
+ case "'": return str.slice(tailPos);
+ case '<':
+ capture = namedCaptures[ch.slice(1, -1)];
+ break;
+ default: // \d\d?
+ var n = +ch;
+ if (n === 0) return match;
+ if (n > m) {
+ var f = floor(n / 10);
+ if (f === 0) return match;
+ if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
+ return match;
+ }
+ capture = captures[n - 1];
+ }
+ return capture === undefined ? '' : capture;
});
};
/***/ }),
-/* 235 */
+/* 338 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(14);
+var classof = __webpack_require__(41);
+var wellKnownSymbol = __webpack_require__(6);
+
+var MATCH = wellKnownSymbol('match');
+
+// `IsRegExp` abstract operation
+// https://tc39.es/ecma262/#sec-isregexp
+module.exports = function (it) {
+ var isRegExp;
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');
+};
+
+
+/***/ }),
+/* 339 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var fails = __webpack_require__(4);
+var whitespaces = __webpack_require__(228);
+
+var non = '\u200B\u0085\u180E';
+
+// check that a method works with the correct list
+// of whitespaces and has a correct name
+module.exports = function (METHOD_NAME) {
+ return fails(function () {
+ return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;
+ });
+};
+
+
+/***/ }),
+/* 340 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+
+var $ = __webpack_require__(1);
+var createHTML = __webpack_require__(235);
+var forcedStringHTMLMethod = __webpack_require__(236);
+
+// `String.prototype.strike` method
+// https://tc39.es/ecma262/#sec-string.prototype.strike
+$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('strike') }, {
+ strike: function strike() {
+ return createHTML(this, 'strike', '', '');
+ }
+});
+
+
+/***/ }),
+/* 341 */
+/***/ (function(module, exports, __webpack_require__) {
+
+/* eslint-disable no-new */
+var global = __webpack_require__(3);
+var fails = __webpack_require__(4);
+var checkCorrectnessOfIteration = __webpack_require__(155);
+var NATIVE_ARRAY_BUFFER_VIEWS = __webpack_require__(5).NATIVE_ARRAY_BUFFER_VIEWS;
+
+var ArrayBuffer = global.ArrayBuffer;
+var Int8Array = global.Int8Array;
+
+module.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () {
+ Int8Array(1);
+}) || !fails(function () {
+ new Int8Array(-1);
+}) || !checkCorrectnessOfIteration(function (iterable) {
+ new Int8Array();
+ new Int8Array(null);
+ new Int8Array(1.5);
+ new Int8Array(iterable);
+}, true) || fails(function () {
+ // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill
+ return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1;
+});
+
+
+/***/ }),
+/* 342 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__(35);
+
+module.exports = function (it) {
+ var result = toInteger(it);
+ if (result < 0) throw RangeError("The argument can't be less than 0");
+ return result;
+};
+
+
+/***/ }),
+/* 343 */
+/***/ (function(module, exports, __webpack_require__) {
var toObject = __webpack_require__(19);
-var toAbsoluteIndex = __webpack_require__(54);
-var toLength = __webpack_require__(16);
+var toLength = __webpack_require__(8);
+var getIteratorMethod = __webpack_require__(153);
+var isArrayIteratorMethod = __webpack_require__(152);
+var bind = __webpack_require__(96);
+var aTypedArrayConstructor = __webpack_require__(5).aTypedArrayConstructor;
+module.exports = function from(source /* , mapfn, thisArg */) {
+ var O = toObject(source);
+ var argumentsLength = arguments.length;
+ var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
+ var mapping = mapfn !== undefined;
+ var iteratorMethod = getIteratorMethod(O);
+ var i, length, result, step, iterator, next;
+ if (iteratorMethod != undefined && !isArrayIteratorMethod(iteratorMethod)) {
+ iterator = iteratorMethod.call(O);
+ next = iterator.next;
+ O = [];
+ while (!(step = next.call(iterator)).done) {
+ O.push(step.value);
+ }
+ }
+ if (mapping && argumentsLength > 2) {
+ mapfn = bind(mapfn, arguments[2], 2);
+ }
+ length = toLength(O.length);
+ result = new (aTypedArrayConstructor(this))(length);
+ for (i = 0; length > i; i++) {
+ result[i] = mapping ? mapfn(O[i], i) : O[i];
+ }
+ return result;
+};
+
+
+/***/ }),
+/* 344 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var toObject = __webpack_require__(19);
+var toAbsoluteIndex = __webpack_require__(43);
+var toLength = __webpack_require__(8);
+
+var min = Math.min;
+
+// `Array.prototype.copyWithin` method implementation
+// https://tc39.es/ecma262/#sec-array.prototype.copywithin
module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {
var O = toObject(this);
var len = toLength(O.length);
var to = toAbsoluteIndex(target, len);
var from = toAbsoluteIndex(start, len);
var end = arguments.length > 2 ? arguments[2] : undefined;
- var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);
+ var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);
var inc = 1;
if (from < to && to < from + count) {
inc = -1;
@@ -26867,454 +30678,69 @@ module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /*
/***/ }),
-/* 236 */
+/* 345 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var regexpExec = __webpack_require__(97);
-__webpack_require__(5)({
- target: 'RegExp',
- proto: true,
- forced: regexpExec !== /./.exec
-}, {
- exec: regexpExec
-});
+var toIndexedObject = __webpack_require__(27);
+var toInteger = __webpack_require__(35);
+var toLength = __webpack_require__(8);
+var arrayMethodIsStrict = __webpack_require__(59);
+var arrayMethodUsesToLength = __webpack_require__(30);
+
+var min = Math.min;
+var nativeLastIndexOf = [].lastIndexOf;
+var NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0;
+var STRICT_METHOD = arrayMethodIsStrict('lastIndexOf');
+// For preventing possible almost infinite loop in non-standard implementations, test the forward version of the method
+var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });
+var FORCED = NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH;
+
+// `Array.prototype.lastIndexOf` method implementation
+// https://tc39.es/ecma262/#sec-array.prototype.lastindexof
+module.exports = FORCED ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {
+ // convert -0 to +0
+ if (NEGATIVE_ZERO) return nativeLastIndexOf.apply(this, arguments) || 0;
+ var O = toIndexedObject(this);
+ var length = toLength(O.length);
+ var index = length - 1;
+ if (arguments.length > 1) index = min(index, toInteger(arguments[1]));
+ if (index < 0) index = length + index;
+ for (;index >= 0; index--) if (index in O && O[index] === searchElement) return index || 0;
+ return -1;
+} : nativeLastIndexOf;
/***/ }),
-/* 237 */
+/* 346 */
/***/ (function(module, exports, __webpack_require__) {
-var isObject = __webpack_require__(18);
-var setPrototypeOf = __webpack_require__(156).set;
-module.exports = function (that, target, C) {
- var S = target.constructor;
- var P;
- if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {
- setPrototypeOf(that, P);
- } return that;
-};
+var global = __webpack_require__(3);
+var DOMIterables = __webpack_require__(240);
+var forEach = __webpack_require__(214);
+var createNonEnumerableProperty = __webpack_require__(18);
-
-/***/ }),
-/* 238 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var $export = __webpack_require__(5);
-var defined = __webpack_require__(30);
-var fails = __webpack_require__(10);
-var spaces = __webpack_require__(239);
-var space = '[' + spaces + ']';
-var non = '\u200b\u0085';
-var ltrim = RegExp('^' + space + space + '*');
-var rtrim = RegExp(space + space + '*$');
-
-var exporter = function (KEY, exec, ALIAS) {
- var exp = {};
- var FORCE = fails(function () {
- return !!spaces[KEY]() || non[KEY]() != non;
- });
- var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
- if (ALIAS) exp[ALIAS] = fn;
- $export($export.P + $export.F * FORCE, 'String', exp);
-};
-
-// 1 -> String#trimLeft
-// 2 -> String#trimRight
-// 3 -> String#trim
-var trim = exporter.trim = function (string, TYPE) {
- string = String(defined(string));
- if (TYPE & 1) string = string.replace(ltrim, '');
- if (TYPE & 2) string = string.replace(rtrim, '');
- return string;
-};
-
-module.exports = exporter;
-
-
-/***/ }),
-/* 239 */
-/***/ (function(module, exports) {
-
-module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
- '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
-
-
-/***/ }),
-/* 240 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 20.1.2.2 Number.isFinite(number)
-var $export = __webpack_require__(5);
-var _isFinite = __webpack_require__(8).isFinite;
-
-$export($export.S, 'Number', {
- isFinite: function isFinite(it) {
- return typeof it == 'number' && _isFinite(it);
+for (var COLLECTION_NAME in DOMIterables) {
+ var Collection = global[COLLECTION_NAME];
+ var CollectionPrototype = Collection && Collection.prototype;
+ // some Chrome versions have non-configurable methods on DOMTokenList
+ if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {
+ createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);
+ } catch (error) {
+ CollectionPrototype.forEach = forEach;
}
-});
-
-
-/***/ }),
-/* 241 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// helper for String#{startsWith, endsWith, includes}
-var isRegExp = __webpack_require__(154);
-var defined = __webpack_require__(30);
-
-module.exports = function (that, searchString, NAME) {
- if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
- return String(defined(that));
-};
-
-
-/***/ }),
-/* 242 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var MATCH = __webpack_require__(3)('match');
-module.exports = function (KEY) {
- var re = /./;
- try {
- '/./'[KEY](re);
- } catch (e) {
- try {
- re[MATCH] = false;
- return !'/./'[KEY](re);
- } catch (f) { /* empty */ }
- } return true;
-};
-
-
-/***/ }),
-/* 243 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var $export = __webpack_require__(5);
-var toAbsoluteIndex = __webpack_require__(54);
-var fromCharCode = String.fromCharCode;
-var $fromCodePoint = String.fromCodePoint;
-
-// length should be 1, old FF problem
-$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
- // 21.1.2.2 String.fromCodePoint(...codePoints)
- fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars
- var res = [];
- var aLen = arguments.length;
- var i = 0;
- var code;
- while (aLen > i) {
- code = +arguments[i++];
- if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point');
- res.push(code < 0x10000
- ? fromCharCode(code)
- : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
- );
- } return res.join('');
- }
-});
-
-
-/***/ }),
-/* 244 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var $export = __webpack_require__(5);
-var $at = __webpack_require__(94)(false);
-$export($export.P, 'String', {
- // 21.1.3.3 String.prototype.codePointAt(pos)
- codePointAt: function codePointAt(pos) {
- return $at(this, pos);
- }
-});
-
-
-/***/ }),
-/* 245 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// most Object methods by ES6 should accept primitives
-var $export = __webpack_require__(5);
-var core = __webpack_require__(39);
-var fails = __webpack_require__(10);
-module.exports = function (KEY, exec) {
- var fn = (core.Object || {})[KEY] || Object[KEY];
- var exp = {};
- exp[KEY] = exec(fn);
- $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
-};
-
-
-/***/ }),
-/* 246 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var $at = __webpack_require__(94)(true);
-
-// 21.1.3.27 String.prototype[@@iterator]()
-__webpack_require__(150)(String, 'String', function (iterated) {
- this._t = String(iterated); // target
- this._i = 0; // next index
-// 21.1.5.2.1 %StringIteratorPrototype%.next()
-}, function () {
- var O = this._t;
- var index = this._i;
- var point;
- if (index >= O.length) return { value: undefined, done: true };
- point = $at(O, index);
- this._i += point.length;
- return { value: point, done: false };
-});
-
-
-/***/ }),
-/* 247 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var ctx = __webpack_require__(52);
-var $export = __webpack_require__(5);
-var toObject = __webpack_require__(19);
-var call = __webpack_require__(248);
-var isArrayIter = __webpack_require__(145);
-var toLength = __webpack_require__(16);
-var createProperty = __webpack_require__(249);
-var getIterFn = __webpack_require__(147);
-
-$export($export.S + $export.F * !__webpack_require__(151)(function (iter) { Array.from(iter); }), 'Array', {
- // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
- from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
- var O = toObject(arrayLike);
- var C = typeof this == 'function' ? this : Array;
- var aLen = arguments.length;
- var mapfn = aLen > 1 ? arguments[1] : undefined;
- var mapping = mapfn !== undefined;
- var index = 0;
- var iterFn = getIterFn(O);
- var length, result, step, iterator;
- if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
- // if object isn't iterable or it's array with default iterator - use simple case
- if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
- for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
- createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
- }
- } else {
- length = toLength(O.length);
- for (result = new C(length); length > index; index++) {
- createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
- }
- }
- result.length = index;
- return result;
- }
-});
-
-
-/***/ }),
-/* 248 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// call something on iterator step with safe closing on error
-var anObject = __webpack_require__(12);
-module.exports = function (iterator, fn, value, entries) {
- try {
- return entries ? fn(anObject(value)[0], value[1]) : fn(value);
- // 7.4.6 IteratorClose(iterator, completion)
- } catch (e) {
- var ret = iterator['return'];
- if (ret !== undefined) anObject(ret.call(iterator));
- throw e;
- }
-};
-
-
-/***/ }),
-/* 249 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var $defineProperty = __webpack_require__(11);
-var createDesc = __webpack_require__(40);
-
-module.exports = function (object, index, value) {
- if (index in object) $defineProperty.f(object, index, createDesc(0, value));
- else object[index] = value;
-};
-
-
-/***/ }),
-/* 250 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-__webpack_require__(251);
-var anObject = __webpack_require__(12);
-var $flags = __webpack_require__(98);
-var DESCRIPTORS = __webpack_require__(9);
-var TO_STRING = 'toString';
-var $toString = /./[TO_STRING];
-
-var define = function (fn) {
- __webpack_require__(23)(RegExp.prototype, TO_STRING, fn, true);
-};
-
-// 21.2.5.14 RegExp.prototype.toString()
-if (__webpack_require__(10)(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
- define(function toString() {
- var R = anObject(this);
- return '/'.concat(R.source, '/',
- 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
- });
-// FF44- RegExp#toString has a wrong name
-} else if ($toString.name != TO_STRING) {
- define(function toString() {
- return $toString.call(this);
- });
}
/***/ }),
-/* 251 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 21.2.5.3 get RegExp.prototype.flags()
-if (__webpack_require__(9) && /./g.flags != 'g') __webpack_require__(11).f(RegExp.prototype, 'flags', {
- configurable: true,
- get: __webpack_require__(98)
-});
-
-
-/***/ }),
-/* 252 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var META = __webpack_require__(29)('meta');
-var isObject = __webpack_require__(18);
-var has = __webpack_require__(24);
-var setDesc = __webpack_require__(11).f;
-var id = 0;
-var isExtensible = Object.isExtensible || function () {
- return true;
-};
-var FREEZE = !__webpack_require__(10)(function () {
- return isExtensible(Object.preventExtensions({}));
-});
-var setMeta = function (it) {
- setDesc(it, META, { value: {
- i: 'O' + ++id, // object ID
- w: {} // weak collections IDs
- } });
-};
-var fastKey = function (it, create) {
- // return primitive with prefix
- if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
- if (!has(it, META)) {
- // can't set metadata to uncaught frozen object
- if (!isExtensible(it)) return 'F';
- // not necessary to add metadata
- if (!create) return 'E';
- // add missing metadata
- setMeta(it);
- // return object ID
- } return it[META].i;
-};
-var getWeak = function (it, create) {
- if (!has(it, META)) {
- // can't set metadata to uncaught frozen object
- if (!isExtensible(it)) return true;
- // not necessary to add metadata
- if (!create) return false;
- // add missing metadata
- setMeta(it);
- // return hash weak collections IDs
- } return it[META].w;
-};
-// add metadata on freeze-family methods calling
-var onFreeze = function (it) {
- if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
- return it;
-};
-var meta = module.exports = {
- KEY: META,
- NEED: false,
- fastKey: fastKey,
- getWeak: getWeak,
- onFreeze: onFreeze
-};
-
-
-/***/ }),
-/* 253 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// all enumerable object keys, includes symbols
-var getKeys = __webpack_require__(42);
-var gOPS = __webpack_require__(89);
-var pIE = __webpack_require__(62);
-module.exports = function (it) {
- var result = getKeys(it);
- var getSymbols = gOPS.f;
- if (getSymbols) {
- var symbols = getSymbols(it);
- var isEnum = pIE.f;
- var i = 0;
- var key;
- while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
- } return result;
-};
-
-
-/***/ }),
-/* 254 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
-var toIObject = __webpack_require__(43);
-var gOPN = __webpack_require__(55).f;
-var toString = {}.toString;
-
-var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
- ? Object.getOwnPropertyNames(window) : [];
-
-var getWindowNames = function (it) {
- try {
- return gOPN(it);
- } catch (e) {
- return windowNames.slice();
- }
-};
-
-module.exports.f = function getOwnPropertyNames(it) {
- return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
-};
-
-
-/***/ }),
-/* 255 */
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.3.19 Object.setPrototypeOf(O, proto)
-var $export = __webpack_require__(5);
-$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(156).set });
-
-
-/***/ }),
-/* 256 */
+/* 347 */
/***/ (function(module, exports) {
/* (ignored) */
/***/ }),
-/* 257 */
+/* 348 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -27322,8 +30748,8 @@ $export($export.S, 'Object', { setPrototypeOf: __webpack_require__(156).set });
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-var Buffer = __webpack_require__(70).Buffer;
-var util = __webpack_require__(258);
+var Buffer = __webpack_require__(124).Buffer;
+var util = __webpack_require__(349);
function copyBuffer(src, target, offset) {
src.copy(target, offset);
@@ -27399,13 +30825,13 @@ if (util && util.inspect && util.inspect.custom) {
}
/***/ }),
-/* 258 */
+/* 349 */
/***/ (function(module, exports) {
/* (ignored) */
/***/ }),
-/* 259 */
+/* 350 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(global) {
@@ -27476,10 +30902,10 @@ function config (name) {
return String(val).toLowerCase() === 'true';
}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(22)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24)))
/***/ }),
-/* 260 */
+/* 351 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -27512,11 +30938,11 @@ function config (name) {
module.exports = PassThrough;
-var Transform = __webpack_require__(169);
+var Transform = __webpack_require__(244);
/**/
-var util = Object.create(__webpack_require__(56));
-util.inherits = __webpack_require__(46);
+var util = Object.create(__webpack_require__(98));
+util.inherits = __webpack_require__(86);
/**/
util.inherits(PassThrough, Transform);
@@ -27532,47 +30958,47 @@ PassThrough.prototype._transform = function (chunk, encoding, cb) {
};
/***/ }),
-/* 261 */
+/* 352 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(102);
+module.exports = __webpack_require__(166);
/***/ }),
-/* 262 */
+/* 353 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(32);
+module.exports = __webpack_require__(48);
/***/ }),
-/* 263 */
+/* 354 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(101).Transform
+module.exports = __webpack_require__(165).Transform
/***/ }),
-/* 264 */
+/* 355 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(101).PassThrough
+module.exports = __webpack_require__(165).PassThrough
/***/ }),
-/* 265 */
+/* 356 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(Buffer, process) {
/* eslint camelcase: "off" */
-var assert = __webpack_require__(171);
+var assert = __webpack_require__(246);
-var Zstream = __webpack_require__(269);
-var zlib_deflate = __webpack_require__(270);
-var zlib_inflate = __webpack_require__(273);
-var constants = __webpack_require__(276);
+var Zstream = __webpack_require__(360);
+var zlib_deflate = __webpack_require__(361);
+var zlib_inflate = __webpack_require__(364);
+var constants = __webpack_require__(367);
for (var key in constants) {
exports[key] = constants[key];
@@ -27973,10 +31399,10 @@ Zlib.prototype._reset = function () {
};
exports.Zlib = Zlib;
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer, __webpack_require__(25)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer, __webpack_require__(47)))
/***/ }),
-/* 266 */
+/* 357 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -28073,7 +31499,7 @@ module.exports = shouldUseNative() ? Object.assign : function (target, source) {
/***/ }),
-/* 267 */
+/* 358 */
/***/ (function(module, exports) {
module.exports = function isBuffer(arg) {
@@ -28084,7 +31510,7 @@ module.exports = function isBuffer(arg) {
}
/***/ }),
-/* 268 */
+/* 359 */
/***/ (function(module, exports) {
if (typeof Object.create === 'function') {
@@ -28113,7 +31539,7 @@ if (typeof Object.create === 'function') {
/***/ }),
-/* 269 */
+/* 360 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -28167,7 +31593,7 @@ module.exports = ZStream;
/***/ }),
-/* 270 */
+/* 361 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -28192,11 +31618,11 @@ module.exports = ZStream;
// misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.
-var utils = __webpack_require__(71);
-var trees = __webpack_require__(271);
-var adler32 = __webpack_require__(172);
-var crc32 = __webpack_require__(173);
-var msg = __webpack_require__(272);
+var utils = __webpack_require__(126);
+var trees = __webpack_require__(362);
+var adler32 = __webpack_require__(247);
+var crc32 = __webpack_require__(248);
+var msg = __webpack_require__(363);
/* Public constants ==========================================================*/
/* ===========================================================================*/
@@ -30048,7 +33474,7 @@ exports.deflateTune = deflateTune;
/***/ }),
-/* 271 */
+/* 362 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -30075,7 +33501,7 @@ exports.deflateTune = deflateTune;
/* eslint-disable space-unary-ops */
-var utils = __webpack_require__(71);
+var utils = __webpack_require__(126);
/* Public constants ==========================================================*/
/* ===========================================================================*/
@@ -31277,7 +34703,7 @@ exports._tr_align = _tr_align;
/***/ }),
-/* 272 */
+/* 363 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -31316,7 +34742,7 @@ module.exports = {
/***/ }),
-/* 273 */
+/* 364 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -31341,11 +34767,11 @@ module.exports = {
// misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.
-var utils = __webpack_require__(71);
-var adler32 = __webpack_require__(172);
-var crc32 = __webpack_require__(173);
-var inflate_fast = __webpack_require__(274);
-var inflate_table = __webpack_require__(275);
+var utils = __webpack_require__(126);
+var adler32 = __webpack_require__(247);
+var crc32 = __webpack_require__(248);
+var inflate_fast = __webpack_require__(365);
+var inflate_table = __webpack_require__(366);
var CODES = 0;
var LENS = 1;
@@ -32879,7 +36305,7 @@ exports.inflateUndermine = inflateUndermine;
/***/ }),
-/* 274 */
+/* 365 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -33231,7 +36657,7 @@ module.exports = function inflate_fast(strm, start) {
/***/ }),
-/* 275 */
+/* 366 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -33256,7 +36682,7 @@ module.exports = function inflate_fast(strm, start) {
// misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.
-var utils = __webpack_require__(71);
+var utils = __webpack_require__(126);
var MAXBITS = 15;
var ENOUGH_LENS = 852;
@@ -33581,7 +37007,7 @@ module.exports = function inflate_table(type, lens, lens_index, codes, table, ta
/***/ }),
-/* 276 */
+/* 367 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -33656,13 +37082,13 @@ module.exports = {
/***/ }),
-/* 277 */
+/* 368 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(72), __webpack_require__(278), __webpack_require__(279), __webpack_require__(47), __webpack_require__(48), __webpack_require__(105), __webpack_require__(174), __webpack_require__(280), __webpack_require__(175), __webpack_require__(281), __webpack_require__(282), __webpack_require__(283), __webpack_require__(106), __webpack_require__(284), __webpack_require__(33), __webpack_require__(6), __webpack_require__(285), __webpack_require__(286), __webpack_require__(287), __webpack_require__(288), __webpack_require__(289), __webpack_require__(290), __webpack_require__(291), __webpack_require__(292), __webpack_require__(293), __webpack_require__(294), __webpack_require__(295), __webpack_require__(296), __webpack_require__(297), __webpack_require__(298), __webpack_require__(299), __webpack_require__(300));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(127), __webpack_require__(369), __webpack_require__(370), __webpack_require__(87), __webpack_require__(88), __webpack_require__(168), __webpack_require__(249), __webpack_require__(371), __webpack_require__(250), __webpack_require__(372), __webpack_require__(373), __webpack_require__(374), __webpack_require__(169), __webpack_require__(375), __webpack_require__(49), __webpack_require__(12), __webpack_require__(376), __webpack_require__(377), __webpack_require__(378), __webpack_require__(379), __webpack_require__(380), __webpack_require__(381), __webpack_require__(382), __webpack_require__(383), __webpack_require__(384), __webpack_require__(385), __webpack_require__(386), __webpack_require__(387), __webpack_require__(388), __webpack_require__(389), __webpack_require__(390), __webpack_require__(391));
}
else {}
}(this, function (CryptoJS) {
@@ -33672,13 +37098,13 @@ module.exports = {
}));
/***/ }),
-/* 278 */
+/* 369 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -33746,13 +37172,13 @@ module.exports = {
}));
/***/ }),
-/* 279 */
+/* 370 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -33893,13 +37319,13 @@ module.exports = {
}));
/***/ }),
-/* 280 */
+/* 371 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(174));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(249));
}
else {}
}(this, function (CryptoJS) {
@@ -33971,13 +37397,13 @@ module.exports = {
}));
/***/ }),
-/* 281 */
+/* 372 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(72), __webpack_require__(175));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(127), __webpack_require__(250));
}
else {}
}(this, function (CryptoJS) {
@@ -34052,13 +37478,13 @@ module.exports = {
}));
/***/ }),
-/* 282 */
+/* 373 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(72));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(127));
}
else {}
}(this, function (CryptoJS) {
@@ -34373,13 +37799,13 @@ module.exports = {
}));
/***/ }),
-/* 283 */
+/* 374 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1));
+ module.exports = exports = factory(__webpack_require__(2));
}
else {}
}(this, function (CryptoJS) {
@@ -34638,13 +38064,13 @@ module.exports = {
}));
/***/ }),
-/* 284 */
+/* 375 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(105), __webpack_require__(106));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(168), __webpack_require__(169));
}
else {}
}(this, function (CryptoJS) {
@@ -34781,13 +38207,13 @@ module.exports = {
}));
/***/ }),
-/* 285 */
+/* 376 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -34857,13 +38283,13 @@ module.exports = {
}));
/***/ }),
-/* 286 */
+/* 377 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -34913,13 +38339,13 @@ module.exports = {
}));
/***/ }),
-/* 287 */
+/* 378 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35027,13 +38453,13 @@ module.exports = {
}));
/***/ }),
-/* 288 */
+/* 379 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35079,13 +38505,13 @@ module.exports = {
}));
/***/ }),
-/* 289 */
+/* 380 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35117,13 +38543,13 @@ module.exports = {
}));
/***/ }),
-/* 290 */
+/* 381 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35164,13 +38590,13 @@ module.exports = {
}));
/***/ }),
-/* 291 */
+/* 382 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35206,13 +38632,13 @@ module.exports = {
}));
/***/ }),
-/* 292 */
+/* 383 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35244,13 +38670,13 @@ module.exports = {
}));
/***/ }),
-/* 293 */
+/* 384 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35287,13 +38713,13 @@ module.exports = {
}));
/***/ }),
-/* 294 */
+/* 385 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35315,13 +38741,13 @@ module.exports = {
}));
/***/ }),
-/* 295 */
+/* 386 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35379,13 +38805,13 @@ module.exports = {
}));
/***/ }),
-/* 296 */
+/* 387 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(47), __webpack_require__(48), __webpack_require__(33), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(87), __webpack_require__(88), __webpack_require__(49), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -35609,13 +39035,13 @@ module.exports = {
}));
/***/ }),
-/* 297 */
+/* 388 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(47), __webpack_require__(48), __webpack_require__(33), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(87), __webpack_require__(88), __webpack_require__(49), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -36377,13 +39803,13 @@ module.exports = {
}));
/***/ }),
-/* 298 */
+/* 389 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(47), __webpack_require__(48), __webpack_require__(33), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(87), __webpack_require__(88), __webpack_require__(49), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -36514,13 +39940,13 @@ module.exports = {
}));
/***/ }),
-/* 299 */
+/* 390 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(47), __webpack_require__(48), __webpack_require__(33), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(87), __webpack_require__(88), __webpack_require__(49), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -36704,13 +40130,13 @@ module.exports = {
}));
/***/ }),
-/* 300 */
+/* 391 */
/***/ (function(module, exports, __webpack_require__) {
;(function (root, factory, undef) {
if (true) {
// CommonJS
- module.exports = exports = factory(__webpack_require__(1), __webpack_require__(47), __webpack_require__(48), __webpack_require__(33), __webpack_require__(6));
+ module.exports = exports = factory(__webpack_require__(2), __webpack_require__(87), __webpack_require__(88), __webpack_require__(49), __webpack_require__(12));
}
else {}
}(this, function (CryptoJS) {
@@ -36892,42 +40318,43 @@ module.exports = {
}));
/***/ }),
-/* 301 */
+/* 392 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/* WEBPACK VAR INJECTION */(function(Buffer, process) {
+/* WEBPACK VAR INJECTION */(function(Buffer) {
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
-var r = _interopDefault(__webpack_require__(302));
-var _Object$getOwnPropertyDescriptor = _interopDefault(__webpack_require__(332));
-var _getIterator = _interopDefault(__webpack_require__(335));
-var _Object$freeze = _interopDefault(__webpack_require__(345));
-var _typeof = _interopDefault(__webpack_require__(122));
-var _Object$keys = _interopDefault(__webpack_require__(357));
-var _Object$defineProperty = _interopDefault(__webpack_require__(191));
-var _classCallCheck = _interopDefault(__webpack_require__(362));
-var _createClass = _interopDefault(__webpack_require__(363));
-var _Map = _interopDefault(__webpack_require__(364));
-var _possibleConstructorReturn = _interopDefault(__webpack_require__(375));
-var _inherits = _interopDefault(__webpack_require__(376));
-var restructure_src_utils = __webpack_require__(26);
-var _Object$defineProperties = _interopDefault(__webpack_require__(384));
-var isEqual = _interopDefault(__webpack_require__(387));
-var _Object$assign = _interopDefault(__webpack_require__(401));
-var _String$fromCodePoint = _interopDefault(__webpack_require__(405));
-var _Array$from = _interopDefault(__webpack_require__(408));
-var _Set = _interopDefault(__webpack_require__(413));
-var unicode = _interopDefault(__webpack_require__(419));
-var UnicodeTrie = _interopDefault(__webpack_require__(424));
-var StateMachine = _interopDefault(__webpack_require__(425));
-var _Number$EPSILON = _interopDefault(__webpack_require__(427));
-var cloneDeep = _interopDefault(__webpack_require__(430));
-var inflate = _interopDefault(__webpack_require__(83));
-var brotli = _interopDefault(__webpack_require__(431));
-
+var r = _interopDefault(__webpack_require__(393));
+var _Object$getOwnPropertyDescriptor = _interopDefault(__webpack_require__(423));
+var _getIterator = _interopDefault(__webpack_require__(426));
+var _Object$freeze = _interopDefault(__webpack_require__(435));
+var _typeof = _interopDefault(__webpack_require__(186));
+var _Object$keys = _interopDefault(__webpack_require__(447));
+var _Object$defineProperty = _interopDefault(__webpack_require__(264));
+var _classCallCheck = _interopDefault(__webpack_require__(452));
+var _createClass = _interopDefault(__webpack_require__(453));
+var _Map = _interopDefault(__webpack_require__(454));
+var _possibleConstructorReturn = _interopDefault(__webpack_require__(464));
+var _inherits = _interopDefault(__webpack_require__(465));
+var restructure_src_utils = __webpack_require__(38);
+var _Object$defineProperties = _interopDefault(__webpack_require__(473));
+var isEqual = _interopDefault(__webpack_require__(476));
+var _Object$assign = _interopDefault(__webpack_require__(489));
+var _String$fromCodePoint = _interopDefault(__webpack_require__(493));
+var _Array$from = _interopDefault(__webpack_require__(496));
+var _Set = _interopDefault(__webpack_require__(500));
+var unicode = _interopDefault(__webpack_require__(506));
+var UnicodeTrie = _interopDefault(__webpack_require__(511));
+var StateMachine = _interopDefault(__webpack_require__(512));
+var _Number$EPSILON = _interopDefault(__webpack_require__(514));
+var cloneDeep = _interopDefault(__webpack_require__(517));
+var _Promise = _interopDefault(__webpack_require__(518));
+var inflate = _interopDefault(__webpack_require__(135));
+var brotli = _interopDefault(__webpack_require__(526));
+var fs = __webpack_require__(53);
var fontkit = {};
fontkit.logErrors = false;
@@ -38818,7 +42245,7 @@ var CFFPrivateOp = function () {
var FontDict = new CFFDict([
// key name type(s) default
-[18, 'Private', new CFFPrivateOp(), null], [[12, 38], 'FontName', 'sid', null]]);
+[18, 'Private', new CFFPrivateOp(), null], [[12, 38], 'FontName', 'sid', null], [[12, 7], 'FontMatrix', 'array', [0.001, 0, 0, 0.001, 0, 0]], [[12, 5], 'PaintType', 'number', 0]]);
var CFFTopDict = new CFFDict([
// key name type(s) default
@@ -38963,7 +42390,7 @@ var CFFFont = function () {
if (gid < ranges[mid].first) {
high = mid - 1;
- } else if (mid < high && gid > ranges[mid + 1].first) {
+ } else if (mid < high && gid >= ranges[mid + 1].first) {
low = mid + 1;
} else {
return ranges[mid].fd;
@@ -40726,7 +44153,7 @@ function _applyDecoratedDescriptor$1(target, property, decorators, descriptor, c
// iconv-lite is an optional dependency.
try {
- var iconv = __webpack_require__(108);
+ var iconv = __webpack_require__(171);
} catch (err) {}
var CmapProcessor = (_class$1 = function () {
@@ -42934,7 +46361,7 @@ var AATMorxProcessor = (_class$2 = function () {
}
// Processes an array of glyphs and applies the specified features
- // Features should be in the form of {featureType:{featureSetting:true}}
+ // Features should be in the form of {featureType:{featureSetting:boolean}}
AATMorxProcessor.prototype.process = function process(glyphs) {
@@ -42972,9 +46399,14 @@ var AATMorxProcessor = (_class$2 = function () {
var feature = _ref2;
var f = void 0;
- if ((f = features[feature.featureType]) && f[feature.featureSetting]) {
- flags &= feature.disableFlags;
- flags |= feature.enableFlags;
+ if (f = features[feature.featureType]) {
+ if (f[feature.featureSetting]) {
+ flags &= feature.disableFlags;
+ flags |= feature.enableFlags;
+ } else if (f[feature.featureSetting] === false) {
+ flags |= ~feature.disableFlags;
+ flags &= ~feature.enableFlags;
+ }
}
}
@@ -43767,7 +47199,7 @@ var DefaultShaper = (_temp = _class$4 = function () {
return DefaultShaper;
}(), _class$4.zeroMarkWidths = 'AFTER_GPOS', _temp);
-var trie = new UnicodeTrie(Buffer("AAEQAAAAAAAAADGgAZUBav7t2CtPA0EUBeDZB00pin9AJZIEgyUEj0QhweDAgQOJxCBRBElQSBwSicLgkOAwnNKZ5GaY2c7uzj4o5yZfZrrbefbuIx2nSq3CGmzAWH/+K+UO7MIe7MMhHMMpnMMFXMIVXIt2t3CnP088iPqjqNN8e4Ij7Rle4LUH82rLm6i/92A+RERERERERERNmfz/89GDeRARERERzbN8ceps2Iwt9H0C9/AJ6yOlDkbTczcot5VSm8Pm1vcFWfb7+BKOLTuOd2UlTX4wGP85Eg953lWPFbnuN7PkjtLmalOWbNenkHOSa7T3KmR9MVTZ2zZkVj1kHa68MueVKH0R4zqQ44WEXLM8VjcWHP0PtKLfPzQnMtGn3W4QYf6qxFxceVI394r2xnV+1rih0fV1Vzf3fO1n3evL5J78ruvZ5ptX2Rwy92Tfb1wlEqut3U+sZ3HXOeJ7/zDrbyuP6+Zz0fqa6Nv3vhY7Yu1xWnGevmsvsUpTT/RYIe8waUH/rvHMWKFzLfN8L+rTfp645mfX7ftlnfDtYxN59w0=","base64"));
+var trie = new UnicodeTrie(Buffer("AAHwAAAAAAAAADgAAf0BAv7tmi1MxDAUx7vtvjhAgcDgkEgEAnmXEBIMCYaEcygEiqBQ4FAkCE4ikUgMiiBJSAgSiUQSDMn9L9eSl6bddddug9t7yS/trevre+3r27pcNxZiG+yCfdCVv/9LeQxOwRm4AJegD27ALbgD9+ABPJF+z+BN/h7yDj5k/VOWX6SdmU5+wLWknggxDxaS8u0qiiX4uiz9XamQ3wzDMAzDMAzDMAzDVI/h959V/v7BMAzDMAzDMLlyNTNiMSdewVxbiA44B4/guz1qW58VYlMI0WsJ0W+N6kXw0spvPtdwhtkwnGM6uLaV4Xyzg3v3PM9DPfQ/sOg4xPWjipy31P8LTqbU304c/cLCUmWJLNB2Uz2U1KTeRKNmKHVMfbJC+/0loTZRH/W5cvEvBJPMbREkWt3FD1NcqXZBSpuE2Ad0PBehPtNrPtIEdYP+hiRt/V1jIiE69X4NT/uVZI3PUHE9bm5M7ePGdZWy951v7Nn6j8v1WWKP3mt6ttnsigx6VN7Vc0VomSSGqW2mGNP1muZPl7LfjNUaKNFtDGVf2fvE9O7VlBS5j333c5p/eeoOqcs1R/hIqDWLJ7TTlksirVT1SI7l8k4Yp+g3jafGcrU1RM6l9th80XOpnlN97bDNY4i4s61B0Si/ipa0uHMl6zqEjlFfCZm/TM8KmzQDjmuTAQ==","base64"));
var FEATURES = ['isol', 'fina', 'fin2', 'fin3', 'medi', 'med2', 'init'];
var ShapingClasses = {
@@ -45059,9 +48491,9 @@ var indicMachine = {
tags: tags
};
-var categories = ["O", "IND", "S", "GB", "B", "FM", "CGJ", "VMAbv", "VMPst", "VAbv", "VPst", "CMBlw", "VPre", "VBlw", "H", "VMBlw", "CMAbv", "MBlw", "CS", "R", "SUB", "MPst", "MPre", "FAbv", "FPst", "FBlw", "SMAbv", "SMBlw", "VMPre", "ZWNJ", "ZWJ", "WJ", "VS", "N", "HN", "MAbv"];
+var categories = ["O", "IND", "S", "GB", "B", "FM", "CGJ", "VMAbv", "VMPst", "VAbv", "VPst", "CMBlw", "VPre", "VBlw", "H", "VMBlw", "CMAbv", "MBlw", "CS", "R", "SUB", "MPst", "MPre", "FAbv", "FPst", "FBlw", "null", "SMAbv", "SMBlw", "VMPre", "ZWNJ", "ZWJ", "WJ", "M", "VS", "N", "HN", "MAbv"];
var decompositions$1 = { "2507": [2503, 2494], "2508": [2503, 2519], "2888": [2887, 2902], "2891": [2887, 2878], "2892": [2887, 2903], "3018": [3014, 3006], "3019": [3015, 3006], "3020": [3014, 3031], "3144": [3142, 3158], "3264": [3263, 3285], "3271": [3270, 3285], "3272": [3270, 3286], "3274": [3270, 3266], "3275": [3270, 3266, 3285], "3402": [3398, 3390], "3403": [3399, 3390], "3404": [3398, 3415], "3546": [3545, 3530], "3548": [3545, 3535], "3549": [3545, 3535, 3530], "3550": [3545, 3551], "3635": [3661, 3634], "3763": [3789, 3762], "3955": [3953, 3954], "3957": [3953, 3956], "3958": [4018, 3968], "3959": [4018, 3953, 3968], "3960": [4019, 3968], "3961": [4019, 3953, 3968], "3969": [3953, 3968], "6971": [6970, 6965], "6973": [6972, 6965], "6976": [6974, 6965], "6977": [6975, 6965], "6979": [6978, 6965], "69934": [69937, 69927], "69935": [69938, 69927], "70475": [70471, 70462], "70476": [70471, 70487], "70843": [70841, 70842], "70844": [70841, 70832], "70846": [70841, 70845], "71098": [71096, 71087], "71099": [71097, 71087] };
-var stateTable$1 = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [2, 2, 3, 4, 4, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 17, 18, 11, 19, 20, 21, 22, 0, 0, 23, 0, 0, 2, 0, 24, 0, 25], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 0, 27, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 46, 0, 0, 0, 39, 0, 0, 47], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 0, 12, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 9, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 9, 0, 0, 12, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 7, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 0, 0, 0, 0, 11, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 4, 4, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 48, 11, 12, 13, 14, 48, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 23, 0, 0, 0, 49, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 16, 0, 0, 0, 11, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 51, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 16, 0, 0, 0, 11, 0, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 0, 36, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 33, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 0, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 33, 0, 0, 36, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 31, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 0, 0, 0, 0, 35, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 52, 35, 36, 37, 38, 52, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 46, 0, 0, 0, 53, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 40, 0, 0, 0, 35, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 40, 0, 0, 0, 35, 0, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 48, 11, 12, 13, 14, 0, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 48, 11, 12, 13, 14, 48, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 23, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 52, 35, 36, 37, 38, 0, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 52, 35, 36, 37, 38, 52, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 46, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 51, 0]];
+var stateTable$1 = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [2, 2, 3, 4, 4, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 17, 18, 11, 19, 20, 21, 22, 0, 0, 0, 23, 0, 0, 2, 0, 0, 24, 0, 25], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 0, 0, 27, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 39, 0, 0, 47], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 0, 12, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 9, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 9, 0, 0, 12, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 7, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 0, 0, 0, 0, 11, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 4, 4, 5, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 48, 11, 12, 13, 14, 48, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 49, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 16, 0, 0, 0, 11, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 51, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 0, 11, 12, 0, 14, 0, 16, 0, 0, 0, 11, 0, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 0, 36, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 33, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 0, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 33, 0, 0, 36, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 31, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 0, 0, 0, 0, 35, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 52, 35, 36, 37, 38, 52, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 53, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 40, 0, 0, 0, 35, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 0, 35, 36, 0, 38, 0, 40, 0, 0, 0, 35, 0, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 48, 11, 12, 13, 14, 0, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 5, 0, 6, 7, 8, 9, 48, 11, 12, 13, 14, 48, 16, 0, 0, 18, 11, 19, 20, 21, 22, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 25], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 52, 35, 36, 37, 38, 0, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 29, 0, 30, 31, 32, 33, 52, 35, 36, 37, 38, 52, 40, 0, 0, 41, 35, 42, 43, 44, 45, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 47], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 51, 0]];
var accepting$1 = [false, true, true, true, true, true, true, true, true, true, true, true, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true];
var tags$1 = [[], ["broken_cluster"], ["independent_cluster"], ["symbol_cluster"], ["standard_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], [], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["broken_cluster"], ["numeral_cluster"], ["broken_cluster"], ["independent_cluster"], ["symbol_cluster"], ["symbol_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["virama_terminated_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["standard_cluster"], ["broken_cluster"], ["broken_cluster"], ["numeral_cluster"], ["number_joiner_terminated_cluster"], ["standard_cluster"], ["standard_cluster"], ["numeral_cluster"]];
var useData = {
@@ -45252,7 +48684,7 @@ var _class$6;
var _temp$2;
var decompositions = useData.decompositions;
-var trie$1 = new UnicodeTrie(Buffer("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","base64"));
+var trie$1 = new UnicodeTrie(Buffer("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","base64"));
var stateMachine = new StateMachine(indicMachine);
/**
@@ -46179,7 +49611,7 @@ var _class$7;
var _temp$3;
var categories$1 = useData.categories;
var decompositions$2 = useData.decompositions;
-var trie$2 = new UnicodeTrie(Buffer("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","base64"));
+var trie$2 = new UnicodeTrie(Buffer("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","base64"));
var stateMachine$1 = new StateMachine(useData);
/**
@@ -47570,10 +51002,13 @@ var Path = function () {
Path.prototype.toFunction = function toFunction() {
- var cmds = this.commands.map(function (c) {
- return ' ctx.' + c.command + '(' + c.args.join(', ') + ');';
- });
- return new Function('ctx', cmds.join('\n'));
+ var _this = this;
+
+ return function (ctx) {
+ _this.commands.forEach(function (c) {
+ return ctx[c.command].apply(ctx, c.args);
+ });
+ };
};
/**
@@ -48592,11 +52027,9 @@ var CFFGlyph = function (_Glyph) {
};
CFFGlyph.prototype._getPath = function _getPath() {
- var stream = this._font.stream;
- var pos = stream.pos;
-
-
var cff = this._font.CFF2 || this._font['CFF '];
+ var stream = cff.stream;
+
var str = cff.topDict.CharStrings[this.id];
var end = str.offset + str.length;
stream.pos = str.offset;
@@ -49903,6 +53336,8 @@ var GlyphVariationProcessor = function () {
return GlyphVariationProcessor;
}();
+var resolved = _Promise.resolve();
+
var Subset = function () {
function Subset(font) {
_classCallCheck(this, Subset);
@@ -49933,7 +53368,7 @@ var Subset = function () {
var s = new r.EncodeStream();
- process.nextTick(function () {
+ resolved.then(function () {
_this.encode(s);
return s.end();
});
@@ -51835,49 +55270,49 @@ fontkit.registerFormat(DFont);
module.exports = fontkit;
//# sourceMappingURL=index.js.map
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer, __webpack_require__(25)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 302 */
+/* 393 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
(function() {
var key, val, _ref, _ref1;
- exports.EncodeStream = __webpack_require__(303);
+ exports.EncodeStream = __webpack_require__(394);
- exports.DecodeStream = __webpack_require__(107);
+ exports.DecodeStream = __webpack_require__(170);
- exports.Array = __webpack_require__(178);
+ exports.Array = __webpack_require__(253);
- exports.LazyArray = __webpack_require__(322);
+ exports.LazyArray = __webpack_require__(413);
- exports.Bitfield = __webpack_require__(323);
+ exports.Bitfield = __webpack_require__(414);
- exports.Boolean = __webpack_require__(324);
+ exports.Boolean = __webpack_require__(415);
- exports.Buffer = __webpack_require__(325);
+ exports.Buffer = __webpack_require__(416);
- exports.Enum = __webpack_require__(326);
+ exports.Enum = __webpack_require__(417);
- exports.Optional = __webpack_require__(327);
+ exports.Optional = __webpack_require__(418);
- exports.Reserved = __webpack_require__(328);
+ exports.Reserved = __webpack_require__(419);
- exports.String = __webpack_require__(329);
+ exports.String = __webpack_require__(420);
- exports.Struct = __webpack_require__(179);
+ exports.Struct = __webpack_require__(254);
- exports.VersionedStruct = __webpack_require__(330);
+ exports.VersionedStruct = __webpack_require__(421);
- _ref = __webpack_require__(49);
+ _ref = __webpack_require__(89);
for (key in _ref) {
val = _ref[key];
exports[key] = val;
}
- _ref1 = __webpack_require__(331);
+ _ref1 = __webpack_require__(422);
for (key in _ref1) {
val = _ref1[key];
exports[key] = val;
@@ -51887,7 +55322,7 @@ module.exports = fontkit;
/***/ }),
-/* 303 */
+/* 394 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(Buffer) {// Generated by CoffeeScript 1.7.1
@@ -51896,12 +55331,12 @@ module.exports = fontkit;
__hasProp = {}.hasOwnProperty,
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
- stream = __webpack_require__(100);
+ stream = __webpack_require__(121);
- DecodeStream = __webpack_require__(107);
+ DecodeStream = __webpack_require__(170);
try {
- iconv = __webpack_require__(108);
+ iconv = __webpack_require__(171);
} catch (_error) {}
EncodeStream = (function(_super) {
@@ -52042,10 +55477,10 @@ module.exports = fontkit;
}).call(this);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 304 */
+/* 395 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -52104,7 +55539,7 @@ StripBOMWrapper.prototype.end = function() {
/***/ }),
-/* 305 */
+/* 396 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -52113,15 +55548,15 @@ StripBOMWrapper.prototype.end = function() {
// Update this array if you add/rename/remove files in this directory.
// We support Browserify by skipping automatic module discovery and requiring modules directly.
var modules = [
- __webpack_require__(306),
- __webpack_require__(307),
- __webpack_require__(308),
- __webpack_require__(309),
- __webpack_require__(310),
- __webpack_require__(311),
- __webpack_require__(312),
- __webpack_require__(313),
- __webpack_require__(314),
+ __webpack_require__(397),
+ __webpack_require__(398),
+ __webpack_require__(399),
+ __webpack_require__(400),
+ __webpack_require__(401),
+ __webpack_require__(402),
+ __webpack_require__(403),
+ __webpack_require__(404),
+ __webpack_require__(405),
];
// Put all encoding/alias/codec definitions to single object and export it.
@@ -52134,12 +55569,12 @@ for (var i = 0; i < modules.length; i++) {
/***/ }),
-/* 306 */
+/* 397 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var Buffer = __webpack_require__(34).Buffer;
+var Buffer = __webpack_require__(37).Buffer;
// Export Node.js internal encodings.
@@ -52186,17 +55621,27 @@ InternalCodec.prototype.decoder = InternalDecoder;
//------------------------------------------------------------------------------
// We use node.js internal decoder. Its signature is the same as ours.
-var StringDecoder = __webpack_require__(103).StringDecoder;
+var StringDecoder = __webpack_require__(125).StringDecoder;
if (!StringDecoder.prototype.end) // Node v0.8 doesn't have this method.
StringDecoder.prototype.end = function() {};
function InternalDecoder(options, codec) {
- StringDecoder.call(this, codec.enc);
+ this.decoder = new StringDecoder(codec.enc);
}
-InternalDecoder.prototype = StringDecoder.prototype;
+InternalDecoder.prototype.write = function(buf) {
+ if (!Buffer.isBuffer(buf)) {
+ buf = Buffer.from(buf);
+ }
+
+ return this.decoder.write(buf);
+}
+
+InternalDecoder.prototype.end = function() {
+ return this.decoder.end();
+}
//------------------------------------------------------------------------------
@@ -52329,13 +55774,13 @@ InternalDecoderCesu8.prototype.end = function() {
/***/ }),
-/* 307 */
+/* 398 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var Buffer = __webpack_require__(34).Buffer;
+var Buffer = __webpack_require__(37).Buffer;
// == UTF32-LE/BE codec. ==========================================================
@@ -52435,60 +55880,86 @@ Utf32Encoder.prototype.end = function() {
function Utf32Decoder(options, codec) {
this.isLE = codec.isLE;
this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0);
- this.overflow = null;
+ this.overflow = [];
}
Utf32Decoder.prototype.write = function(src) {
if (src.length === 0)
return '';
- if (this.overflow)
- src = Buffer.concat([this.overflow, src]);
-
- var goodLength = src.length - src.length % 4;
-
- if (src.length !== goodLength) {
- this.overflow = src.slice(goodLength);
- src = src.slice(0, goodLength);
- }
- else
- this.overflow = null;
-
- var dst = Buffer.alloc(goodLength);
+ var i = 0;
+ var codepoint = 0;
+ var dst = Buffer.alloc(src.length + 4);
var offset = 0;
+ var isLE = this.isLE;
+ var overflow = this.overflow;
+ var badChar = this.badChar;
- for (var i = 0; i < goodLength; i += 4) {
- var codepoint = this.isLE ? src.readUInt32LE(i) : src.readUInt32BE(i);
+ if (overflow.length > 0) {
+ for (; i < src.length && overflow.length < 4; i++)
+ overflow.push(src[i]);
+
+ if (overflow.length === 4) {
+ // NOTE: codepoint is a signed int32 and can be negative.
+ // NOTE: We copied this block from below to help V8 optimize it (it works with array, not buffer).
+ if (isLE) {
+ codepoint = overflow[i] | (overflow[i+1] << 8) | (overflow[i+2] << 16) | (overflow[i+3] << 24);
+ } else {
+ codepoint = overflow[i+3] | (overflow[i+2] << 8) | (overflow[i+1] << 16) | (overflow[i] << 24);
+ }
+ overflow.length = 0;
- if (codepoint < 0x10000) {
- // Simple 16-bit character
- dst.writeUInt16LE(codepoint, offset);
- offset += 2;
+ offset = _writeCodepoint(dst, offset, codepoint, badChar);
}
- else {
- if (codepoint > 0x10FFFF) {
- // Not a valid Unicode codepoint
- dst.writeUInt16LE(this.badChar, offset);
- offset += 2;
- }
- else {
- // Create high and low surrogates.
- codepoint -= 0x10000;
- var high = 0xD800 | (codepoint >> 10);
- var low = 0xDC00 + (codepoint & 0x3FF);
- dst.writeUInt16LE(high, offset);
- offset += 2;
- dst.writeUInt16LE(low, offset);
- offset += 2;
- }
+ }
+
+ // Main loop. Should be as optimized as possible.
+ for (; i < src.length - 3; i += 4) {
+ // NOTE: codepoint is a signed int32 and can be negative.
+ if (isLE) {
+ codepoint = src[i] | (src[i+1] << 8) | (src[i+2] << 16) | (src[i+3] << 24);
+ } else {
+ codepoint = src[i+3] | (src[i+2] << 8) | (src[i+1] << 16) | (src[i] << 24);
}
+ offset = _writeCodepoint(dst, offset, codepoint, badChar);
+ }
+
+ // Keep overflowing bytes.
+ for (; i < src.length; i++) {
+ overflow.push(src[i]);
}
return dst.slice(0, offset).toString('ucs2');
};
+function _writeCodepoint(dst, offset, codepoint, badChar) {
+ // NOTE: codepoint is signed int32 and can be negative. We keep it that way to help V8 with optimizations.
+ if (codepoint < 0 || codepoint > 0x10FFFF) {
+ // Not a valid Unicode codepoint
+ codepoint = badChar;
+ }
+
+ // Ephemeral Planes: Write high surrogate.
+ if (codepoint >= 0x10000) {
+ codepoint -= 0x10000;
+
+ var high = 0xD800 | (codepoint >> 10);
+ dst[offset++] = high & 0xff;
+ dst[offset++] = high >> 8;
+
+ // Low surrogate is written below.
+ var codepoint = 0xDC00 | (codepoint & 0x3FF);
+ }
+
+ // Write BMP char or low surrogate.
+ dst[offset++] = codepoint & 0xff;
+ dst[offset++] = codepoint >> 8;
+
+ return offset;
+};
+
Utf32Decoder.prototype.end = function() {
- this.overflow = null;
+ this.overflow.length = 0;
};
// == UTF-32 Auto codec =============================================================
@@ -52499,7 +55970,7 @@ Utf32Decoder.prototype.end = function() {
// Encoder prepends BOM (which can be overridden with (addBOM: false}).
exports.utf32 = Utf32AutoCodec;
-exports.ucs4 = Utf32AutoCodec;
+exports.ucs4 = 'utf32';
function Utf32AutoCodec(options, iconv) {
this.iconv = iconv;
@@ -52531,26 +56002,31 @@ Utf32AutoEncoder.prototype.end = function() {
function Utf32AutoDecoder(options, codec) {
this.decoder = null;
- this.initialBytes = [];
- this.initialBytesLen = 0;
+ this.initialBufs = [];
+ this.initialBufsLen = 0;
this.options = options || {};
this.iconv = codec.iconv;
}
Utf32AutoDecoder.prototype.write = function(buf) {
- if (!this.decoder) {
+ if (!this.decoder) {
// Codec is not chosen yet. Accumulate initial bytes.
- this.initialBytes.push(buf);
- this.initialBytesLen += buf.length;
+ this.initialBufs.push(buf);
+ this.initialBufsLen += buf.length;
- if (this.initialBytesLen < 32) // We need more bytes to use space heuristic (see below)
+ if (this.initialBufsLen < 32) // We need more bytes to use space heuristic (see below)
return '';
// We have enough bytes -> detect endianness.
- var buf2 = Buffer.concat(this.initialBytes),
- encoding = detectEncoding(buf2, this.options.defaultEncoding);
+ var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
this.decoder = this.iconv.getDecoder(encoding, this.options);
- this.initialBytes.length = this.initialBytesLen = 0;
+
+ var resStr = '';
+ for (var i = 0; i < this.initialBufs.length; i++)
+ resStr += this.decoder.write(this.initialBufs[i]);
+
+ this.initialBufs.length = this.initialBufsLen = 0;
+ return resStr;
}
return this.decoder.write(buf);
@@ -52558,71 +56034,78 @@ Utf32AutoDecoder.prototype.write = function(buf) {
Utf32AutoDecoder.prototype.end = function() {
if (!this.decoder) {
- var buf = Buffer.concat(this.initialBytes),
- encoding = detectEncoding(buf, this.options.defaultEncoding);
+ var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
this.decoder = this.iconv.getDecoder(encoding, this.options);
- var res = this.decoder.write(buf),
- trail = this.decoder.end();
+ var resStr = '';
+ for (var i = 0; i < this.initialBufs.length; i++)
+ resStr += this.decoder.write(this.initialBufs[i]);
- return trail ? (res + trail) : res;
+ var trail = this.decoder.end();
+ if (trail)
+ resStr += trail;
+
+ this.initialBufs.length = this.initialBufsLen = 0;
+ return resStr;
}
return this.decoder.end();
};
-function detectEncoding(buf, defaultEncoding) {
- var enc = defaultEncoding || 'utf-32le';
+function detectEncoding(bufs, defaultEncoding) {
+ var b = [];
+ var charsProcessed = 0;
+ var invalidLE = 0, invalidBE = 0; // Number of invalid chars when decoded as LE or BE.
+ var bmpCharsLE = 0, bmpCharsBE = 0; // Number of BMP chars when decoded as LE or BE.
- if (buf.length >= 4) {
- // Check BOM.
- if (buf.readUInt32BE(0) === 0xFEFF) // UTF-32LE BOM
- enc = 'utf-32be';
- else if (buf.readUInt32LE(0) === 0xFEFF) // UTF-32LE BOM
- enc = 'utf-32le';
- else {
- // No BOM found. Try to deduce encoding from initial content.
- // Using the wrong endian-ism for UTF-32 will very often result in codepoints that are beyond
- // the valid Unicode limit of 0x10FFFF. That will be used as the primary determinant.
- //
- // Further, we can suppose the content is mostly plain ASCII chars (U+00**).
- // So, we count ASCII as if it was LE or BE, and decide from that.
- var invalidLE = 0, invalidBE = 0;
- var asciiCharsLE = 0, asciiCharsBE = 0, // Counts of chars in both positions
- _len = Math.min(buf.length - (buf.length % 4), 128); // Len is always even.
+ outer_loop:
+ for (var i = 0; i < bufs.length; i++) {
+ var buf = bufs[i];
+ for (var j = 0; j < buf.length; j++) {
+ b.push(buf[j]);
+ if (b.length === 4) {
+ if (charsProcessed === 0) {
+ // Check BOM first.
+ if (b[0] === 0xFF && b[1] === 0xFE && b[2] === 0 && b[3] === 0) {
+ return 'utf-32le';
+ }
+ if (b[0] === 0 && b[1] === 0 && b[2] === 0xFE && b[3] === 0xFF) {
+ return 'utf-32be';
+ }
+ }
- for (var i = 0; i < _len; i += 4) {
- var b0 = buf[i], b1 = buf[i + 1], b2 = buf[i + 2], b3 = buf[i + 3];
+ if (b[0] !== 0 || b[1] > 0x10) invalidBE++;
+ if (b[3] !== 0 || b[2] > 0x10) invalidLE++;
- if (b0 !== 0 || b1 > 0x10) ++invalidBE;
- if (b3 !== 0 || b2 > 0x10) ++invalidLE;
+ if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++;
+ if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++;
- if (b0 === 0 && b1 === 0 && b2 === 0 && b3 !== 0) asciiCharsBE++;
- if (b0 !== 0 && b1 === 0 && b2 === 0 && b3 === 0) asciiCharsLE++;
+ b.length = 0;
+ charsProcessed++;
+
+ if (charsProcessed >= 100) {
+ break outer_loop;
+ }
}
-
- if (invalidBE < invalidLE)
- enc = 'utf-32be';
- else if (invalidLE < invalidBE)
- enc = 'utf-32le';
- if (asciiCharsBE > asciiCharsLE)
- enc = 'utf-32be';
- else if (asciiCharsBE < asciiCharsLE)
- enc = 'utf-32le';
}
}
- return enc;
+ // Make decisions.
+ if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return 'utf-32be';
+ if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return 'utf-32le';
+
+ // Couldn't decide (likely all zeros or not enough data).
+ return defaultEncoding || 'utf-32le';
}
/***/ }),
-/* 308 */
+/* 399 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var Buffer = __webpack_require__(34).Buffer;
+var Buffer = __webpack_require__(37).Buffer;
// Note: UTF16-LE (or UCS2) codec is Node.js native. See encodings/internal.js
@@ -52684,6 +56167,7 @@ Utf16BEDecoder.prototype.write = function(buf) {
}
Utf16BEDecoder.prototype.end = function() {
+ this.overflowByte = -1;
}
@@ -52726,8 +56210,8 @@ Utf16Encoder.prototype.end = function() {
function Utf16Decoder(options, codec) {
this.decoder = null;
- this.initialBytes = [];
- this.initialBytesLen = 0;
+ this.initialBufs = [];
+ this.initialBufsLen = 0;
this.options = options || {};
this.iconv = codec.iconv;
@@ -52736,17 +56220,22 @@ function Utf16Decoder(options, codec) {
Utf16Decoder.prototype.write = function(buf) {
if (!this.decoder) {
// Codec is not chosen yet. Accumulate initial bytes.
- this.initialBytes.push(buf);
- this.initialBytesLen += buf.length;
+ this.initialBufs.push(buf);
+ this.initialBufsLen += buf.length;
- if (this.initialBytesLen < 16) // We need more bytes to use space heuristic (see below)
+ if (this.initialBufsLen < 16) // We need more bytes to use space heuristic (see below)
return '';
// We have enough bytes -> detect endianness.
- var buf = Buffer.concat(this.initialBytes),
- encoding = detectEncoding(buf, this.options.defaultEncoding);
+ var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
this.decoder = this.iconv.getDecoder(encoding, this.options);
- this.initialBytes.length = this.initialBytesLen = 0;
+
+ var resStr = '';
+ for (var i = 0; i < this.initialBufs.length; i++)
+ resStr += this.decoder.write(this.initialBufs[i]);
+
+ this.initialBufs.length = this.initialBufsLen = 0;
+ return resStr;
}
return this.decoder.write(buf);
@@ -52754,59 +56243,73 @@ Utf16Decoder.prototype.write = function(buf) {
Utf16Decoder.prototype.end = function() {
if (!this.decoder) {
- var buf = Buffer.concat(this.initialBytes),
- encoding = detectEncoding(buf, this.options.defaultEncoding);
+ var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
this.decoder = this.iconv.getDecoder(encoding, this.options);
- var res = this.decoder.write(buf),
- trail = this.decoder.end();
+ var resStr = '';
+ for (var i = 0; i < this.initialBufs.length; i++)
+ resStr += this.decoder.write(this.initialBufs[i]);
- return trail ? (res + trail) : res;
+ var trail = this.decoder.end();
+ if (trail)
+ resStr += trail;
+
+ this.initialBufs.length = this.initialBufsLen = 0;
+ return resStr;
}
return this.decoder.end();
}
-function detectEncoding(buf, defaultEncoding) {
- var enc = defaultEncoding || 'utf-16le';
+function detectEncoding(bufs, defaultEncoding) {
+ var b = [];
+ var charsProcessed = 0;
+ var asciiCharsLE = 0, asciiCharsBE = 0; // Number of ASCII chars when decoded as LE or BE.
- if (buf.length >= 2) {
- // Check BOM.
- if (buf[0] == 0xFE && buf[1] == 0xFF) // UTF-16BE BOM
- enc = 'utf-16be';
- else if (buf[0] == 0xFF && buf[1] == 0xFE) // UTF-16LE BOM
- enc = 'utf-16le';
- else {
- // No BOM found. Try to deduce encoding from initial content.
- // Most of the time, the content has ASCII chars (U+00**), but the opposite (U+**00) is uncommon.
- // So, we count ASCII as if it was LE or BE, and decide from that.
- var asciiCharsLE = 0, asciiCharsBE = 0, // Counts of chars in both positions
- _len = Math.min(buf.length - (buf.length % 2), 64); // Len is always even.
+ outer_loop:
+ for (var i = 0; i < bufs.length; i++) {
+ var buf = bufs[i];
+ for (var j = 0; j < buf.length; j++) {
+ b.push(buf[j]);
+ if (b.length === 2) {
+ if (charsProcessed === 0) {
+ // Check BOM first.
+ if (b[0] === 0xFF && b[1] === 0xFE) return 'utf-16le';
+ if (b[0] === 0xFE && b[1] === 0xFF) return 'utf-16be';
+ }
- for (var i = 0; i < _len; i += 2) {
- if (buf[i] === 0 && buf[i+1] !== 0) asciiCharsBE++;
- if (buf[i] !== 0 && buf[i+1] === 0) asciiCharsLE++;
+ if (b[0] === 0 && b[1] !== 0) asciiCharsBE++;
+ if (b[0] !== 0 && b[1] === 0) asciiCharsLE++;
+
+ b.length = 0;
+ charsProcessed++;
+
+ if (charsProcessed >= 100) {
+ break outer_loop;
+ }
}
-
- if (asciiCharsBE > asciiCharsLE)
- enc = 'utf-16be';
- else if (asciiCharsBE < asciiCharsLE)
- enc = 'utf-16le';
}
}
- return enc;
+ // Make decisions.
+ // Most of the time, the content has ASCII chars (U+00**), but the opposite (U+**00) is uncommon.
+ // So, we count ASCII as if it was LE or BE, and decide from that.
+ if (asciiCharsBE > asciiCharsLE) return 'utf-16be';
+ if (asciiCharsBE < asciiCharsLE) return 'utf-16le';
+
+ // Couldn't decide (likely all zeros or not enough data).
+ return defaultEncoding || 'utf-16le';
}
/***/ }),
-/* 309 */
+/* 400 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var Buffer = __webpack_require__(34).Buffer;
+var Buffer = __webpack_require__(37).Buffer;
// UTF-7 codec, according to https://tools.ietf.org/html/rfc2152
// See also below a UTF-7-IMAP codec, according to http://tools.ietf.org/html/rfc3501#section-5.1.3
@@ -52881,7 +56384,7 @@ Utf7Decoder.prototype.write = function(buf) {
if (i == lastI && buf[i] == minusChar) {// "+-" -> "+"
res += "+";
} else {
- var b64str = base64Accum + buf.slice(lastI, i).toString();
+ var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i), "ascii");
res += this.iconv.decode(Buffer.from(b64str, 'base64'), "utf16-be");
}
@@ -52898,7 +56401,7 @@ Utf7Decoder.prototype.write = function(buf) {
if (!inBase64) {
res += this.iconv.decode(buf.slice(lastI), "ascii"); // Write direct chars.
} else {
- var b64str = base64Accum + buf.slice(lastI).toString();
+ var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii");
var canBeDecoded = b64str.length - (b64str.length % 8); // Minimal chunk: 2 quads -> 2x3 bytes -> 3 chars.
base64Accum = b64str.slice(canBeDecoded); // The rest will be decoded in future.
@@ -53052,7 +56555,7 @@ Utf7IMAPDecoder.prototype.write = function(buf) {
if (i == lastI && buf[i] == minusChar) { // "&-" -> "&"
res += "&";
} else {
- var b64str = base64Accum + buf.slice(lastI, i).toString().replace(/,/g, '/');
+ var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i), "ascii").replace(/,/g, '/');
res += this.iconv.decode(Buffer.from(b64str, 'base64'), "utf16-be");
}
@@ -53069,7 +56572,7 @@ Utf7IMAPDecoder.prototype.write = function(buf) {
if (!inBase64) {
res += this.iconv.decode(buf.slice(lastI), "ascii"); // Write direct chars.
} else {
- var b64str = base64Accum + buf.slice(lastI).toString().replace(/,/g, '/');
+ var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, '/');
var canBeDecoded = b64str.length - (b64str.length % 8); // Minimal chunk: 2 quads -> 2x3 bytes -> 3 chars.
base64Accum = b64str.slice(canBeDecoded); // The rest will be decoded in future.
@@ -53098,12 +56601,12 @@ Utf7IMAPDecoder.prototype.end = function() {
/***/ }),
-/* 310 */
+/* 401 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var Buffer = __webpack_require__(34).Buffer;
+var Buffer = __webpack_require__(37).Buffer;
// Single-byte codec. Needs a 'chars' string parameter that contains 256 or 128 chars that
// correspond to encoded bytes (if 128 - then lower half is ASCII).
@@ -53177,7 +56680,7 @@ SBCSDecoder.prototype.end = function() {
/***/ }),
-/* 311 */
+/* 402 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -53363,7 +56866,7 @@ module.exports = {
/***/ }),
-/* 312 */
+/* 403 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -53820,12 +57323,12 @@ module.exports = {
}
/***/ }),
-/* 313 */
+/* 404 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var Buffer = __webpack_require__(34).Buffer;
+var Buffer = __webpack_require__(37).Buffer;
// Multibyte codec. In this scheme, a character is represented by 1 or more bytes.
// Our codec supports UTF-16 surrogates, extensions for GB18030 and unicode sequences.
@@ -53875,6 +57378,48 @@ function DBCSCodec(codecOptions, iconv) {
for (var i = 0; i < mappingTable.length; i++)
this._addDecodeChunk(mappingTable[i]);
+ // Load & create GB18030 tables when needed.
+ if (typeof codecOptions.gb18030 === 'function') {
+ this.gb18030 = codecOptions.gb18030(); // Load GB18030 ranges.
+
+ // Add GB18030 common decode nodes.
+ var commonThirdByteNodeIdx = this.decodeTables.length;
+ this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+
+ var commonFourthByteNodeIdx = this.decodeTables.length;
+ this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+
+ // Fill out the tree
+ var firstByteNode = this.decodeTables[0];
+ for (var i = 0x81; i <= 0xFE; i++) {
+ var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i]];
+ for (var j = 0x30; j <= 0x39; j++) {
+ if (secondByteNode[j] === UNASSIGNED) {
+ secondByteNode[j] = NODE_START - commonThirdByteNodeIdx;
+ } else if (secondByteNode[j] > NODE_START) {
+ throw new Error("gb18030 decode tables conflict at byte 2");
+ }
+
+ var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]];
+ for (var k = 0x81; k <= 0xFE; k++) {
+ if (thirdByteNode[k] === UNASSIGNED) {
+ thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx;
+ } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) {
+ continue;
+ } else if (thirdByteNode[k] > NODE_START) {
+ throw new Error("gb18030 decode tables conflict at byte 3");
+ }
+
+ var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]];
+ for (var l = 0x30; l <= 0x39; l++) {
+ if (fourthByteNode[l] === UNASSIGNED)
+ fourthByteNode[l] = GB18030_CODE;
+ }
+ }
+ }
+ }
+ }
+
this.defaultCharUnicode = iconv.defaultCharUnicode;
@@ -53918,30 +57463,6 @@ function DBCSCodec(codecOptions, iconv) {
this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)];
if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]['?'];
if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0);
-
-
- // Load & create GB18030 tables when needed.
- if (typeof codecOptions.gb18030 === 'function') {
- this.gb18030 = codecOptions.gb18030(); // Load GB18030 ranges.
-
- // Add GB18030 decode tables.
- var thirdByteNodeIdx = this.decodeTables.length;
- var thirdByteNode = this.decodeTables[thirdByteNodeIdx] = UNASSIGNED_NODE.slice(0);
-
- var fourthByteNodeIdx = this.decodeTables.length;
- var fourthByteNode = this.decodeTables[fourthByteNodeIdx] = UNASSIGNED_NODE.slice(0);
-
- for (var i = 0x81; i <= 0xFE; i++) {
- var secondByteNodeIdx = NODE_START - this.decodeTables[0][i];
- var secondByteNode = this.decodeTables[secondByteNodeIdx];
- for (var j = 0x30; j <= 0x39; j++)
- secondByteNode[j] = NODE_START - thirdByteNodeIdx;
- }
- for (var i = 0x81; i <= 0xFE; i++)
- thirdByteNode[i] = NODE_START - fourthByteNodeIdx;
- for (var i = 0x30; i <= 0x39; i++)
- fourthByteNode[i] = GB18030_CODE
- }
}
DBCSCodec.prototype.encoder = DBCSEncoder;
@@ -53950,7 +57471,7 @@ DBCSCodec.prototype.decoder = DBCSDecoder;
// Decoder helpers
DBCSCodec.prototype._getDecodeTrieNode = function(addr) {
var bytes = [];
- for (; addr > 0; addr >>= 8)
+ for (; addr > 0; addr >>>= 8)
bytes.push(addr & 0xFF);
if (bytes.length == 0)
bytes.push(0);
@@ -54075,19 +57596,32 @@ DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) {
DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) {
var node = this.decodeTables[nodeIdx];
+ var hasValues = false;
+ var subNodeEmpty = {};
for (var i = 0; i < 0x100; i++) {
var uCode = node[i];
var mbCode = prefix + i;
if (skipEncodeChars[mbCode])
continue;
- if (uCode >= 0)
+ if (uCode >= 0) {
this._setEncodeChar(uCode, mbCode);
- else if (uCode <= NODE_START)
- this._fillEncodeTable(NODE_START - uCode, mbCode << 8, skipEncodeChars);
- else if (uCode <= SEQ_START)
+ hasValues = true;
+ } else if (uCode <= NODE_START) {
+ var subNodeIdx = NODE_START - uCode;
+ if (!subNodeEmpty[subNodeIdx]) { // Skip empty subtrees (they are too large in gb18030).
+ var newPrefix = (mbCode << 8) >>> 0; // NOTE: '>>> 0' keeps 32-bit num positive.
+ if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars))
+ hasValues = true;
+ else
+ subNodeEmpty[subNodeIdx] = true;
+ }
+ } else if (uCode <= SEQ_START) {
this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode);
+ hasValues = true;
+ }
}
+ return hasValues;
}
@@ -54214,10 +57748,15 @@ DBCSEncoder.prototype.write = function(str) {
newBuf[j++] = dbcsCode >> 8; // high byte
newBuf[j++] = dbcsCode & 0xFF; // low byte
}
- else {
+ else if (dbcsCode < 0x1000000) {
newBuf[j++] = dbcsCode >> 16;
newBuf[j++] = (dbcsCode >> 8) & 0xFF;
newBuf[j++] = dbcsCode & 0xFF;
+ } else {
+ newBuf[j++] = dbcsCode >>> 24;
+ newBuf[j++] = (dbcsCode >>> 16) & 0xFF;
+ newBuf[j++] = (dbcsCode >>> 8) & 0xFF;
+ newBuf[j++] = dbcsCode & 0xFF;
}
}
@@ -54266,7 +57805,7 @@ DBCSEncoder.prototype.findIdx = findIdx;
function DBCSDecoder(options, codec) {
// Decoder state
this.nodeIdx = 0;
- this.prevBuf = Buffer.alloc(0);
+ this.prevBytes = [];
// Static data
this.decodeTables = codec.decodeTables;
@@ -54278,15 +57817,12 @@ function DBCSDecoder(options, codec) {
DBCSDecoder.prototype.write = function(buf) {
var newBuf = Buffer.alloc(buf.length*2),
nodeIdx = this.nodeIdx,
- prevBuf = this.prevBuf, prevBufOffset = this.prevBuf.length,
- seqStart = -this.prevBuf.length, // idx of the start of current parsed sequence.
+ prevBytes = this.prevBytes, prevOffset = this.prevBytes.length,
+ seqStart = -this.prevBytes.length, // idx of the start of current parsed sequence.
uCode;
- if (prevBufOffset > 0) // Make prev buf overlap a little to make it easier to slice later.
- prevBuf = Buffer.concat([prevBuf, buf.slice(0, 10)]);
-
for (var i = 0, j = 0; i < buf.length; i++) {
- var curByte = (i >= 0) ? buf[i] : prevBuf[i + prevBufOffset];
+ var curByte = (i >= 0) ? buf[i] : prevBytes[i + prevOffset];
// Lookup in current trie node.
var uCode = this.decodeTables[nodeIdx][curByte];
@@ -54296,13 +57832,18 @@ DBCSDecoder.prototype.write = function(buf) {
}
else if (uCode === UNASSIGNED) { // Unknown char.
// TODO: Callback with seq.
- //var curSeq = (seqStart >= 0) ? buf.slice(seqStart, i+1) : prevBuf.slice(seqStart + prevBufOffset, i+1 + prevBufOffset);
- i = seqStart; // Try to parse again, after skipping first byte of the sequence ('i' will be incremented by 'for' cycle).
uCode = this.defaultCharUnicode.charCodeAt(0);
+ i = seqStart; // Skip one byte ('i' will be incremented by the for loop) and try to parse again.
}
else if (uCode === GB18030_CODE) {
- var curSeq = (seqStart >= 0) ? buf.slice(seqStart, i+1) : prevBuf.slice(seqStart + prevBufOffset, i+1 + prevBufOffset);
- var ptr = (curSeq[0]-0x81)*12600 + (curSeq[1]-0x30)*1260 + (curSeq[2]-0x81)*10 + (curSeq[3]-0x30);
+ if (i >= 3) {
+ var ptr = (buf[i-3]-0x81)*12600 + (buf[i-2]-0x30)*1260 + (buf[i-1]-0x81)*10 + (curByte-0x30);
+ } else {
+ var ptr = (prevBytes[i-3+prevOffset]-0x81)*12600 +
+ (((i-2 >= 0) ? buf[i-2] : prevBytes[i-2+prevOffset])-0x30)*1260 +
+ (((i-1 >= 0) ? buf[i-1] : prevBytes[i-1+prevOffset])-0x81)*10 +
+ (curByte-0x30);
+ }
var idx = findIdx(this.gb18030.gbChars, ptr);
uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx];
}
@@ -54323,13 +57864,13 @@ DBCSDecoder.prototype.write = function(buf) {
throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte);
// Write the character to buffer, handling higher planes using surrogate pair.
- if (uCode > 0xFFFF) {
+ if (uCode >= 0x10000) {
uCode -= 0x10000;
- var uCodeLead = 0xD800 + Math.floor(uCode / 0x400);
+ var uCodeLead = 0xD800 | (uCode >> 10);
newBuf[j++] = uCodeLead & 0xFF;
newBuf[j++] = uCodeLead >> 8;
- uCode = 0xDC00 + uCode % 0x400;
+ uCode = 0xDC00 | (uCode & 0x3FF);
}
newBuf[j++] = uCode & 0xFF;
newBuf[j++] = uCode >> 8;
@@ -54339,7 +57880,10 @@ DBCSDecoder.prototype.write = function(buf) {
}
this.nodeIdx = nodeIdx;
- this.prevBuf = (seqStart >= 0) ? buf.slice(seqStart) : prevBuf.slice(seqStart + prevBufOffset);
+ this.prevBytes = (seqStart >= 0)
+ ? Array.prototype.slice.call(buf, seqStart)
+ : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf));
+
return newBuf.slice(0, j).toString('ucs2');
}
@@ -54347,18 +57891,19 @@ DBCSDecoder.prototype.end = function() {
var ret = '';
// Try to parse all remaining chars.
- while (this.prevBuf.length > 0) {
+ while (this.prevBytes.length > 0) {
// Skip 1 character in the buffer.
ret += this.defaultCharUnicode;
- var buf = this.prevBuf.slice(1);
+ var bytesArr = this.prevBytes.slice(1);
// Parse remaining as usual.
- this.prevBuf = Buffer.alloc(0);
+ this.prevBytes = [];
this.nodeIdx = 0;
- if (buf.length > 0)
- ret += this.write(buf);
+ if (bytesArr.length > 0)
+ ret += this.write(bytesArr);
}
+ this.prevBytes = [];
this.nodeIdx = 0;
return ret;
}
@@ -54370,7 +57915,7 @@ function findIdx(table, val) {
var l = 0, r = table.length;
while (l < r-1) { // always table[l] <= val < table[r]
- var mid = l + Math.floor((r-l+1)/2);
+ var mid = l + ((r-l+1) >> 1);
if (table[mid] <= val)
l = mid;
else
@@ -54382,7 +57927,7 @@ function findIdx(table, val) {
/***/ }),
-/* 314 */
+/* 405 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -54428,7 +57973,7 @@ module.exports = {
'shiftjis': {
type: '_dbcs',
- table: function() { return __webpack_require__(315) },
+ table: function() { return __webpack_require__(406) },
encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E},
encodeSkipVals: [{from: 0xED40, to: 0xF940}],
},
@@ -54445,7 +57990,7 @@ module.exports = {
'eucjp': {
type: '_dbcs',
- table: function() { return __webpack_require__(316) },
+ table: function() { return __webpack_require__(407) },
encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E},
},
@@ -54472,13 +58017,13 @@ module.exports = {
'936': 'cp936',
'cp936': {
type: '_dbcs',
- table: function() { return __webpack_require__(109) },
+ table: function() { return __webpack_require__(172) },
},
// GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
'gbk': {
type: '_dbcs',
- table: function() { return __webpack_require__(109).concat(__webpack_require__(176)) },
+ table: function() { return __webpack_require__(172).concat(__webpack_require__(251)) },
},
'xgbk': 'gbk',
'isoir58': 'gbk',
@@ -54490,8 +58035,8 @@ module.exports = {
// http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
'gb18030': {
type: '_dbcs',
- table: function() { return __webpack_require__(109).concat(__webpack_require__(176)) },
- gb18030: function() { return __webpack_require__(317) },
+ table: function() { return __webpack_require__(172).concat(__webpack_require__(251)) },
+ gb18030: function() { return __webpack_require__(408) },
encodeSkipVals: [0x80],
encodeAdd: {'€': 0xA2E3},
},
@@ -54506,7 +58051,7 @@ module.exports = {
'949': 'cp949',
'cp949': {
type: '_dbcs',
- table: function() { return __webpack_require__(318) },
+ table: function() { return __webpack_require__(409) },
},
'cseuckr': 'cp949',
@@ -54547,14 +58092,14 @@ module.exports = {
'950': 'cp950',
'cp950': {
type: '_dbcs',
- table: function() { return __webpack_require__(177) },
+ table: function() { return __webpack_require__(252) },
},
// Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
'big5': 'big5hkscs',
'big5hkscs': {
type: '_dbcs',
- table: function() { return __webpack_require__(177).concat(__webpack_require__(319)) },
+ table: function() { return __webpack_require__(252).concat(__webpack_require__(410)) },
encodeSkipVals: [0xa2cc],
},
@@ -54565,49 +58110,159 @@ module.exports = {
/***/ }),
-/* 315 */
+/* 406 */
/***/ (function(module) {
module.exports = JSON.parse("[[\"0\",\"\\u0000\",128],[\"a1\",\"。\",62],[\"8140\",\" 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈\",9,\"+-±×\"],[\"8180\",\"÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓\"],[\"81b8\",\"∈∋⊆⊇⊂⊃∪∩\"],[\"81c8\",\"∧∨¬⇒⇔∀∃\"],[\"81da\",\"∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬\"],[\"81f0\",\"ʼn♯♭♪†‡¶\"],[\"81fc\",\"◯\"],[\"824f\",\"0\",9],[\"8260\",\"A\",25],[\"8281\",\"a\",25],[\"829f\",\"ぁ\",82],[\"8340\",\"ァ\",62],[\"8380\",\"ム\",22],[\"839f\",\"Α\",16,\"Σ\",6],[\"83bf\",\"α\",16,\"σ\",6],[\"8440\",\"А\",5,\"ЁЖ\",25],[\"8470\",\"а\",5,\"ёж\",7],[\"8480\",\"о\",17],[\"849f\",\"─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂\"],[\"8740\",\"①\",19,\"Ⅰ\",9],[\"875f\",\"㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡\"],[\"877e\",\"㍻\"],[\"8780\",\"〝〟№㏍℡㊤\",4,\"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪\"],[\"889f\",\"亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭\"],[\"8940\",\"院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円\"],[\"8980\",\"園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改\"],[\"8a40\",\"魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫\"],[\"8a80\",\"橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄\"],[\"8b40\",\"機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救\"],[\"8b80\",\"朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈\"],[\"8c40\",\"掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨\"],[\"8c80\",\"劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向\"],[\"8d40\",\"后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降\"],[\"8d80\",\"項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷\"],[\"8e40\",\"察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止\"],[\"8e80\",\"死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周\"],[\"8f40\",\"宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳\"],[\"8f80\",\"準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾\"],[\"9040\",\"拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨\"],[\"9080\",\"逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線\"],[\"9140\",\"繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻\"],[\"9180\",\"操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只\"],[\"9240\",\"叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄\"],[\"9280\",\"逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓\"],[\"9340\",\"邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬\"],[\"9380\",\"凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入\"],[\"9440\",\"如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅\"],[\"9480\",\"楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美\"],[\"9540\",\"鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷\"],[\"9580\",\"斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋\"],[\"9640\",\"法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆\"],[\"9680\",\"摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒\"],[\"9740\",\"諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲\"],[\"9780\",\"沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯\"],[\"9840\",\"蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕\"],[\"989f\",\"弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲\"],[\"9940\",\"僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭\"],[\"9980\",\"凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨\"],[\"9a40\",\"咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸\"],[\"9a80\",\"噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩\"],[\"9b40\",\"奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀\"],[\"9b80\",\"它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏\"],[\"9c40\",\"廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠\"],[\"9c80\",\"怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛\"],[\"9d40\",\"戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫\"],[\"9d80\",\"捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼\"],[\"9e40\",\"曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎\"],[\"9e80\",\"梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣\"],[\"9f40\",\"檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯\"],[\"9f80\",\"麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌\"],[\"e040\",\"漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝\"],[\"e080\",\"烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱\"],[\"e140\",\"瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿\"],[\"e180\",\"痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬\"],[\"e240\",\"磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰\"],[\"e280\",\"窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆\"],[\"e340\",\"紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷\"],[\"e380\",\"縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋\"],[\"e440\",\"隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤\"],[\"e480\",\"艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈\"],[\"e540\",\"蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬\"],[\"e580\",\"蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞\"],[\"e640\",\"襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧\"],[\"e680\",\"諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊\"],[\"e740\",\"蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜\"],[\"e780\",\"轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮\"],[\"e840\",\"錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙\"],[\"e880\",\"閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰\"],[\"e940\",\"顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃\"],[\"e980\",\"騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈\"],[\"ea40\",\"鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯\"],[\"ea80\",\"黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠堯槇遙瑤凜熙\"],[\"ed40\",\"纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏\"],[\"ed80\",\"塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱\"],[\"ee40\",\"犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙\"],[\"ee80\",\"蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑\"],[\"eeef\",\"ⅰ\",9,\"¬¦'"\"],[\"f040\",\"\",62],[\"f080\",\"\",124],[\"f140\",\"\",62],[\"f180\",\"\",124],[\"f240\",\"\",62],[\"f280\",\"\",124],[\"f340\",\"\",62],[\"f380\",\"\",124],[\"f440\",\"\",62],[\"f480\",\"\",124],[\"f540\",\"\",62],[\"f580\",\"\",124],[\"f640\",\"\",62],[\"f680\",\"\",124],[\"f740\",\"\",62],[\"f780\",\"\",124],[\"f840\",\"\",62],[\"f880\",\"\",124],[\"f940\",\"\"],[\"fa40\",\"ⅰ\",9,\"Ⅰ\",9,\"¬¦'"㈱№℡∵纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊\"],[\"fa80\",\"兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯\"],[\"fb40\",\"涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神\"],[\"fb80\",\"祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙\"],[\"fc40\",\"髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑\"]]");
/***/ }),
-/* 316 */
+/* 407 */
/***/ (function(module) {
module.exports = JSON.parse("[[\"0\",\"\\u0000\",127],[\"8ea1\",\"。\",62],[\"a1a1\",\" 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈\",9,\"+-±×÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇\"],[\"a2a1\",\"◆□■△▲▽▼※〒→←↑↓〓\"],[\"a2ba\",\"∈∋⊆⊇⊂⊃∪∩\"],[\"a2ca\",\"∧∨¬⇒⇔∀∃\"],[\"a2dc\",\"∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬\"],[\"a2f2\",\"ʼn♯♭♪†‡¶\"],[\"a2fe\",\"◯\"],[\"a3b0\",\"0\",9],[\"a3c1\",\"A\",25],[\"a3e1\",\"a\",25],[\"a4a1\",\"ぁ\",82],[\"a5a1\",\"ァ\",85],[\"a6a1\",\"Α\",16,\"Σ\",6],[\"a6c1\",\"α\",16,\"σ\",6],[\"a7a1\",\"А\",5,\"ЁЖ\",25],[\"a7d1\",\"а\",5,\"ёж\",25],[\"a8a1\",\"─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂\"],[\"ada1\",\"①\",19,\"Ⅰ\",9],[\"adc0\",\"㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡\"],[\"addf\",\"㍻〝〟№㏍℡㊤\",4,\"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪\"],[\"b0a1\",\"亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭\"],[\"b1a1\",\"院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応\"],[\"b2a1\",\"押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改\"],[\"b3a1\",\"魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱\"],[\"b4a1\",\"粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄\"],[\"b5a1\",\"機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京\"],[\"b6a1\",\"供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈\"],[\"b7a1\",\"掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲\"],[\"b8a1\",\"検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向\"],[\"b9a1\",\"后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込\"],[\"baa1\",\"此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷\"],[\"bba1\",\"察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時\"],[\"bca1\",\"次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周\"],[\"bda1\",\"宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償\"],[\"bea1\",\"勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾\"],[\"bfa1\",\"拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾\"],[\"c0a1\",\"澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線\"],[\"c1a1\",\"繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎\"],[\"c2a1\",\"臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只\"],[\"c3a1\",\"叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵\"],[\"c4a1\",\"帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓\"],[\"c5a1\",\"邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到\"],[\"c6a1\",\"董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入\"],[\"c7a1\",\"如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦\"],[\"c8a1\",\"函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美\"],[\"c9a1\",\"鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服\"],[\"caa1\",\"福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋\"],[\"cba1\",\"法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満\"],[\"cca1\",\"漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒\"],[\"cda1\",\"諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃\"],[\"cea1\",\"痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯\"],[\"cfa1\",\"蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕\"],[\"d0a1\",\"弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲\"],[\"d1a1\",\"僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨\"],[\"d2a1\",\"辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨\"],[\"d3a1\",\"咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉\"],[\"d4a1\",\"圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩\"],[\"d5a1\",\"奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓\"],[\"d6a1\",\"屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏\"],[\"d7a1\",\"廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚\"],[\"d8a1\",\"悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛\"],[\"d9a1\",\"戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼\"],[\"daa1\",\"據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼\"],[\"dba1\",\"曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍\"],[\"dca1\",\"棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣\"],[\"dda1\",\"檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾\"],[\"dea1\",\"沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌\"],[\"dfa1\",\"漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼\"],[\"e0a1\",\"燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱\"],[\"e1a1\",\"瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰\"],[\"e2a1\",\"癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬\"],[\"e3a1\",\"磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐\"],[\"e4a1\",\"筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆\"],[\"e5a1\",\"紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺\"],[\"e6a1\",\"罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋\"],[\"e7a1\",\"隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙\"],[\"e8a1\",\"茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈\"],[\"e9a1\",\"蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙\"],[\"eaa1\",\"蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞\"],[\"eba1\",\"襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫\"],[\"eca1\",\"譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊\"],[\"eda1\",\"蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸\"],[\"eea1\",\"遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮\"],[\"efa1\",\"錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞\"],[\"f0a1\",\"陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰\"],[\"f1a1\",\"顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷\"],[\"f2a1\",\"髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈\"],[\"f3a1\",\"鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠\"],[\"f4a1\",\"堯槇遙瑤凜熙\"],[\"f9a1\",\"纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德\"],[\"faa1\",\"忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱\"],[\"fba1\",\"犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚\"],[\"fca1\",\"釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑\"],[\"fcf1\",\"ⅰ\",9,\"¬¦'"\"],[\"8fa2af\",\"˘ˇ¸˙˝¯˛˚~΄΅\"],[\"8fa2c2\",\"¡¦¿\"],[\"8fa2eb\",\"ºª©®™¤№\"],[\"8fa6e1\",\"ΆΈΉΊΪ\"],[\"8fa6e7\",\"Ό\"],[\"8fa6e9\",\"ΎΫ\"],[\"8fa6ec\",\"Ώ\"],[\"8fa6f1\",\"άέήίϊΐόςύϋΰώ\"],[\"8fa7c2\",\"Ђ\",10,\"ЎЏ\"],[\"8fa7f2\",\"ђ\",10,\"ўџ\"],[\"8fa9a1\",\"ÆĐ\"],[\"8fa9a4\",\"Ħ\"],[\"8fa9a6\",\"IJ\"],[\"8fa9a8\",\"ŁĿ\"],[\"8fa9ab\",\"ŊØŒ\"],[\"8fa9af\",\"ŦÞ\"],[\"8fa9c1\",\"æđðħıijĸłŀʼnŋøœßŧþ\"],[\"8faaa1\",\"ÁÀÄÂĂǍĀĄÅÃĆĈČÇĊĎÉÈËÊĚĖĒĘ\"],[\"8faaba\",\"ĜĞĢĠĤÍÌÏÎǏİĪĮĨĴĶĹĽĻŃŇŅÑÓÒÖÔǑŐŌÕŔŘŖŚŜŠŞŤŢÚÙÜÛŬǓŰŪŲŮŨǗǛǙǕŴÝŸŶŹŽŻ\"],[\"8faba1\",\"áàäâăǎāąåãćĉčçċďéèëêěėēęǵĝğ\"],[\"8fabbd\",\"ġĥíìïîǐ\"],[\"8fabc5\",\"īįĩĵķĺľļńňņñóòöôǒőōõŕřŗśŝšşťţúùüûŭǔűūųůũǘǜǚǖŵýÿŷźžż\"],[\"8fb0a1\",\"丂丄丅丌丒丟丣两丨丫丮丯丰丵乀乁乄乇乑乚乜乣乨乩乴乵乹乿亍亖亗亝亯亹仃仐仚仛仠仡仢仨仯仱仳仵份仾仿伀伂伃伈伋伌伒伕伖众伙伮伱你伳伵伷伹伻伾佀佂佈佉佋佌佒佔佖佘佟佣佪佬佮佱佷佸佹佺佽佾侁侂侄\"],[\"8fb1a1\",\"侅侉侊侌侎侐侒侓侔侗侙侚侞侟侲侷侹侻侼侽侾俀俁俅俆俈俉俋俌俍俏俒俜俠俢俰俲俼俽俿倀倁倄倇倊倌倎倐倓倗倘倛倜倝倞倢倧倮倰倲倳倵偀偁偂偅偆偊偌偎偑偒偓偗偙偟偠偢偣偦偧偪偭偰偱倻傁傃傄傆傊傎傏傐\"],[\"8fb2a1\",\"傒傓傔傖傛傜傞\",4,\"傪傯傰傹傺傽僀僃僄僇僌僎僐僓僔僘僜僝僟僢僤僦僨僩僯僱僶僺僾儃儆儇儈儋儌儍儎僲儐儗儙儛儜儝儞儣儧儨儬儭儯儱儳儴儵儸儹兂兊兏兓兕兗兘兟兤兦兾冃冄冋冎冘冝冡冣冭冸冺冼冾冿凂\"],[\"8fb3a1\",\"凈减凑凒凓凕凘凞凢凥凮凲凳凴凷刁刂刅划刓刕刖刘刢刨刱刲刵刼剅剉剕剗剘剚剜剟剠剡剦剮剷剸剹劀劂劅劊劌劓劕劖劗劘劚劜劤劥劦劧劯劰劶劷劸劺劻劽勀勄勆勈勌勏勑勔勖勛勜勡勥勨勩勪勬勰勱勴勶勷匀匃匊匋\"],[\"8fb4a1\",\"匌匑匓匘匛匜匞匟匥匧匨匩匫匬匭匰匲匵匼匽匾卂卌卋卙卛卡卣卥卬卭卲卹卾厃厇厈厎厓厔厙厝厡厤厪厫厯厲厴厵厷厸厺厽叀叅叏叒叓叕叚叝叞叠另叧叵吂吓吚吡吧吨吪启吱吴吵呃呄呇呍呏呞呢呤呦呧呩呫呭呮呴呿\"],[\"8fb5a1\",\"咁咃咅咈咉咍咑咕咖咜咟咡咦咧咩咪咭咮咱咷咹咺咻咿哆哊响哎哠哪哬哯哶哼哾哿唀唁唅唈唉唌唍唎唕唪唫唲唵唶唻唼唽啁啇啉啊啍啐啑啘啚啛啞啠啡啤啦啿喁喂喆喈喎喏喑喒喓喔喗喣喤喭喲喿嗁嗃嗆嗉嗋嗌嗎嗑嗒\"],[\"8fb6a1\",\"嗓嗗嗘嗛嗞嗢嗩嗶嗿嘅嘈嘊嘍\",5,\"嘙嘬嘰嘳嘵嘷嘹嘻嘼嘽嘿噀噁噃噄噆噉噋噍噏噔噞噠噡噢噣噦噩噭噯噱噲噵嚄嚅嚈嚋嚌嚕嚙嚚嚝嚞嚟嚦嚧嚨嚩嚫嚬嚭嚱嚳嚷嚾囅囉囊囋囏囐囌囍囙囜囝囟囡囤\",4,\"囱囫园\"],[\"8fb7a1\",\"囶囷圁圂圇圊圌圑圕圚圛圝圠圢圣圤圥圩圪圬圮圯圳圴圽圾圿坅坆坌坍坒坢坥坧坨坫坭\",4,\"坳坴坵坷坹坺坻坼坾垁垃垌垔垗垙垚垜垝垞垟垡垕垧垨垩垬垸垽埇埈埌埏埕埝埞埤埦埧埩埭埰埵埶埸埽埾埿堃堄堈堉埡\"],[\"8fb8a1\",\"堌堍堛堞堟堠堦堧堭堲堹堿塉塌塍塏塐塕塟塡塤塧塨塸塼塿墀墁墇墈墉墊墌墍墏墐墔墖墝墠墡墢墦墩墱墲壄墼壂壈壍壎壐壒壔壖壚壝壡壢壩壳夅夆夋夌夒夓夔虁夝夡夣夤夨夯夰夳夵夶夿奃奆奒奓奙奛奝奞奟奡奣奫奭\"],[\"8fb9a1\",\"奯奲奵奶她奻奼妋妌妎妒妕妗妟妤妧妭妮妯妰妳妷妺妼姁姃姄姈姊姍姒姝姞姟姣姤姧姮姯姱姲姴姷娀娄娌娍娎娒娓娞娣娤娧娨娪娭娰婄婅婇婈婌婐婕婞婣婥婧婭婷婺婻婾媋媐媓媖媙媜媞媟媠媢媧媬媱媲媳媵媸媺媻媿\"],[\"8fbaa1\",\"嫄嫆嫈嫏嫚嫜嫠嫥嫪嫮嫵嫶嫽嬀嬁嬈嬗嬴嬙嬛嬝嬡嬥嬭嬸孁孋孌孒孖孞孨孮孯孼孽孾孿宁宄宆宊宎宐宑宓宔宖宨宩宬宭宯宱宲宷宺宼寀寁寍寏寖\",4,\"寠寯寱寴寽尌尗尞尟尣尦尩尫尬尮尰尲尵尶屙屚屜屢屣屧屨屩\"],[\"8fbba1\",\"屭屰屴屵屺屻屼屽岇岈岊岏岒岝岟岠岢岣岦岪岲岴岵岺峉峋峒峝峗峮峱峲峴崁崆崍崒崫崣崤崦崧崱崴崹崽崿嵂嵃嵆嵈嵕嵑嵙嵊嵟嵠嵡嵢嵤嵪嵭嵰嵹嵺嵾嵿嶁嶃嶈嶊嶒嶓嶔嶕嶙嶛嶟嶠嶧嶫嶰嶴嶸嶹巃巇巋巐巎巘巙巠巤\"],[\"8fbca1\",\"巩巸巹帀帇帍帒帔帕帘帟帠帮帨帲帵帾幋幐幉幑幖幘幛幜幞幨幪\",4,\"幰庀庋庎庢庤庥庨庪庬庱庳庽庾庿廆廌廋廎廑廒廔廕廜廞廥廫异弆弇弈弎弙弜弝弡弢弣弤弨弫弬弮弰弴弶弻弽弿彀彄彅彇彍彐彔彘彛彠彣彤彧\"],[\"8fbda1\",\"彯彲彴彵彸彺彽彾徉徍徏徖徜徝徢徧徫徤徬徯徰徱徸忄忇忈忉忋忐\",4,\"忞忡忢忨忩忪忬忭忮忯忲忳忶忺忼怇怊怍怓怔怗怘怚怟怤怭怳怵恀恇恈恉恌恑恔恖恗恝恡恧恱恾恿悂悆悈悊悎悑悓悕悘悝悞悢悤悥您悰悱悷\"],[\"8fbea1\",\"悻悾惂惄惈惉惊惋惎惏惔惕惙惛惝惞惢惥惲惵惸惼惽愂愇愊愌愐\",4,\"愖愗愙愜愞愢愪愫愰愱愵愶愷愹慁慅慆慉慞慠慬慲慸慻慼慿憀憁憃憄憋憍憒憓憗憘憜憝憟憠憥憨憪憭憸憹憼懀懁懂懎懏懕懜懝懞懟懡懢懧懩懥\"],[\"8fbfa1\",\"懬懭懯戁戃戄戇戓戕戜戠戢戣戧戩戫戹戽扂扃扄扆扌扐扑扒扔扖扚扜扤扭扯扳扺扽抍抎抏抐抦抨抳抶抷抺抾抿拄拎拕拖拚拪拲拴拼拽挃挄挊挋挍挐挓挖挘挩挪挭挵挶挹挼捁捂捃捄捆捊捋捎捒捓捔捘捛捥捦捬捭捱捴捵\"],[\"8fc0a1\",\"捸捼捽捿掂掄掇掊掐掔掕掙掚掞掤掦掭掮掯掽揁揅揈揎揑揓揔揕揜揠揥揪揬揲揳揵揸揹搉搊搐搒搔搘搞搠搢搤搥搩搪搯搰搵搽搿摋摏摑摒摓摔摚摛摜摝摟摠摡摣摭摳摴摻摽撅撇撏撐撑撘撙撛撝撟撡撣撦撨撬撳撽撾撿\"],[\"8fc1a1\",\"擄擉擊擋擌擎擐擑擕擗擤擥擩擪擭擰擵擷擻擿攁攄攈攉攊攏攓攔攖攙攛攞攟攢攦攩攮攱攺攼攽敃敇敉敐敒敔敟敠敧敫敺敽斁斅斊斒斕斘斝斠斣斦斮斲斳斴斿旂旈旉旎旐旔旖旘旟旰旲旴旵旹旾旿昀昄昈昉昍昑昒昕昖昝\"],[\"8fc2a1\",\"昞昡昢昣昤昦昩昪昫昬昮昰昱昳昹昷晀晅晆晊晌晑晎晗晘晙晛晜晠晡曻晪晫晬晾晳晵晿晷晸晹晻暀晼暋暌暍暐暒暙暚暛暜暟暠暤暭暱暲暵暻暿曀曂曃曈曌曎曏曔曛曟曨曫曬曮曺朅朇朎朓朙朜朠朢朳朾杅杇杈杌杔杕杝\"],[\"8fc3a1\",\"杦杬杮杴杶杻极构枎枏枑枓枖枘枙枛枰枱枲枵枻枼枽柹柀柂柃柅柈柉柒柗柙柜柡柦柰柲柶柷桒栔栙栝栟栨栧栬栭栯栰栱栳栻栿桄桅桊桌桕桗桘桛桫桮\",4,\"桵桹桺桻桼梂梄梆梈梖梘梚梜梡梣梥梩梪梮梲梻棅棈棌棏\"],[\"8fc4a1\",\"棐棑棓棖棙棜棝棥棨棪棫棬棭棰棱棵棶棻棼棽椆椉椊椐椑椓椖椗椱椳椵椸椻楂楅楉楎楗楛楣楤楥楦楨楩楬楰楱楲楺楻楿榀榍榒榖榘榡榥榦榨榫榭榯榷榸榺榼槅槈槑槖槗槢槥槮槯槱槳槵槾樀樁樃樏樑樕樚樝樠樤樨樰樲\"],[\"8fc5a1\",\"樴樷樻樾樿橅橆橉橊橎橐橑橒橕橖橛橤橧橪橱橳橾檁檃檆檇檉檋檑檛檝檞檟檥檫檯檰檱檴檽檾檿櫆櫉櫈櫌櫐櫔櫕櫖櫜櫝櫤櫧櫬櫰櫱櫲櫼櫽欂欃欆欇欉欏欐欑欗欛欞欤欨欫欬欯欵欶欻欿歆歊歍歒歖歘歝歠歧歫歮歰歵歽\"],[\"8fc6a1\",\"歾殂殅殗殛殟殠殢殣殨殩殬殭殮殰殸殹殽殾毃毄毉毌毖毚毡毣毦毧毮毱毷毹毿氂氄氅氉氍氎氐氒氙氟氦氧氨氬氮氳氵氶氺氻氿汊汋汍汏汒汔汙汛汜汫汭汯汴汶汸汹汻沅沆沇沉沔沕沗沘沜沟沰沲沴泂泆泍泏泐泑泒泔泖\"],[\"8fc7a1\",\"泚泜泠泧泩泫泬泮泲泴洄洇洊洎洏洑洓洚洦洧洨汧洮洯洱洹洼洿浗浞浟浡浥浧浯浰浼涂涇涑涒涔涖涗涘涪涬涴涷涹涽涿淄淈淊淎淏淖淛淝淟淠淢淥淩淯淰淴淶淼渀渄渞渢渧渲渶渹渻渼湄湅湈湉湋湏湑湒湓湔湗湜湝湞\"],[\"8fc8a1\",\"湢湣湨湳湻湽溍溓溙溠溧溭溮溱溳溻溿滀滁滃滇滈滊滍滎滏滫滭滮滹滻滽漄漈漊漌漍漖漘漚漛漦漩漪漯漰漳漶漻漼漭潏潑潒潓潗潙潚潝潞潡潢潨潬潽潾澃澇澈澋澌澍澐澒澓澔澖澚澟澠澥澦澧澨澮澯澰澵澶澼濅濇濈濊\"],[\"8fc9a1\",\"濚濞濨濩濰濵濹濼濽瀀瀅瀆瀇瀍瀗瀠瀣瀯瀴瀷瀹瀼灃灄灈灉灊灋灔灕灝灞灎灤灥灬灮灵灶灾炁炅炆炔\",4,\"炛炤炫炰炱炴炷烊烑烓烔烕烖烘烜烤烺焃\",4,\"焋焌焏焞焠焫焭焯焰焱焸煁煅煆煇煊煋煐煒煗煚煜煞煠\"],[\"8fcaa1\",\"煨煹熀熅熇熌熒熚熛熠熢熯熰熲熳熺熿燀燁燄燋燌燓燖燙燚燜燸燾爀爇爈爉爓爗爚爝爟爤爫爯爴爸爹牁牂牃牅牎牏牐牓牕牖牚牜牞牠牣牨牫牮牯牱牷牸牻牼牿犄犉犍犎犓犛犨犭犮犱犴犾狁狇狉狌狕狖狘狟狥狳狴狺狻\"],[\"8fcba1\",\"狾猂猄猅猇猋猍猒猓猘猙猞猢猤猧猨猬猱猲猵猺猻猽獃獍獐獒獖獘獝獞獟獠獦獧獩獫獬獮獯獱獷獹獼玀玁玃玅玆玎玐玓玕玗玘玜玞玟玠玢玥玦玪玫玭玵玷玹玼玽玿珅珆珉珋珌珏珒珓珖珙珝珡珣珦珧珩珴珵珷珹珺珻珽\"],[\"8fcca1\",\"珿琀琁琄琇琊琑琚琛琤琦琨\",9,\"琹瑀瑃瑄瑆瑇瑋瑍瑑瑒瑗瑝瑢瑦瑧瑨瑫瑭瑮瑱瑲璀璁璅璆璇璉璏璐璑璒璘璙璚璜璟璠璡璣璦璨璩璪璫璮璯璱璲璵璹璻璿瓈瓉瓌瓐瓓瓘瓚瓛瓞瓟瓤瓨瓪瓫瓯瓴瓺瓻瓼瓿甆\"],[\"8fcda1\",\"甒甖甗甠甡甤甧甩甪甯甶甹甽甾甿畀畃畇畈畎畐畒畗畞畟畡畯畱畹\",5,\"疁疅疐疒疓疕疙疜疢疤疴疺疿痀痁痄痆痌痎痏痗痜痟痠痡痤痧痬痮痯痱痹瘀瘂瘃瘄瘇瘈瘊瘌瘏瘒瘓瘕瘖瘙瘛瘜瘝瘞瘣瘥瘦瘩瘭瘲瘳瘵瘸瘹\"],[\"8fcea1\",\"瘺瘼癊癀癁癃癄癅癉癋癕癙癟癤癥癭癮癯癱癴皁皅皌皍皕皛皜皝皟皠皢\",6,\"皪皭皽盁盅盉盋盌盎盔盙盠盦盨盬盰盱盶盹盼眀眆眊眎眒眔眕眗眙眚眜眢眨眭眮眯眴眵眶眹眽眾睂睅睆睊睍睎睏睒睖睗睜睞睟睠睢\"],[\"8fcfa1\",\"睤睧睪睬睰睲睳睴睺睽瞀瞄瞌瞍瞔瞕瞖瞚瞟瞢瞧瞪瞮瞯瞱瞵瞾矃矉矑矒矕矙矞矟矠矤矦矪矬矰矱矴矸矻砅砆砉砍砎砑砝砡砢砣砭砮砰砵砷硃硄硇硈硌硎硒硜硞硠硡硣硤硨硪确硺硾碊碏碔碘碡碝碞碟碤碨碬碭碰碱碲碳\"],[\"8fd0a1\",\"碻碽碿磇磈磉磌磎磒磓磕磖磤磛磟磠磡磦磪磲磳礀磶磷磺磻磿礆礌礐礚礜礞礟礠礥礧礩礭礱礴礵礻礽礿祄祅祆祊祋祏祑祔祘祛祜祧祩祫祲祹祻祼祾禋禌禑禓禔禕禖禘禛禜禡禨禩禫禯禱禴禸离秂秄秇秈秊秏秔秖秚秝秞\"],[\"8fd1a1\",\"秠秢秥秪秫秭秱秸秼稂稃稇稉稊稌稑稕稛稞稡稧稫稭稯稰稴稵稸稹稺穄穅穇穈穌穕穖穙穜穝穟穠穥穧穪穭穵穸穾窀窂窅窆窊窋窐窑窔窞窠窣窬窳窵窹窻窼竆竉竌竎竑竛竨竩竫竬竱竴竻竽竾笇笔笟笣笧笩笪笫笭笮笯笰\"],[\"8fd2a1\",\"笱笴笽笿筀筁筇筎筕筠筤筦筩筪筭筯筲筳筷箄箉箎箐箑箖箛箞箠箥箬箯箰箲箵箶箺箻箼箽篂篅篈篊篔篖篗篙篚篛篨篪篲篴篵篸篹篺篼篾簁簂簃簄簆簉簋簌簎簏簙簛簠簥簦簨簬簱簳簴簶簹簺籆籊籕籑籒籓籙\",5],[\"8fd3a1\",\"籡籣籧籩籭籮籰籲籹籼籽粆粇粏粔粞粠粦粰粶粷粺粻粼粿糄糇糈糉糍糏糓糔糕糗糙糚糝糦糩糫糵紃紇紈紉紏紑紒紓紖紝紞紣紦紪紭紱紼紽紾絀絁絇絈絍絑絓絗絙絚絜絝絥絧絪絰絸絺絻絿綁綂綃綅綆綈綋綌綍綑綖綗綝\"],[\"8fd4a1\",\"綞綦綧綪綳綶綷綹緂\",4,\"緌緍緎緗緙縀緢緥緦緪緫緭緱緵緶緹緺縈縐縑縕縗縜縝縠縧縨縬縭縯縳縶縿繄繅繇繎繐繒繘繟繡繢繥繫繮繯繳繸繾纁纆纇纊纍纑纕纘纚纝纞缼缻缽缾缿罃罄罇罏罒罓罛罜罝罡罣罤罥罦罭\"],[\"8fd5a1\",\"罱罽罾罿羀羋羍羏羐羑羖羗羜羡羢羦羪羭羴羼羿翀翃翈翎翏翛翟翣翥翨翬翮翯翲翺翽翾翿耇耈耊耍耎耏耑耓耔耖耝耞耟耠耤耦耬耮耰耴耵耷耹耺耼耾聀聄聠聤聦聭聱聵肁肈肎肜肞肦肧肫肸肹胈胍胏胒胔胕胗胘胠胭胮\"],[\"8fd6a1\",\"胰胲胳胶胹胺胾脃脋脖脗脘脜脞脠脤脧脬脰脵脺脼腅腇腊腌腒腗腠腡腧腨腩腭腯腷膁膐膄膅膆膋膎膖膘膛膞膢膮膲膴膻臋臃臅臊臎臏臕臗臛臝臞臡臤臫臬臰臱臲臵臶臸臹臽臿舀舃舏舓舔舙舚舝舡舢舨舲舴舺艃艄艅艆\"],[\"8fd7a1\",\"艋艎艏艑艖艜艠艣艧艭艴艻艽艿芀芁芃芄芇芉芊芎芑芔芖芘芚芛芠芡芣芤芧芨芩芪芮芰芲芴芷芺芼芾芿苆苐苕苚苠苢苤苨苪苭苯苶苷苽苾茀茁茇茈茊茋荔茛茝茞茟茡茢茬茭茮茰茳茷茺茼茽荂荃荄荇荍荎荑荕荖荗荰荸\"],[\"8fd8a1\",\"荽荿莀莂莄莆莍莒莔莕莘莙莛莜莝莦莧莩莬莾莿菀菇菉菏菐菑菔菝荓菨菪菶菸菹菼萁萆萊萏萑萕萙莭萯萹葅葇葈葊葍葏葑葒葖葘葙葚葜葠葤葥葧葪葰葳葴葶葸葼葽蒁蒅蒒蒓蒕蒞蒦蒨蒩蒪蒯蒱蒴蒺蒽蒾蓀蓂蓇蓈蓌蓏蓓\"],[\"8fd9a1\",\"蓜蓧蓪蓯蓰蓱蓲蓷蔲蓺蓻蓽蔂蔃蔇蔌蔎蔐蔜蔞蔢蔣蔤蔥蔧蔪蔫蔯蔳蔴蔶蔿蕆蕏\",4,\"蕖蕙蕜\",6,\"蕤蕫蕯蕹蕺蕻蕽蕿薁薅薆薉薋薌薏薓薘薝薟薠薢薥薧薴薶薷薸薼薽薾薿藂藇藊藋藎薭藘藚藟藠藦藨藭藳藶藼\"],[\"8fdaa1\",\"藿蘀蘄蘅蘍蘎蘐蘑蘒蘘蘙蘛蘞蘡蘧蘩蘶蘸蘺蘼蘽虀虂虆虒虓虖虗虘虙虝虠\",4,\"虩虬虯虵虶虷虺蚍蚑蚖蚘蚚蚜蚡蚦蚧蚨蚭蚱蚳蚴蚵蚷蚸蚹蚿蛀蛁蛃蛅蛑蛒蛕蛗蛚蛜蛠蛣蛥蛧蚈蛺蛼蛽蜄蜅蜇蜋蜎蜏蜐蜓蜔蜙蜞蜟蜡蜣\"],[\"8fdba1\",\"蜨蜮蜯蜱蜲蜹蜺蜼蜽蜾蝀蝃蝅蝍蝘蝝蝡蝤蝥蝯蝱蝲蝻螃\",6,\"螋螌螐螓螕螗螘螙螞螠螣螧螬螭螮螱螵螾螿蟁蟈蟉蟊蟎蟕蟖蟙蟚蟜蟟蟢蟣蟤蟪蟫蟭蟱蟳蟸蟺蟿蠁蠃蠆蠉蠊蠋蠐蠙蠒蠓蠔蠘蠚蠛蠜蠞蠟蠨蠭蠮蠰蠲蠵\"],[\"8fdca1\",\"蠺蠼衁衃衅衈衉衊衋衎衑衕衖衘衚衜衟衠衤衩衱衹衻袀袘袚袛袜袟袠袨袪袺袽袾裀裊\",4,\"裑裒裓裛裞裧裯裰裱裵裷褁褆褍褎褏褕褖褘褙褚褜褠褦褧褨褰褱褲褵褹褺褾襀襂襅襆襉襏襒襗襚襛襜襡襢襣襫襮襰襳襵襺\"],[\"8fdda1\",\"襻襼襽覉覍覐覔覕覛覜覟覠覥覰覴覵覶覷覼觔\",4,\"觥觩觫觭觱觳觶觹觽觿訄訅訇訏訑訒訔訕訞訠訢訤訦訫訬訯訵訷訽訾詀詃詅詇詉詍詎詓詖詗詘詜詝詡詥詧詵詶詷詹詺詻詾詿誀誃誆誋誏誐誒誖誗誙誟誧誩誮誯誳\"],[\"8fdea1\",\"誶誷誻誾諃諆諈諉諊諑諓諔諕諗諝諟諬諰諴諵諶諼諿謅謆謋謑謜謞謟謊謭謰謷謼譂\",4,\"譈譒譓譔譙譍譞譣譭譶譸譹譼譾讁讄讅讋讍讏讔讕讜讞讟谸谹谽谾豅豇豉豋豏豑豓豔豗豘豛豝豙豣豤豦豨豩豭豳豵豶豻豾貆\"],[\"8fdfa1\",\"貇貋貐貒貓貙貛貜貤貹貺賅賆賉賋賏賖賕賙賝賡賨賬賯賰賲賵賷賸賾賿贁贃贉贒贗贛赥赩赬赮赿趂趄趈趍趐趑趕趞趟趠趦趫趬趯趲趵趷趹趻跀跅跆跇跈跊跎跑跔跕跗跙跤跥跧跬跰趼跱跲跴跽踁踄踅踆踋踑踔踖踠踡踢\"],[\"8fe0a1\",\"踣踦踧踱踳踶踷踸踹踽蹀蹁蹋蹍蹎蹏蹔蹛蹜蹝蹞蹡蹢蹩蹬蹭蹯蹰蹱蹹蹺蹻躂躃躉躐躒躕躚躛躝躞躢躧躩躭躮躳躵躺躻軀軁軃軄軇軏軑軔軜軨軮軰軱軷軹軺軭輀輂輇輈輏輐輖輗輘輞輠輡輣輥輧輨輬輭輮輴輵輶輷輺轀轁\"],[\"8fe1a1\",\"轃轇轏轑\",4,\"轘轝轞轥辝辠辡辤辥辦辵辶辸达迀迁迆迊迋迍运迒迓迕迠迣迤迨迮迱迵迶迻迾适逄逈逌逘逛逨逩逯逪逬逭逳逴逷逿遃遄遌遛遝遢遦遧遬遰遴遹邅邈邋邌邎邐邕邗邘邙邛邠邡邢邥邰邲邳邴邶邽郌邾郃\"],[\"8fe2a1\",\"郄郅郇郈郕郗郘郙郜郝郟郥郒郶郫郯郰郴郾郿鄀鄄鄅鄆鄈鄍鄐鄔鄖鄗鄘鄚鄜鄞鄠鄥鄢鄣鄧鄩鄮鄯鄱鄴鄶鄷鄹鄺鄼鄽酃酇酈酏酓酗酙酚酛酡酤酧酭酴酹酺酻醁醃醅醆醊醎醑醓醔醕醘醞醡醦醨醬醭醮醰醱醲醳醶醻醼醽醿\"],[\"8fe3a1\",\"釂釃釅釓釔釗釙釚釞釤釥釩釪釬\",5,\"釷釹釻釽鈀鈁鈄鈅鈆鈇鈉鈊鈌鈐鈒鈓鈖鈘鈜鈝鈣鈤鈥鈦鈨鈮鈯鈰鈳鈵鈶鈸鈹鈺鈼鈾鉀鉂鉃鉆鉇鉊鉍鉎鉏鉑鉘鉙鉜鉝鉠鉡鉥鉧鉨鉩鉮鉯鉰鉵\",4,\"鉻鉼鉽鉿銈銉銊銍銎銒銗\"],[\"8fe4a1\",\"銙銟銠銤銥銧銨銫銯銲銶銸銺銻銼銽銿\",4,\"鋅鋆鋇鋈鋋鋌鋍鋎鋐鋓鋕鋗鋘鋙鋜鋝鋟鋠鋡鋣鋥鋧鋨鋬鋮鋰鋹鋻鋿錀錂錈錍錑錔錕錜錝錞錟錡錤錥錧錩錪錳錴錶錷鍇鍈鍉鍐鍑鍒鍕鍗鍘鍚鍞鍤鍥鍧鍩鍪鍭鍯鍰鍱鍳鍴鍶\"],[\"8fe5a1\",\"鍺鍽鍿鎀鎁鎂鎈鎊鎋鎍鎏鎒鎕鎘鎛鎞鎡鎣鎤鎦鎨鎫鎴鎵鎶鎺鎩鏁鏄鏅鏆鏇鏉\",4,\"鏓鏙鏜鏞鏟鏢鏦鏧鏹鏷鏸鏺鏻鏽鐁鐂鐄鐈鐉鐍鐎鐏鐕鐖鐗鐟鐮鐯鐱鐲鐳鐴鐻鐿鐽鑃鑅鑈鑊鑌鑕鑙鑜鑟鑡鑣鑨鑫鑭鑮鑯鑱鑲钄钃镸镹\"],[\"8fe6a1\",\"镾閄閈閌閍閎閝閞閟閡閦閩閫閬閴閶閺閽閿闆闈闉闋闐闑闒闓闙闚闝闞闟闠闤闦阝阞阢阤阥阦阬阱阳阷阸阹阺阼阽陁陒陔陖陗陘陡陮陴陻陼陾陿隁隂隃隄隉隑隖隚隝隟隤隥隦隩隮隯隳隺雊雒嶲雘雚雝雞雟雩雯雱雺霂\"],[\"8fe7a1\",\"霃霅霉霚霛霝霡霢霣霨霱霳靁靃靊靎靏靕靗靘靚靛靣靧靪靮靳靶靷靸靻靽靿鞀鞉鞕鞖鞗鞙鞚鞞鞟鞢鞬鞮鞱鞲鞵鞶鞸鞹鞺鞼鞾鞿韁韄韅韇韉韊韌韍韎韐韑韔韗韘韙韝韞韠韛韡韤韯韱韴韷韸韺頇頊頙頍頎頔頖頜頞頠頣頦\"],[\"8fe8a1\",\"頫頮頯頰頲頳頵頥頾顄顇顊顑顒顓顖顗顙顚顢顣顥顦顪顬颫颭颮颰颴颷颸颺颻颿飂飅飈飌飡飣飥飦飧飪飳飶餂餇餈餑餕餖餗餚餛餜餟餢餦餧餫餱\",4,\"餹餺餻餼饀饁饆饇饈饍饎饔饘饙饛饜饞饟饠馛馝馟馦馰馱馲馵\"],[\"8fe9a1\",\"馹馺馽馿駃駉駓駔駙駚駜駞駧駪駫駬駰駴駵駹駽駾騂騃騄騋騌騐騑騖騞騠騢騣騤騧騭騮騳騵騶騸驇驁驄驊驋驌驎驑驔驖驝骪骬骮骯骲骴骵骶骹骻骾骿髁髃髆髈髎髐髒髕髖髗髛髜髠髤髥髧髩髬髲髳髵髹髺髽髿\",4],[\"8feaa1\",\"鬄鬅鬈鬉鬋鬌鬍鬎鬐鬒鬖鬙鬛鬜鬠鬦鬫鬭鬳鬴鬵鬷鬹鬺鬽魈魋魌魕魖魗魛魞魡魣魥魦魨魪\",4,\"魳魵魷魸魹魿鮀鮄鮅鮆鮇鮉鮊鮋鮍鮏鮐鮔鮚鮝鮞鮦鮧鮩鮬鮰鮱鮲鮷鮸鮻鮼鮾鮿鯁鯇鯈鯎鯐鯗鯘鯝鯟鯥鯧鯪鯫鯯鯳鯷鯸\"],[\"8feba1\",\"鯹鯺鯽鯿鰀鰂鰋鰏鰑鰖鰘鰙鰚鰜鰞鰢鰣鰦\",4,\"鰱鰵鰶鰷鰽鱁鱃鱄鱅鱉鱊鱎鱏鱐鱓鱔鱖鱘鱛鱝鱞鱟鱣鱩鱪鱜鱫鱨鱮鱰鱲鱵鱷鱻鳦鳲鳷鳹鴋鴂鴑鴗鴘鴜鴝鴞鴯鴰鴲鴳鴴鴺鴼鵅鴽鵂鵃鵇鵊鵓鵔鵟鵣鵢鵥鵩鵪鵫鵰鵶鵷鵻\"],[\"8feca1\",\"鵼鵾鶃鶄鶆鶊鶍鶎鶒鶓鶕鶖鶗鶘鶡鶪鶬鶮鶱鶵鶹鶼鶿鷃鷇鷉鷊鷔鷕鷖鷗鷚鷞鷟鷠鷥鷧鷩鷫鷮鷰鷳鷴鷾鸊鸂鸇鸎鸐鸑鸒鸕鸖鸙鸜鸝鹺鹻鹼麀麂麃麄麅麇麎麏麖麘麛麞麤麨麬麮麯麰麳麴麵黆黈黋黕黟黤黧黬黭黮黰黱黲黵\"],[\"8feda1\",\"黸黿鼂鼃鼉鼏鼐鼑鼒鼔鼖鼗鼙鼚鼛鼟鼢鼦鼪鼫鼯鼱鼲鼴鼷鼹鼺鼼鼽鼿齁齃\",4,\"齓齕齖齗齘齚齝齞齨齩齭\",4,\"齳齵齺齽龏龐龑龒龔龖龗龞龡龢龣龥\"]]");
/***/ }),
-/* 317 */
+/* 408 */
/***/ (function(module) {
module.exports = JSON.parse("{\"uChars\":[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],\"gbChars\":[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189000]}");
/***/ }),
-/* 318 */
+/* 409 */
/***/ (function(module) {
module.exports = JSON.parse("[[\"0\",\"\\u0000\",127],[\"8141\",\"갂갃갅갆갋\",4,\"갘갞갟갡갢갣갥\",6,\"갮갲갳갴\"],[\"8161\",\"갵갶갷갺갻갽갾갿걁\",9,\"걌걎\",5,\"걕\"],[\"8181\",\"걖걗걙걚걛걝\",18,\"걲걳걵걶걹걻\",4,\"겂겇겈겍겎겏겑겒겓겕\",6,\"겞겢\",5,\"겫겭겮겱\",6,\"겺겾겿곀곂곃곅곆곇곉곊곋곍\",7,\"곖곘\",7,\"곢곣곥곦곩곫곭곮곲곴곷\",4,\"곾곿괁괂괃괅괇\",4,\"괎괐괒괓\"],[\"8241\",\"괔괕괖괗괙괚괛괝괞괟괡\",7,\"괪괫괮\",5],[\"8261\",\"괶괷괹괺괻괽\",6,\"굆굈굊\",5,\"굑굒굓굕굖굗\"],[\"8281\",\"굙\",7,\"굢굤\",7,\"굮굯굱굲굷굸굹굺굾궀궃\",4,\"궊궋궍궎궏궑\",10,\"궞\",5,\"궥\",17,\"궸\",7,\"귂귃귅귆귇귉\",6,\"귒귔\",7,\"귝귞귟귡귢귣귥\",18],[\"8341\",\"귺귻귽귾긂\",5,\"긊긌긎\",5,\"긕\",7],[\"8361\",\"긝\",18,\"긲긳긵긶긹긻긼\"],[\"8381\",\"긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗\",4,\"깞깢깣깤깦깧깪깫깭깮깯깱\",6,\"깺깾\",5,\"꺆\",5,\"꺍\",46,\"꺿껁껂껃껅\",6,\"껎껒\",5,\"껚껛껝\",8],[\"8441\",\"껦껧껩껪껬껮\",5,\"껵껶껷껹껺껻껽\",8],[\"8461\",\"꼆꼉꼊꼋꼌꼎꼏꼑\",18],[\"8481\",\"꼤\",7,\"꼮꼯꼱꼳꼵\",6,\"꼾꽀꽄꽅꽆꽇꽊\",5,\"꽑\",10,\"꽞\",5,\"꽦\",18,\"꽺\",5,\"꾁꾂꾃꾅꾆꾇꾉\",6,\"꾒꾓꾔꾖\",5,\"꾝\",26,\"꾺꾻꾽꾾\"],[\"8541\",\"꾿꿁\",5,\"꿊꿌꿏\",4,\"꿕\",6,\"꿝\",4],[\"8561\",\"꿢\",5,\"꿪\",5,\"꿲꿳꿵꿶꿷꿹\",6,\"뀂뀃\"],[\"8581\",\"뀅\",6,\"뀍뀎뀏뀑뀒뀓뀕\",6,\"뀞\",9,\"뀩\",26,\"끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞\",29,\"끾끿낁낂낃낅\",6,\"낎낐낒\",5,\"낛낝낞낣낤\"],[\"8641\",\"낥낦낧낪낰낲낶낷낹낺낻낽\",6,\"냆냊\",5,\"냒\"],[\"8661\",\"냓냕냖냗냙\",6,\"냡냢냣냤냦\",10],[\"8681\",\"냱\",22,\"넊넍넎넏넑넔넕넖넗넚넞\",4,\"넦넧넩넪넫넭\",6,\"넶넺\",5,\"녂녃녅녆녇녉\",6,\"녒녓녖녗녙녚녛녝녞녟녡\",22,\"녺녻녽녾녿놁놃\",4,\"놊놌놎놏놐놑놕놖놗놙놚놛놝\"],[\"8741\",\"놞\",9,\"놩\",15],[\"8761\",\"놹\",18,\"뇍뇎뇏뇑뇒뇓뇕\"],[\"8781\",\"뇖\",5,\"뇞뇠\",7,\"뇪뇫뇭뇮뇯뇱\",7,\"뇺뇼뇾\",5,\"눆눇눉눊눍\",6,\"눖눘눚\",5,\"눡\",18,\"눵\",6,\"눽\",26,\"뉙뉚뉛뉝뉞뉟뉡\",6,\"뉪\",4],[\"8841\",\"뉯\",4,\"뉶\",5,\"뉽\",6,\"늆늇늈늊\",4],[\"8861\",\"늏늒늓늕늖늗늛\",4,\"늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷\"],[\"8881\",\"늸\",15,\"닊닋닍닎닏닑닓\",4,\"닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉\",6,\"댒댖\",5,\"댝\",54,\"덗덙덚덝덠덡덢덣\"],[\"8941\",\"덦덨덪덬덭덯덲덳덵덶덷덹\",6,\"뎂뎆\",5,\"뎍\"],[\"8961\",\"뎎뎏뎑뎒뎓뎕\",10,\"뎢\",5,\"뎩뎪뎫뎭\"],[\"8981\",\"뎮\",21,\"돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩\",18,\"돽\",18,\"됑\",6,\"됙됚됛됝됞됟됡\",6,\"됪됬\",7,\"됵\",15],[\"8a41\",\"둅\",10,\"둒둓둕둖둗둙\",6,\"둢둤둦\"],[\"8a61\",\"둧\",4,\"둭\",18,\"뒁뒂\"],[\"8a81\",\"뒃\",4,\"뒉\",19,\"뒞\",5,\"뒥뒦뒧뒩뒪뒫뒭\",7,\"뒶뒸뒺\",5,\"듁듂듃듅듆듇듉\",6,\"듑듒듓듔듖\",5,\"듞듟듡듢듥듧\",4,\"듮듰듲\",5,\"듹\",26,\"딖딗딙딚딝\"],[\"8b41\",\"딞\",5,\"딦딫\",4,\"딲딳딵딶딷딹\",6,\"땂땆\"],[\"8b61\",\"땇땈땉땊땎땏땑땒땓땕\",6,\"땞땢\",8],[\"8b81\",\"땫\",52,\"떢떣떥떦떧떩떬떭떮떯떲떶\",4,\"떾떿뗁뗂뗃뗅\",6,\"뗎뗒\",5,\"뗙\",18,\"뗭\",18],[\"8c41\",\"똀\",15,\"똒똓똕똖똗똙\",4],[\"8c61\",\"똞\",6,\"똦\",5,\"똭\",6,\"똵\",5],[\"8c81\",\"똻\",12,\"뙉\",26,\"뙥뙦뙧뙩\",50,\"뚞뚟뚡뚢뚣뚥\",5,\"뚭뚮뚯뚰뚲\",16],[\"8d41\",\"뛃\",16,\"뛕\",8],[\"8d61\",\"뛞\",17,\"뛱뛲뛳뛵뛶뛷뛹뛺\"],[\"8d81\",\"뛻\",4,\"뜂뜃뜄뜆\",33,\"뜪뜫뜭뜮뜱\",6,\"뜺뜼\",7,\"띅띆띇띉띊띋띍\",6,\"띖\",9,\"띡띢띣띥띦띧띩\",6,\"띲띴띶\",5,\"띾띿랁랂랃랅\",6,\"랎랓랔랕랚랛랝랞\"],[\"8e41\",\"랟랡\",6,\"랪랮\",5,\"랶랷랹\",8],[\"8e61\",\"럂\",4,\"럈럊\",19],[\"8e81\",\"럞\",13,\"럮럯럱럲럳럵\",6,\"럾렂\",4,\"렊렋렍렎렏렑\",6,\"렚렜렞\",5,\"렦렧렩렪렫렭\",6,\"렶렺\",5,\"롁롂롃롅\",11,\"롒롔\",7,\"롞롟롡롢롣롥\",6,\"롮롰롲\",5,\"롹롺롻롽\",7],[\"8f41\",\"뢅\",7,\"뢎\",17],[\"8f61\",\"뢠\",7,\"뢩\",6,\"뢱뢲뢳뢵뢶뢷뢹\",4],[\"8f81\",\"뢾뢿룂룄룆\",5,\"룍룎룏룑룒룓룕\",7,\"룞룠룢\",5,\"룪룫룭룮룯룱\",6,\"룺룼룾\",5,\"뤅\",18,\"뤙\",6,\"뤡\",26,\"뤾뤿륁륂륃륅\",6,\"륍륎륐륒\",5],[\"9041\",\"륚륛륝륞륟륡\",6,\"륪륬륮\",5,\"륶륷륹륺륻륽\"],[\"9061\",\"륾\",5,\"릆릈릋릌릏\",15],[\"9081\",\"릟\",12,\"릮릯릱릲릳릵\",6,\"릾맀맂\",5,\"맊맋맍맓\",4,\"맚맜맟맠맢맦맧맩맪맫맭\",6,\"맶맻\",4,\"먂\",5,\"먉\",11,\"먖\",33,\"먺먻먽먾먿멁멃멄멅멆\"],[\"9141\",\"멇멊멌멏멐멑멒멖멗멙멚멛멝\",6,\"멦멪\",5],[\"9161\",\"멲멳멵멶멷멹\",9,\"몆몈몉몊몋몍\",5],[\"9181\",\"몓\",20,\"몪몭몮몯몱몳\",4,\"몺몼몾\",5,\"뫅뫆뫇뫉\",14,\"뫚\",33,\"뫽뫾뫿묁묂묃묅\",7,\"묎묐묒\",5,\"묙묚묛묝묞묟묡\",6],[\"9241\",\"묨묪묬\",7,\"묷묹묺묿\",4,\"뭆뭈뭊뭋뭌뭎뭑뭒\"],[\"9261\",\"뭓뭕뭖뭗뭙\",7,\"뭢뭤\",7,\"뭭\",4],[\"9281\",\"뭲\",21,\"뮉뮊뮋뮍뮎뮏뮑\",18,\"뮥뮦뮧뮩뮪뮫뮭\",6,\"뮵뮶뮸\",7,\"믁믂믃믅믆믇믉\",6,\"믑믒믔\",35,\"믺믻믽믾밁\"],[\"9341\",\"밃\",4,\"밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵\"],[\"9361\",\"밶밷밹\",6,\"뱂뱆뱇뱈뱊뱋뱎뱏뱑\",8],[\"9381\",\"뱚뱛뱜뱞\",37,\"벆벇벉벊벍벏\",4,\"벖벘벛\",4,\"벢벣벥벦벩\",6,\"벲벶\",5,\"벾벿볁볂볃볅\",7,\"볎볒볓볔볖볗볙볚볛볝\",22,\"볷볹볺볻볽\"],[\"9441\",\"볾\",5,\"봆봈봊\",5,\"봑봒봓봕\",8],[\"9461\",\"봞\",5,\"봥\",6,\"봭\",12],[\"9481\",\"봺\",5,\"뵁\",6,\"뵊뵋뵍뵎뵏뵑\",6,\"뵚\",9,\"뵥뵦뵧뵩\",22,\"붂붃붅붆붋\",4,\"붒붔붖붗붘붛붝\",6,\"붥\",10,\"붱\",6,\"붹\",24],[\"9541\",\"뷒뷓뷖뷗뷙뷚뷛뷝\",11,\"뷪\",5,\"뷱\"],[\"9561\",\"뷲뷳뷵뷶뷷뷹\",6,\"븁븂븄븆\",5,\"븎븏븑븒븓\"],[\"9581\",\"븕\",6,\"븞븠\",35,\"빆빇빉빊빋빍빏\",4,\"빖빘빜빝빞빟빢빣빥빦빧빩빫\",4,\"빲빶\",4,\"빾빿뺁뺂뺃뺅\",6,\"뺎뺒\",5,\"뺚\",13,\"뺩\",14],[\"9641\",\"뺸\",23,\"뻒뻓\"],[\"9661\",\"뻕뻖뻙\",6,\"뻡뻢뻦\",5,\"뻭\",8],[\"9681\",\"뻶\",10,\"뼂\",5,\"뼊\",13,\"뼚뼞\",33,\"뽂뽃뽅뽆뽇뽉\",6,\"뽒뽓뽔뽖\",44],[\"9741\",\"뾃\",16,\"뾕\",8],[\"9761\",\"뾞\",17,\"뾱\",7],[\"9781\",\"뾹\",11,\"뿆\",5,\"뿎뿏뿑뿒뿓뿕\",6,\"뿝뿞뿠뿢\",89,\"쀽쀾쀿\"],[\"9841\",\"쁀\",16,\"쁒\",5,\"쁙쁚쁛\"],[\"9861\",\"쁝쁞쁟쁡\",6,\"쁪\",15],[\"9881\",\"쁺\",21,\"삒삓삕삖삗삙\",6,\"삢삤삦\",5,\"삮삱삲삷\",4,\"삾샂샃샄샆샇샊샋샍샎샏샑\",6,\"샚샞\",5,\"샦샧샩샪샫샭\",6,\"샶샸샺\",5,\"섁섂섃섅섆섇섉\",6,\"섑섒섓섔섖\",5,\"섡섢섥섨섩섪섫섮\"],[\"9941\",\"섲섳섴섵섷섺섻섽섾섿셁\",6,\"셊셎\",5,\"셖셗\"],[\"9961\",\"셙셚셛셝\",6,\"셦셪\",5,\"셱셲셳셵셶셷셹셺셻\"],[\"9981\",\"셼\",8,\"솆\",5,\"솏솑솒솓솕솗\",4,\"솞솠솢솣솤솦솧솪솫솭솮솯솱\",11,\"솾\",5,\"쇅쇆쇇쇉쇊쇋쇍\",6,\"쇕쇖쇙\",6,\"쇡쇢쇣쇥쇦쇧쇩\",6,\"쇲쇴\",7,\"쇾쇿숁숂숃숅\",6,\"숎숐숒\",5,\"숚숛숝숞숡숢숣\"],[\"9a41\",\"숤숥숦숧숪숬숮숰숳숵\",16],[\"9a61\",\"쉆쉇쉉\",6,\"쉒쉓쉕쉖쉗쉙\",6,\"쉡쉢쉣쉤쉦\"],[\"9a81\",\"쉧\",4,\"쉮쉯쉱쉲쉳쉵\",6,\"쉾슀슂\",5,\"슊\",5,\"슑\",6,\"슙슚슜슞\",5,\"슦슧슩슪슫슮\",5,\"슶슸슺\",33,\"싞싟싡싢싥\",5,\"싮싰싲싳싴싵싷싺싽싾싿쌁\",6,\"쌊쌋쌎쌏\"],[\"9b41\",\"쌐쌑쌒쌖쌗쌙쌚쌛쌝\",6,\"쌦쌧쌪\",8],[\"9b61\",\"쌳\",17,\"썆\",7],[\"9b81\",\"썎\",25,\"썪썫썭썮썯썱썳\",4,\"썺썻썾\",5,\"쎅쎆쎇쎉쎊쎋쎍\",50,\"쏁\",22,\"쏚\"],[\"9c41\",\"쏛쏝쏞쏡쏣\",4,\"쏪쏫쏬쏮\",5,\"쏶쏷쏹\",5],[\"9c61\",\"쏿\",8,\"쐉\",6,\"쐑\",9],[\"9c81\",\"쐛\",8,\"쐥\",6,\"쐭쐮쐯쐱쐲쐳쐵\",6,\"쐾\",9,\"쑉\",26,\"쑦쑧쑩쑪쑫쑭\",6,\"쑶쑷쑸쑺\",5,\"쒁\",18,\"쒕\",6,\"쒝\",12],[\"9d41\",\"쒪\",13,\"쒹쒺쒻쒽\",8],[\"9d61\",\"쓆\",25],[\"9d81\",\"쓠\",8,\"쓪\",5,\"쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂\",9,\"씍씎씏씑씒씓씕\",6,\"씝\",10,\"씪씫씭씮씯씱\",6,\"씺씼씾\",5,\"앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩\",6,\"앲앶\",5,\"앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔\"],[\"9e41\",\"얖얙얚얛얝얞얟얡\",7,\"얪\",9,\"얶\"],[\"9e61\",\"얷얺얿\",4,\"엋엍엏엒엓엕엖엗엙\",6,\"엢엤엦엧\"],[\"9e81\",\"엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑\",6,\"옚옝\",6,\"옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉\",6,\"왒왖\",5,\"왞왟왡\",10,\"왭왮왰왲\",5,\"왺왻왽왾왿욁\",6,\"욊욌욎\",5,\"욖욗욙욚욛욝\",6,\"욦\"],[\"9f41\",\"욨욪\",5,\"욲욳욵욶욷욻\",4,\"웂웄웆\",5,\"웎\"],[\"9f61\",\"웏웑웒웓웕\",6,\"웞웟웢\",5,\"웪웫웭웮웯웱웲\"],[\"9f81\",\"웳\",4,\"웺웻웼웾\",5,\"윆윇윉윊윋윍\",6,\"윖윘윚\",5,\"윢윣윥윦윧윩\",6,\"윲윴윶윸윹윺윻윾윿읁읂읃읅\",4,\"읋읎읐읙읚읛읝읞읟읡\",6,\"읩읪읬\",7,\"읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛\",4,\"잢잧\",4,\"잮잯잱잲잳잵잶잷\"],[\"a041\",\"잸잹잺잻잾쟂\",5,\"쟊쟋쟍쟏쟑\",6,\"쟙쟚쟛쟜\"],[\"a061\",\"쟞\",5,\"쟥쟦쟧쟩쟪쟫쟭\",13],[\"a081\",\"쟻\",4,\"젂젃젅젆젇젉젋\",4,\"젒젔젗\",4,\"젞젟젡젢젣젥\",6,\"젮젰젲\",5,\"젹젺젻젽젾젿졁\",6,\"졊졋졎\",5,\"졕\",26,\"졲졳졵졶졷졹졻\",4,\"좂좄좈좉좊좎\",5,\"좕\",7,\"좞좠좢좣좤\"],[\"a141\",\"좥좦좧좩\",18,\"좾좿죀죁\"],[\"a161\",\"죂죃죅죆죇죉죊죋죍\",6,\"죖죘죚\",5,\"죢죣죥\"],[\"a181\",\"죦\",14,\"죶\",5,\"죾죿줁줂줃줇\",4,\"줎 、。·‥…¨〃―∥\∼‘’“”〔〕〈\",9,\"±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬\"],[\"a241\",\"줐줒\",5,\"줙\",18],[\"a261\",\"줭\",6,\"줵\",18],[\"a281\",\"쥈\",7,\"쥒쥓쥕쥖쥗쥙\",6,\"쥢쥤\",7,\"쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®\"],[\"a341\",\"쥱쥲쥳쥵\",6,\"쥽\",10,\"즊즋즍즎즏\"],[\"a361\",\"즑\",6,\"즚즜즞\",16],[\"a381\",\"즯\",16,\"짂짃짅짆짉짋\",4,\"짒짔짗짘짛!\",58,\"₩]\",32,\" ̄\"],[\"a441\",\"짞짟짡짣짥짦짨짩짪짫짮짲\",5,\"짺짻짽짾짿쨁쨂쨃쨄\"],[\"a461\",\"쨅쨆쨇쨊쨎\",5,\"쨕쨖쨗쨙\",12],[\"a481\",\"쨦쨧쨨쨪\",28,\"ㄱ\",93],[\"a541\",\"쩇\",4,\"쩎쩏쩑쩒쩓쩕\",6,\"쩞쩢\",5,\"쩩쩪\"],[\"a561\",\"쩫\",17,\"쩾\",5,\"쪅쪆\"],[\"a581\",\"쪇\",16,\"쪙\",14,\"ⅰ\",9],[\"a5b0\",\"Ⅰ\",9],[\"a5c1\",\"Α\",16,\"Σ\",6],[\"a5e1\",\"α\",16,\"σ\",6],[\"a641\",\"쪨\",19,\"쪾쪿쫁쫂쫃쫅\"],[\"a661\",\"쫆\",5,\"쫎쫐쫒쫔쫕쫖쫗쫚\",5,\"쫡\",6],[\"a681\",\"쫨쫩쫪쫫쫭\",6,\"쫵\",18,\"쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃\",7],[\"a741\",\"쬋\",4,\"쬑쬒쬓쬕쬖쬗쬙\",6,\"쬢\",7],[\"a761\",\"쬪\",22,\"쭂쭃쭄\"],[\"a781\",\"쭅쭆쭇쭊쭋쭍쭎쭏쭑\",6,\"쭚쭛쭜쭞\",5,\"쭥\",7,\"㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙\",9,\"㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰\",9,\"㎀\",4,\"㎺\",5,\"㎐\",4,\"Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆\"],[\"a841\",\"쭭\",10,\"쭺\",14],[\"a861\",\"쮉\",18,\"쮝\",6],[\"a881\",\"쮤\",19,\"쮹\",11,\"ÆÐªĦ\"],[\"a8a6\",\"IJ\"],[\"a8a8\",\"ĿŁØŒºÞŦŊ\"],[\"a8b1\",\"㉠\",27,\"ⓐ\",25,\"①\",14,\"½⅓⅔¼¾⅛⅜⅝⅞\"],[\"a941\",\"쯅\",14,\"쯕\",10],[\"a961\",\"쯠쯡쯢쯣쯥쯦쯨쯪\",18],[\"a981\",\"쯽\",14,\"찎찏찑찒찓찕\",6,\"찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀\",27,\"⒜\",25,\"⑴\",14,\"¹²³⁴ⁿ₁₂₃₄\"],[\"aa41\",\"찥찦찪찫찭찯찱\",6,\"찺찿\",4,\"챆챇챉챊챋챍챎\"],[\"aa61\",\"챏\",4,\"챖챚\",5,\"챡챢챣챥챧챩\",6,\"챱챲\"],[\"aa81\",\"챳챴챶\",29,\"ぁ\",82],[\"ab41\",\"첔첕첖첗첚첛첝첞첟첡\",6,\"첪첮\",5,\"첶첷첹\"],[\"ab61\",\"첺첻첽\",6,\"쳆쳈쳊\",5,\"쳑쳒쳓쳕\",5],[\"ab81\",\"쳛\",8,\"쳥\",6,\"쳭쳮쳯쳱\",12,\"ァ\",85],[\"ac41\",\"쳾쳿촀촂\",5,\"촊촋촍촎촏촑\",6,\"촚촜촞촟촠\"],[\"ac61\",\"촡촢촣촥촦촧촩촪촫촭\",11,\"촺\",4],[\"ac81\",\"촿\",28,\"쵝쵞쵟А\",5,\"ЁЖ\",25],[\"acd1\",\"а\",5,\"ёж\",25],[\"ad41\",\"쵡쵢쵣쵥\",6,\"쵮쵰쵲\",5,\"쵹\",7],[\"ad61\",\"춁\",6,\"춉\",10,\"춖춗춙춚춛춝춞춟\"],[\"ad81\",\"춠춡춢춣춦춨춪\",5,\"춱\",18,\"췅\"],[\"ae41\",\"췆\",5,\"췍췎췏췑\",16],[\"ae61\",\"췢\",5,\"췩췪췫췭췮췯췱\",6,\"췺췼췾\",4],[\"ae81\",\"츃츅츆츇츉츊츋츍\",6,\"츕츖츗츘츚\",5,\"츢츣츥츦츧츩츪츫\"],[\"af41\",\"츬츭츮츯츲츴츶\",19],[\"af61\",\"칊\",13,\"칚칛칝칞칢\",5,\"칪칬\"],[\"af81\",\"칮\",5,\"칶칷칹칺칻칽\",6,\"캆캈캊\",5,\"캒캓캕캖캗캙\"],[\"b041\",\"캚\",5,\"캢캦\",5,\"캮\",12],[\"b061\",\"캻\",5,\"컂\",19],[\"b081\",\"컖\",13,\"컦컧컩컪컭\",6,\"컶컺\",5,\"가각간갇갈갉갊감\",7,\"같\",4,\"갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆\"],[\"b141\",\"켂켃켅켆켇켉\",6,\"켒켔켖\",5,\"켝켞켟켡켢켣\"],[\"b161\",\"켥\",6,\"켮켲\",5,\"켹\",11],[\"b181\",\"콅\",14,\"콖콗콙콚콛콝\",6,\"콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸\"],[\"b241\",\"콭콮콯콲콳콵콶콷콹\",6,\"쾁쾂쾃쾄쾆\",5,\"쾍\"],[\"b261\",\"쾎\",18,\"쾢\",5,\"쾩\"],[\"b281\",\"쾪\",5,\"쾱\",18,\"쿅\",6,\"깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙\"],[\"b341\",\"쿌\",19,\"쿢쿣쿥쿦쿧쿩\"],[\"b361\",\"쿪\",5,\"쿲쿴쿶\",5,\"쿽쿾쿿퀁퀂퀃퀅\",5],[\"b381\",\"퀋\",5,\"퀒\",5,\"퀙\",19,\"끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫\",4,\"낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝\"],[\"b441\",\"퀮\",5,\"퀶퀷퀹퀺퀻퀽\",6,\"큆큈큊\",5],[\"b461\",\"큑큒큓큕큖큗큙\",6,\"큡\",10,\"큮큯\"],[\"b481\",\"큱큲큳큵\",6,\"큾큿킀킂\",18,\"뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫\",4,\"닳담답닷\",4,\"닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥\"],[\"b541\",\"킕\",14,\"킦킧킩킪킫킭\",5],[\"b561\",\"킳킶킸킺\",5,\"탂탃탅탆탇탊\",5,\"탒탖\",4],[\"b581\",\"탛탞탟탡탢탣탥\",6,\"탮탲\",5,\"탹\",11,\"덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸\"],[\"b641\",\"턅\",7,\"턎\",17],[\"b661\",\"턠\",15,\"턲턳턵턶턷턹턻턼턽턾\"],[\"b681\",\"턿텂텆\",5,\"텎텏텑텒텓텕\",6,\"텞텠텢\",5,\"텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗\"],[\"b741\",\"텮\",13,\"텽\",6,\"톅톆톇톉톊\"],[\"b761\",\"톋\",20,\"톢톣톥톦톧\"],[\"b781\",\"톩\",6,\"톲톴톶톷톸톹톻톽톾톿퇁\",14,\"래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩\"],[\"b841\",\"퇐\",7,\"퇙\",17],[\"b861\",\"퇫\",8,\"퇵퇶퇷퇹\",13],[\"b881\",\"툈툊\",5,\"툑\",24,\"륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많\",4,\"맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼\"],[\"b941\",\"툪툫툮툯툱툲툳툵\",6,\"툾퉀퉂\",5,\"퉉퉊퉋퉌\"],[\"b961\",\"퉍\",14,\"퉝\",6,\"퉥퉦퉧퉨\"],[\"b981\",\"퉩\",22,\"튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바\",4,\"받\",4,\"밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗\"],[\"ba41\",\"튍튎튏튒튓튔튖\",5,\"튝튞튟튡튢튣튥\",6,\"튭\"],[\"ba61\",\"튮튯튰튲\",5,\"튺튻튽튾틁틃\",4,\"틊틌\",5],[\"ba81\",\"틒틓틕틖틗틙틚틛틝\",6,\"틦\",9,\"틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤\"],[\"bb41\",\"틻\",4,\"팂팄팆\",5,\"팏팑팒팓팕팗\",4,\"팞팢팣\"],[\"bb61\",\"팤팦팧팪팫팭팮팯팱\",6,\"팺팾\",5,\"퍆퍇퍈퍉\"],[\"bb81\",\"퍊\",31,\"빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤\"],[\"bc41\",\"퍪\",17,\"퍾퍿펁펂펃펅펆펇\"],[\"bc61\",\"펈펉펊펋펎펒\",5,\"펚펛펝펞펟펡\",6,\"펪펬펮\"],[\"bc81\",\"펯\",4,\"펵펶펷펹펺펻펽\",6,\"폆폇폊\",5,\"폑\",5,\"샥샨샬샴샵샷샹섀섄섈섐섕서\",4,\"섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭\"],[\"bd41\",\"폗폙\",7,\"폢폤\",7,\"폮폯폱폲폳폵폶폷\"],[\"bd61\",\"폸폹폺폻폾퐀퐂\",5,\"퐉\",13],[\"bd81\",\"퐗\",5,\"퐞\",25,\"숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰\"],[\"be41\",\"퐸\",7,\"푁푂푃푅\",14],[\"be61\",\"푔\",7,\"푝푞푟푡푢푣푥\",7,\"푮푰푱푲\"],[\"be81\",\"푳\",4,\"푺푻푽푾풁풃\",4,\"풊풌풎\",5,\"풕\",8,\"쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄\",6,\"엌엎\"],[\"bf41\",\"풞\",10,\"풪\",14],[\"bf61\",\"풹\",18,\"퓍퓎퓏퓑퓒퓓퓕\"],[\"bf81\",\"퓖\",5,\"퓝퓞퓠\",7,\"퓩퓪퓫퓭퓮퓯퓱\",6,\"퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염\",5,\"옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨\"],[\"c041\",\"퓾\",5,\"픅픆픇픉픊픋픍\",6,\"픖픘\",5],[\"c061\",\"픞\",25],[\"c081\",\"픸픹픺픻픾픿핁핂핃핅\",6,\"핎핐핒\",5,\"핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응\",7,\"읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊\"],[\"c141\",\"핤핦핧핪핬핮\",5,\"핶핷핹핺핻핽\",6,\"햆햊햋\"],[\"c161\",\"햌햍햎햏햑\",19,\"햦햧\"],[\"c181\",\"햨\",31,\"점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓\"],[\"c241\",\"헊헋헍헎헏헑헓\",4,\"헚헜헞\",5,\"헦헧헩헪헫헭헮\"],[\"c261\",\"헯\",4,\"헶헸헺\",5,\"혂혃혅혆혇혉\",6,\"혒\"],[\"c281\",\"혖\",5,\"혝혞혟혡혢혣혥\",7,\"혮\",9,\"혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻\"],[\"c341\",\"혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝\",4],[\"c361\",\"홢\",4,\"홨홪\",5,\"홲홳홵\",11],[\"c381\",\"횁횂횄횆\",5,\"횎횏횑횒횓횕\",7,\"횞횠횢\",5,\"횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층\"],[\"c441\",\"횫횭횮횯횱\",7,\"횺횼\",7,\"훆훇훉훊훋\"],[\"c461\",\"훍훎훏훐훒훓훕훖훘훚\",5,\"훡훢훣훥훦훧훩\",4],[\"c481\",\"훮훯훱훲훳훴훶\",5,\"훾훿휁휂휃휅\",11,\"휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼\"],[\"c541\",\"휕휖휗휚휛휝휞휟휡\",6,\"휪휬휮\",5,\"휶휷휹\"],[\"c561\",\"휺휻휽\",6,\"흅흆흈흊\",5,\"흒흓흕흚\",4],[\"c581\",\"흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵\",6,\"흾흿힀힂\",5,\"힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜\"],[\"c641\",\"힍힎힏힑\",6,\"힚힜힞\",5],[\"c6a1\",\"퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁\"],[\"c7a1\",\"퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠\"],[\"c8a1\",\"혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝\"],[\"caa1\",\"伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕\"],[\"cba1\",\"匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢\"],[\"cca1\",\"瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械\"],[\"cda1\",\"棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜\"],[\"cea1\",\"科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾\"],[\"cfa1\",\"區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴\"],[\"d0a1\",\"鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣\"],[\"d1a1\",\"朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩\",5,\"那樂\",4,\"諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉\"],[\"d2a1\",\"納臘蠟衲囊娘廊\",4,\"乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧\",5,\"駑魯\",10,\"濃籠聾膿農惱牢磊腦賂雷尿壘\",7,\"嫩訥杻紐勒\",5,\"能菱陵尼泥匿溺多茶\"],[\"d3a1\",\"丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃\"],[\"d4a1\",\"棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅\"],[\"d5a1\",\"蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣\"],[\"d6a1\",\"煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼\"],[\"d7a1\",\"遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬\"],[\"d8a1\",\"立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅\"],[\"d9a1\",\"蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文\"],[\"daa1\",\"汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑\"],[\"dba1\",\"發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖\"],[\"dca1\",\"碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦\"],[\"dda1\",\"孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥\"],[\"dea1\",\"脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索\"],[\"dfa1\",\"傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署\"],[\"e0a1\",\"胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬\"],[\"e1a1\",\"聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁\"],[\"e2a1\",\"戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧\"],[\"e3a1\",\"嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁\"],[\"e4a1\",\"沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額\"],[\"e5a1\",\"櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬\"],[\"e6a1\",\"旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒\"],[\"e7a1\",\"簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳\"],[\"e8a1\",\"烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療\"],[\"e9a1\",\"窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓\"],[\"eaa1\",\"運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜\"],[\"eba1\",\"濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼\"],[\"eca1\",\"議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄\"],[\"eda1\",\"立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長\"],[\"eea1\",\"障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱\"],[\"efa1\",\"煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖\"],[\"f0a1\",\"靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫\"],[\"f1a1\",\"踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只\"],[\"f2a1\",\"咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯\"],[\"f3a1\",\"鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策\"],[\"f4a1\",\"責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢\"],[\"f5a1\",\"椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃\"],[\"f6a1\",\"贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託\"],[\"f7a1\",\"鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑\"],[\"f8a1\",\"阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃\"],[\"f9a1\",\"品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航\"],[\"faa1\",\"行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型\"],[\"fba1\",\"形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵\"],[\"fca1\",\"禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆\"],[\"fda1\",\"爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰\"]]");
/***/ }),
-/* 319 */
+/* 410 */
/***/ (function(module) {
module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅㮕䜶䝄䱇䱀𤊿𣘗𧍒𦺋𧃒䱗𪍑䝏䗚䲅𧱬䴇䪤䚡𦬣爥𥩔𡩣𣸆𣽡晍囻\"],[\"8767\",\"綕夝𨮹㷴霴𧯯寛𡵞媤㘥𩺰嫑宷峼杮薓𩥅瑡璝㡵𡵓𣚞𦀡㻬\"],[\"87a1\",\"𥣞㫵竼龗𤅡𨤍𣇪𠪊𣉞䌊蒄龖鐯䤰蘓墖靊鈘秐稲晠権袝瑌篅枂稬剏遆㓦珄𥶹瓆鿇垳䤯呌䄱𣚎堘穲𧭥讏䚮𦺈䆁𥶙箮𢒼鿈𢓁𢓉𢓌鿉蔄𣖻䂴鿊䓡𪷿拁灮鿋\"],[\"8840\",\"㇀\",4,\"𠄌㇅𠃑𠃍㇆㇇𠃋𡿨㇈𠃊㇉㇊㇋㇌𠄎㇍㇎ĀÁǍÀĒÉĚÈŌÓǑÒÊ̄ẾÊ̌ỀÊāáǎàɑēéěèīíǐìōóǒòūúǔùǖǘǚ\"],[\"88a1\",\"ǜüê̄ếê̌ềêɡ⏚⏛\"],[\"8940\",\"𪎩𡅅\"],[\"8943\",\"攊\"],[\"8946\",\"丽滝鵎釟\"],[\"894c\",\"𧜵撑会伨侨兖兴农凤务动医华发变团声处备夲头学实実岚庆总斉柾栄桥济炼电纤纬纺织经统缆缷艺苏药视设询车轧轮\"],[\"89a1\",\"琑糼緍楆竉刧\"],[\"89ab\",\"醌碸酞肼\"],[\"89b0\",\"贋胶𠧧\"],[\"89b5\",\"肟黇䳍鷉鸌䰾𩷶𧀎鸊𪄳㗁\"],[\"89c1\",\"溚舾甙\"],[\"89c5\",\"䤑马骏龙禇𨑬𡷊𠗐𢫦两亁亀亇亿仫伷㑌侽㹈倃傈㑽㒓㒥円夅凛凼刅争剹劐匧㗇厩㕑厰㕓参吣㕭㕲㚁咓咣咴咹哐哯唘唣唨㖘唿㖥㖿嗗㗅\"],[\"8a40\",\"𧶄唥\"],[\"8a43\",\"𠱂𠴕𥄫喐𢳆㧬𠍁蹆𤶸𩓥䁓𨂾睺𢰸㨴䟕𨅝𦧲𤷪擝𠵼𠾴𠳕𡃴撍蹾𠺖𠰋𠽤𢲩𨉖𤓓\"],[\"8a64\",\"𠵆𩩍𨃩䟴𤺧𢳂骲㩧𩗴㿭㔆𥋇𩟔𧣈𢵄鵮頕\"],[\"8a76\",\"䏙𦂥撴哣𢵌𢯊𡁷㧻𡁯\"],[\"8aa1\",\"𦛚𦜖𧦠擪𥁒𠱃蹨𢆡𨭌𠜱\"],[\"8aac\",\"䠋𠆩㿺塳𢶍\"],[\"8ab2\",\"𤗈𠓼𦂗𠽌𠶖啹䂻䎺\"],[\"8abb\",\"䪴𢩦𡂝膪飵𠶜捹㧾𢝵跀嚡摼㹃\"],[\"8ac9\",\"𪘁𠸉𢫏𢳉\"],[\"8ace\",\"𡃈𣧂㦒㨆𨊛㕸𥹉𢃇噒𠼱𢲲𩜠㒼氽𤸻\"],[\"8adf\",\"𧕴𢺋𢈈𪙛𨳍𠹺𠰴𦠜羓𡃏𢠃𢤹㗻𥇣𠺌𠾍𠺪㾓𠼰𠵇𡅏𠹌\"],[\"8af6\",\"𠺫𠮩𠵈𡃀𡄽㿹𢚖搲𠾭\"],[\"8b40\",\"𣏴𧘹𢯎𠵾𠵿𢱑𢱕㨘𠺘𡃇𠼮𪘲𦭐𨳒𨶙𨳊閪哌苄喹\"],[\"8b55\",\"𩻃鰦骶𧝞𢷮煀腭胬尜𦕲脴㞗卟𨂽醶𠻺𠸏𠹷𠻻㗝𤷫㘉𠳖嚯𢞵𡃉𠸐𠹸𡁸𡅈𨈇𡑕𠹹𤹐𢶤婔𡀝𡀞𡃵𡃶垜𠸑\"],[\"8ba1\",\"𧚔𨋍𠾵𠹻𥅾㜃𠾶𡆀𥋘𪊽𤧚𡠺𤅷𨉼墙剨㘚𥜽箲孨䠀䬬鼧䧧鰟鮍𥭴𣄽嗻㗲嚉丨夂𡯁屮靑𠂆乛亻㔾尣彑忄㣺扌攵歺氵氺灬爫丬犭𤣩罒礻糹罓𦉪㓁\"],[\"8bde\",\"𦍋耂肀𦘒𦥑卝衤见𧢲讠贝钅镸长门𨸏韦页风飞饣𩠐鱼鸟黄歯龜丷𠂇阝户钢\"],[\"8c40\",\"倻淾𩱳龦㷉袏𤅎灷峵䬠𥇍㕙𥴰愢𨨲辧釶熑朙玺𣊁𪄇㲋𡦀䬐磤琂冮𨜏䀉橣𪊺䈣蘏𠩯稪𩥇𨫪靕灍匤𢁾鏴盙𨧣龧矝亣俰傼丯众龨吴綋墒壐𡶶庒庙忂𢜒斋\"],[\"8ca1\",\"𣏹椙橃𣱣泿\"],[\"8ca7\",\"爀𤔅玌㻛𤨓嬕璹讃𥲤𥚕窓篬糃繬苸薗龩袐龪躹龫迏蕟駠鈡龬𨶹𡐿䁱䊢娚\"],[\"8cc9\",\"顨杫䉶圽\"],[\"8cce\",\"藖𤥻芿𧄍䲁𦵴嵻𦬕𦾾龭龮宖龯曧繛湗秊㶈䓃𣉖𢞖䎚䔶\"],[\"8ce6\",\"峕𣬚諹屸㴒𣕑嵸龲煗䕘𤃬𡸣䱷㥸㑊𠆤𦱁諌侴𠈹妿腬顖𩣺弻\"],[\"8d40\",\"𠮟\"],[\"8d42\",\"𢇁𨥭䄂䚻𩁹㼇龳𪆵䃸㟖䛷𦱆䅼𨚲𧏿䕭㣔𥒚䕡䔛䶉䱻䵶䗪㿈𤬏㙡䓞䒽䇭崾嵈嵖㷼㠏嶤嶹㠠㠸幂庽弥徃㤈㤔㤿㥍惗愽峥㦉憷憹懏㦸戬抐拥挘㧸嚱\"],[\"8da1\",\"㨃揢揻搇摚㩋擀崕嘡龟㪗斆㪽旿晓㫲暒㬢朖㭂枤栀㭘桊梄㭲㭱㭻椉楃牜楤榟榅㮼槖㯝橥橴橱檂㯬檙㯲檫檵櫔櫶殁毁毪汵沪㳋洂洆洦涁㳯涤涱渕渘温溆𨧀溻滢滚齿滨滩漤漴㵆𣽁澁澾㵪㵵熷岙㶊瀬㶑灐灔灯灿炉𠌥䏁㗱𠻘\"],[\"8e40\",\"𣻗垾𦻓焾𥟠㙎榢𨯩孴穉𥣡𩓙穥穽𥦬窻窰竂竃燑𦒍䇊竚竝竪䇯咲𥰁笋筕笩𥌎𥳾箢筯莜𥮴𦱿篐萡箒箸𥴠㶭𥱥蒒篺簆簵𥳁籄粃𤢂粦晽𤕸糉糇糦籴糳糵糎\"],[\"8ea1\",\"繧䔝𦹄絝𦻖璍綉綫焵綳緒𤁗𦀩緤㴓緵𡟹緥𨍭縝𦄡𦅚繮纒䌫鑬縧罀罁罇礶𦋐駡羗𦍑羣𡙡𠁨䕜𣝦䔃𨌺翺𦒉者耈耝耨耯𪂇𦳃耻耼聡𢜔䦉𦘦𣷣𦛨朥肧𨩈脇脚墰𢛶汿𦒘𤾸擧𡒊舘𡡞橓𤩥𤪕䑺舩𠬍𦩒𣵾俹𡓽蓢荢𦬊𤦧𣔰𡝳𣷸芪椛芳䇛\"],[\"8f40\",\"蕋苐茚𠸖𡞴㛁𣅽𣕚艻苢茘𣺋𦶣𦬅𦮗𣗎㶿茝嗬莅䔋𦶥莬菁菓㑾𦻔橗蕚㒖𦹂𢻯葘𥯤葱㷓䓤檧葊𣲵祘蒨𦮖𦹷𦹃蓞萏莑䒠蒓蓤𥲑䉀𥳀䕃蔴嫲𦺙䔧蕳䔖枿蘖\"],[\"8fa1\",\"𨘥𨘻藁𧂈蘂𡖂𧃍䕫䕪蘨㙈𡢢号𧎚虾蝱𪃸蟮𢰧螱蟚蠏噡虬桖䘏衅衆𧗠𣶹𧗤衞袜䙛袴袵揁装睷𧜏覇覊覦覩覧覼𨨥觧𧤤𧪽誜瞓釾誐𧩙竩𧬺𣾏䜓𧬸煼謌謟𥐰𥕥謿譌譍誩𤩺讐讛誯𡛟䘕衏貛𧵔𧶏貫㜥𧵓賖𧶘𧶽贒贃𡤐賛灜贑𤳉㻐起\"],[\"9040\",\"趩𨀂𡀔𤦊㭼𨆼𧄌竧躭躶軃鋔輙輭𨍥𨐒辥錃𪊟𠩐辳䤪𨧞𨔽𣶻廸𣉢迹𪀔𨚼𨔁𢌥㦀𦻗逷𨔼𧪾遡𨕬𨘋邨𨜓郄𨛦邮都酧㫰醩釄粬𨤳𡺉鈎沟鉁鉢𥖹銹𨫆𣲛𨬌𥗛\"],[\"90a1\",\"𠴱錬鍫𨫡𨯫炏嫃𨫢𨫥䥥鉄𨯬𨰹𨯿鍳鑛躼閅閦鐦閠濶䊹𢙺𨛘𡉼𣸮䧟氜陻隖䅬隣𦻕懚隶磵𨫠隽双䦡𦲸𠉴𦐐𩂯𩃥𤫑𡤕𣌊霱虂霶䨏䔽䖅𤫩灵孁霛靜𩇕靗孊𩇫靟鐥僐𣂷𣂼鞉鞟鞱鞾韀韒韠𥑬韮琜𩐳響韵𩐝𧥺䫑頴頳顋顦㬎𧅵㵑𠘰𤅜\"],[\"9140\",\"𥜆飊颷飈飇䫿𦴧𡛓喰飡飦飬鍸餹𤨩䭲𩡗𩤅駵騌騻騐驘𥜥㛄𩂱𩯕髠髢𩬅髴䰎鬔鬭𨘀倴鬴𦦨㣃𣁽魐魀𩴾婅𡡣鮎𤉋鰂鯿鰌𩹨鷔𩾷𪆒𪆫𪃡𪄣𪇟鵾鶃𪄴鸎梈\"],[\"91a1\",\"鷄𢅛𪆓𪈠𡤻𪈳鴹𪂹𪊴麐麕麞麢䴴麪麯𤍤黁㭠㧥㴝伲㞾𨰫鼂鼈䮖鐤𦶢鼗鼖鼹嚟嚊齅馸𩂋韲葿齢齩竜龎爖䮾𤥵𤦻煷𤧸𤍈𤩑玞𨯚𡣺禟𨥾𨸶鍩鏳𨩄鋬鎁鏋𨥬𤒹爗㻫睲穃烐𤑳𤏸煾𡟯炣𡢾𣖙㻇𡢅𥐯𡟸㜢𡛻𡠹㛡𡝴𡣑𥽋㜣𡛀坛𤨥𡏾𡊨\"],[\"9240\",\"𡏆𡒶蔃𣚦蔃葕𤦔𧅥𣸱𥕜𣻻𧁒䓴𣛮𩦝𦼦柹㜳㰕㷧塬𡤢栐䁗𣜿𤃡𤂋𤄏𦰡哋嚞𦚱嚒𠿟𠮨𠸍鏆𨬓鎜仸儫㠙𤐶亼𠑥𠍿佋侊𥙑婨𠆫𠏋㦙𠌊𠐔㐵伩𠋀𨺳𠉵諚𠈌亘\"],[\"92a1\",\"働儍侢伃𤨎𣺊佂倮偬傁俌俥偘僼兙兛兝兞湶𣖕𣸹𣺿浲𡢄𣺉冨凃𠗠䓝𠒣𠒒𠒑赺𨪜𠜎剙劤𠡳勡鍮䙺熌𤎌𠰠𤦬𡃤槑𠸝瑹㻞璙琔瑖玘䮎𤪼𤂍叐㖄爏𤃉喴𠍅响𠯆圝鉝雴鍦埝垍坿㘾壋媙𨩆𡛺𡝯𡜐娬妸銏婾嫏娒𥥆𡧳𡡡𤊕㛵洅瑃娡𥺃\"],[\"9340\",\"媁𨯗𠐓鏠璌𡌃焅䥲鐈𨧻鎽㞠尞岞幞幈𡦖𡥼𣫮廍孏𡤃𡤄㜁𡢠㛝𡛾㛓脪𨩇𡶺𣑲𨦨弌弎𡤧𡞫婫𡜻孄蘔𧗽衠恾𢡠𢘫忛㺸𢖯𢖾𩂈𦽳懀𠀾𠁆𢘛憙憘恵𢲛𢴇𤛔𩅍\"],[\"93a1\",\"摱𤙥𢭪㨩𢬢𣑐𩣪𢹸挷𪑛撶挱揑𤧣𢵧护𢲡搻敫楲㯴𣂎𣊭𤦉𣊫唍𣋠𡣙𩐿曎𣊉𣆳㫠䆐𥖄𨬢𥖏𡛼𥕛𥐥磮𣄃𡠪𣈴㑤𣈏𣆂𤋉暎𦴤晫䮓昰𧡰𡷫晣𣋒𣋡昞𥡲㣑𣠺𣞼㮙𣞢𣏾瓐㮖枏𤘪梶栞㯄檾㡣𣟕𤒇樳橒櫉欅𡤒攑梘橌㯗橺歗𣿀𣲚鎠鋲𨯪𨫋\"],[\"9440\",\"銉𨀞𨧜鑧涥漋𤧬浧𣽿㶏渄𤀼娽渊塇洤硂焻𤌚𤉶烱牐犇犔𤞏𤜥兹𤪤𠗫瑺𣻸𣙟𤩊𤤗𥿡㼆㺱𤫟𨰣𣼵悧㻳瓌琼鎇琷䒟𦷪䕑疃㽣𤳙𤴆㽘畕癳𪗆㬙瑨𨫌𤦫𤦎㫻\"],[\"94a1\",\"㷍𤩎㻿𤧅𤣳釺圲鍂𨫣𡡤僟𥈡𥇧睸𣈲眎眏睻𤚗𣞁㩞𤣰琸璛㺿𤪺𤫇䃈𤪖𦆮錇𥖁砞碍碈磒珐祙𧝁𥛣䄎禛蒖禥樭𣻺稺秴䅮𡛦䄲鈵秱𠵌𤦌𠊙𣶺𡝮㖗啫㕰㚪𠇔𠰍竢婙𢛵𥪯𥪜娍𠉛磰娪𥯆竾䇹籝籭䈑𥮳𥺼𥺦糍𤧹𡞰粎籼粮檲緜縇緓罎𦉡\"],[\"9540\",\"𦅜𧭈綗𥺂䉪𦭵𠤖柖𠁎𣗏埄𦐒𦏸𤥢翝笧𠠬𥫩𥵃笌𥸎駦虅驣樜𣐿㧢𤧷𦖭騟𦖠蒀𧄧𦳑䓪脷䐂胆脉腂𦞴飃𦩂艢艥𦩑葓𦶧蘐𧈛媆䅿𡡀嬫𡢡嫤𡣘蚠蜨𣶏蠭𧐢娂\"],[\"95a1\",\"衮佅袇袿裦襥襍𥚃襔𧞅𧞄𨯵𨯙𨮜𨧹㺭蒣䛵䛏㟲訽訜𩑈彍鈫𤊄旔焩烄𡡅鵭貟賩𧷜妚矃姰䍮㛔踪躧𤰉輰轊䋴汘澻𢌡䢛潹溋𡟚鯩㚵𤤯邻邗啱䤆醻鐄𨩋䁢𨫼鐧𨰝𨰻蓥訫閙閧閗閖𨴴瑅㻂𤣿𤩂𤏪㻧𣈥随𨻧𨹦𨹥㻌𤧭𤩸𣿮琒瑫㻼靁𩂰\"],[\"9640\",\"桇䨝𩂓𥟟靝鍨𨦉𨰦𨬯𦎾銺嬑譩䤼珹𤈛鞛靱餸𠼦巁𨯅𤪲頟𩓚鋶𩗗釥䓀𨭐𤩧𨭤飜𨩅㼀鈪䤥萔餻饍𧬆㷽馛䭯馪驜𨭥𥣈檏騡嫾騯𩣱䮐𩥈馼䮽䮗鍽塲𡌂堢𤦸\"],[\"96a1\",\"𡓨硄𢜟𣶸棅㵽鑘㤧慐𢞁𢥫愇鱏鱓鱻鰵鰐魿鯏𩸭鮟𪇵𪃾鴡䲮𤄄鸘䲰鴌𪆴𪃭𪃳𩤯鶥蒽𦸒𦿟𦮂藼䔳𦶤𦺄𦷰萠藮𦸀𣟗𦁤秢𣖜𣙀䤭𤧞㵢鏛銾鍈𠊿碹鉷鑍俤㑀遤𥕝砽硔碶硋𡝗𣇉𤥁㚚佲濚濙瀞瀞吔𤆵垻壳垊鴖埗焴㒯𤆬燫𦱀𤾗嬨𡞵𨩉\"],[\"9740\",\"愌嫎娋䊼𤒈㜬䭻𨧼鎻鎸𡣖𠼝葲𦳀𡐓𤋺𢰦𤏁妔𣶷𦝁綨𦅛𦂤𤦹𤦋𨧺鋥珢㻩璴𨭣𡢟㻡𤪳櫘珳珻㻖𤨾𤪔𡟙𤩦𠎧𡐤𤧥瑈𤤖炥𤥶銄珦鍟𠓾錱𨫎𨨖鎆𨯧𥗕䤵𨪂煫\"],[\"97a1\",\"𤥃𠳿嚤𠘚𠯫𠲸唂秄𡟺緾𡛂𤩐𡡒䔮鐁㜊𨫀𤦭妰𡢿𡢃𧒄媡㛢𣵛㚰鉟婹𨪁𡡢鍴㳍𠪴䪖㦊僴㵩㵌𡎜煵䋻𨈘渏𩃤䓫浗𧹏灧沯㳖𣿭𣸭渂漌㵯𠏵畑㚼㓈䚀㻚䡱姄鉮䤾轁𨰜𦯀堒埈㛖𡑒烾𤍢𤩱𢿣𡊰𢎽梹楧𡎘𣓥𧯴𣛟𨪃𣟖𣏺𤲟樚𣚭𦲷萾䓟䓎\"],[\"9840\",\"𦴦𦵑𦲂𦿞漗𧄉茽𡜺菭𦲀𧁓𡟛妉媂𡞳婡婱𡤅𤇼㜭姯𡜼㛇熎鎐暚𤊥婮娫𤊓樫𣻹𧜶𤑛𤋊焝𤉙𨧡侰𦴨峂𤓎𧹍𤎽樌𤉖𡌄炦焳𤏩㶥泟勇𤩏繥姫崯㷳彜𤩝𡟟綤萦\"],[\"98a1\",\"咅𣫺𣌀𠈔坾𠣕𠘙㿥𡾞𪊶瀃𩅛嵰玏糓𨩙𩐠俈翧狍猐𧫴猸猹𥛶獁獈㺩𧬘遬燵𤣲珡臶㻊県㻑沢国琙琞琟㻢㻰㻴㻺瓓㼎㽓畂畭畲疍㽼痈痜㿀癍㿗癴㿜発𤽜熈嘣覀塩䀝睃䀹条䁅㗛瞘䁪䁯属瞾矋売砘点砜䂨砹硇硑硦葈𥔵礳栃礲䄃\"],[\"9940\",\"䄉禑禙辻稆込䅧窑䆲窼艹䇄竏竛䇏両筢筬筻簒簛䉠䉺类粜䊌粸䊔糭输烀𠳏総緔緐緽羮羴犟䎗耠耥笹耮耱联㷌垴炠肷胩䏭脌猪脎脒畠脔䐁㬹腖腙腚\"],[\"99a1\",\"䐓堺腼膄䐥膓䐭膥埯臁臤艔䒏芦艶苊苘苿䒰荗险榊萅烵葤惣蒈䔄蒾蓡蓸蔐蔸蕒䔻蕯蕰藠䕷虲蚒蚲蛯际螋䘆䘗袮裿褤襇覑𧥧訩訸誔誴豑賔賲贜䞘塟跃䟭仮踺嗘坔蹱嗵躰䠷軎転軤軭軲辷迁迊迌逳駄䢭飠鈓䤞鈨鉘鉫銱銮銿\"],[\"9a40\",\"鋣鋫鋳鋴鋽鍃鎄鎭䥅䥑麿鐗匁鐝鐭鐾䥪鑔鑹锭関䦧间阳䧥枠䨤靀䨵鞲韂噔䫤惨颹䬙飱塄餎餙冴餜餷饂饝饢䭰駅䮝騼鬏窃魩鮁鯝鯱鯴䱭鰠㝯𡯂鵉鰺\"],[\"9aa1\",\"黾噐鶓鶽鷀鷼银辶鹻麬麱麽黆铜黢黱黸竈齄𠂔𠊷𠎠椚铃妬𠓗塀铁㞹𠗕𠘕𠙶𡚺块煳𠫂𠫍𠮿呪吆𠯋咞𠯻𠰻𠱓𠱥𠱼惧𠲍噺𠲵𠳝𠳭𠵯𠶲𠷈楕鰯螥𠸄𠸎𠻗𠾐𠼭𠹳尠𠾼帋𡁜𡁏𡁶朞𡁻𡂈𡂖㙇𡂿𡃓𡄯𡄻卤蒭𡋣𡍵𡌶讁𡕷𡘙𡟃𡟇乸炻𡠭𡥪\"],[\"9b40\",\"𡨭𡩅𡰪𡱰𡲬𡻈拃𡻕𡼕熘桕𢁅槩㛈𢉼𢏗𢏺𢜪𢡱𢥏苽𢥧𢦓𢫕覥𢫨辠𢬎鞸𢬿顇骽𢱌\"],[\"9b62\",\"𢲈𢲷𥯨𢴈𢴒𢶷𢶕𢹂𢽴𢿌𣀳𣁦𣌟𣏞徱晈暿𧩹𣕧𣗳爁𤦺矗𣘚𣜖纇𠍆墵朎\"],[\"9ba1\",\"椘𣪧𧙗𥿢𣸑𣺹𧗾𢂚䣐䪸𤄙𨪚𤋮𤌍𤀻𤌴𤎖𤩅𠗊凒𠘑妟𡺨㮾𣳿𤐄𤓖垈𤙴㦛𤜯𨗨𩧉㝢𢇃譞𨭎駖𤠒𤣻𤨕爉𤫀𠱸奥𤺥𤾆𠝹軚𥀬劏圿煱𥊙𥐙𣽊𤪧喼𥑆𥑮𦭒釔㑳𥔿𧘲𥕞䜘𥕢𥕦𥟇𤤿𥡝偦㓻𣏌惞𥤃䝼𨥈𥪮𥮉𥰆𡶐垡煑澶𦄂𧰒遖𦆲𤾚譢𦐂𦑊\"],[\"9c40\",\"嵛𦯷輶𦒄𡤜諪𤧶𦒈𣿯𦔒䯀𦖿𦚵𢜛鑥𥟡憕娧晉侻嚹𤔡𦛼乪𤤴陖涏𦲽㘘襷𦞙𦡮𦐑𦡞營𦣇筂𩃀𠨑𦤦鄄𦤹穅鷰𦧺騦𦨭㙟𦑩𠀡禃𦨴𦭛崬𣔙菏𦮝䛐𦲤画补𦶮墶\"],[\"9ca1\",\"㜜𢖍𧁋𧇍㱔𧊀𧊅銁𢅺𧊋錰𧋦𤧐氹钟𧑐𠻸蠧裵𢤦𨑳𡞱溸𤨪𡠠㦤㚹尐秣䔿暶𩲭𩢤襃𧟌𧡘囖䃟𡘊㦡𣜯𨃨𡏅熭荦𧧝𩆨婧䲷𧂯𨦫𧧽𧨊𧬋𧵦𤅺筃祾𨀉澵𪋟樃𨌘厢𦸇鎿栶靝𨅯𨀣𦦵𡏭𣈯𨁈嶅𨰰𨂃圕頣𨥉嶫𤦈斾槕叒𤪥𣾁㰑朶𨂐𨃴𨄮𡾡𨅏\"],[\"9d40\",\"𨆉𨆯𨈚𨌆𨌯𨎊㗊𨑨𨚪䣺揦𨥖砈鉕𨦸䏲𨧧䏟𨧨𨭆𨯔姸𨰉輋𨿅𩃬筑𩄐𩄼㷷𩅞𤫊运犏嚋𩓧𩗩𩖰𩖸𩜲𩣑𩥉𩥪𩧃𩨨𩬎𩵚𩶛纟𩻸𩼣䲤镇𪊓熢𪋿䶑递𪗋䶜𠲜达嗁\"],[\"9da1\",\"辺𢒰边𤪓䔉繿潖檱仪㓤𨬬𧢝㜺躀𡟵𨀤𨭬𨮙𧨾𦚯㷫𧙕𣲷𥘵𥥖亚𥺁𦉘嚿𠹭踎孭𣺈𤲞揞拐𡟶𡡻攰嘭𥱊吚𥌑㷆𩶘䱽嘢嘞罉𥻘奵𣵀蝰东𠿪𠵉𣚺脗鵞贘瘻鱅癎瞹鍅吲腈苷嘥脲萘肽嗪祢噃吖𠺝㗎嘅嗱曱𨋢㘭甴嗰喺咗啲𠱁𠲖廐𥅈𠹶𢱢\"],[\"9e40\",\"𠺢麫絚嗞𡁵抝靭咔賍燶酶揼掹揾啩𢭃鱲𢺳冚㓟𠶧冧呍唞唓癦踭𦢊疱肶蠄螆裇膶萜𡃁䓬猄𤜆宐茋𦢓噻𢛴𧴯𤆣𧵳𦻐𧊶酰𡇙鈈𣳼𪚩𠺬𠻹牦𡲢䝎𤿂𧿹𠿫䃺\"],[\"9ea1\",\"鱝攟𢶠䣳𤟠𩵼𠿬𠸊恢𧖣𠿭\"],[\"9ead\",\"𦁈𡆇熣纎鵐业丄㕷嬍沲卧㚬㧜卽㚥𤘘墚𤭮舭呋垪𥪕𠥹\"],[\"9ec5\",\"㩒𢑥獴𩺬䴉鯭𣳾𩼰䱛𤾩𩖞𩿞葜𣶶𧊲𦞳𣜠挮紥𣻷𣸬㨪逈勌㹴㙺䗩𠒎癀嫰𠺶硺𧼮墧䂿噼鮋嵴癔𪐴麅䳡痹㟻愙𣃚𤏲\"],[\"9ef5\",\"噝𡊩垧𤥣𩸆刴𧂮㖭汊鵼\"],[\"9f40\",\"籖鬹埞𡝬屓擓𩓐𦌵𧅤蚭𠴨𦴢𤫢𠵱\"],[\"9f4f\",\"凾𡼏嶎霃𡷑麁遌笟鬂峑箣扨挵髿篏鬪籾鬮籂粆鰕篼鬉鼗鰛𤤾齚啳寃俽麘俲剠㸆勑坧偖妷帒韈鶫轜呩鞴饀鞺匬愰\"],[\"9fa1\",\"椬叚鰊鴂䰻陁榀傦畆𡝭駚剳\"],[\"9fae\",\"酙隁酜\"],[\"9fb2\",\"酑𨺗捿𦴣櫊嘑醎畺抅𠏼獏籰𥰡𣳽\"],[\"9fc1\",\"𤤙盖鮝个𠳔莾衂\"],[\"9fc9\",\"届槀僭坺刟巵从氱𠇲伹咜哚劚趂㗾弌㗳\"],[\"9fdb\",\"歒酼龥鮗頮颴骺麨麄煺笔\"],[\"9fe7\",\"毺蠘罸\"],[\"9feb\",\"嘠𪙊蹷齓\"],[\"9ff0\",\"跔蹏鸜踁抂𨍽踨蹵竓𤩷稾磘泪詧瘇\"],[\"a040\",\"𨩚鼦泎蟖痃𪊲硓咢贌狢獱謭猂瓱賫𤪻蘯徺袠䒷\"],[\"a055\",\"𡠻𦸅\"],[\"a058\",\"詾𢔛\"],[\"a05b\",\"惽癧髗鵄鍮鮏蟵\"],[\"a063\",\"蠏賷猬霡鮰㗖犲䰇籑饊𦅙慙䰄麖慽\"],[\"a073\",\"坟慯抦戹拎㩜懢厪𣏵捤栂㗒\"],[\"a0a1\",\"嵗𨯂迚𨸹\"],[\"a0a6\",\"僙𡵆礆匲阸𠼻䁥\"],[\"a0ae\",\"矾\"],[\"a0b0\",\"糂𥼚糚稭聦聣絍甅瓲覔舚朌聢𧒆聛瓰脃眤覉𦟌畓𦻑螩蟎臈螌詉貭譃眫瓸蓚㘵榲趦\"],[\"a0d4\",\"覩瑨涹蟁𤀑瓧㷛煶悤憜㳑煢恷\"],[\"a0e2\",\"罱𨬭牐惩䭾删㰘𣳇𥻗𧙖𥔱𡥄𡋾𩤃𦷜𧂭峁𦆭𨨏𣙷𠃮𦡆𤼎䕢嬟𦍌齐麦𦉫\"],[\"a3c0\",\"␀\",31,\"␡\"],[\"c6a1\",\"①\",9,\"⑴\",9,\"ⅰ\",9,\"丶丿亅亠冂冖冫勹匸卩厶夊宀巛⼳广廴彐彡攴无疒癶辵隶¨ˆヽヾゝゞ〃仝々〆〇ー[]✽ぁ\",23],[\"c740\",\"す\",58,\"ァアィイ\"],[\"c7a1\",\"ゥ\",81,\"А\",5,\"ЁЖ\",4],[\"c840\",\"Л\",26,\"ёж\",25,\"⇧↸↹㇏𠃌乚𠂊刂䒑\"],[\"c8a1\",\"龰冈龱𧘇\"],[\"c8cd\",\"¬¦'"㈱№℡゛゜⺀⺄⺆⺇⺈⺊⺌⺍⺕⺜⺝⺥⺧⺪⺬⺮⺶⺼⺾⻆⻊⻌⻍⻏⻖⻗⻞⻣\"],[\"c8f5\",\"ʃɐɛɔɵœøŋʊɪ\"],[\"f9fe\",\"■\"],[\"fa40\",\"𠕇鋛𠗟𣿅蕌䊵珯况㙉𤥂𨧤鍄𡧛苮𣳈砼杄拟𤤳𨦪𠊠𦮳𡌅侫𢓭倈𦴩𧪄𣘀𤪱𢔓倩𠍾徤𠎀𠍇滛𠐟偽儁㑺儎顬㝃萖𤦤𠒇兠𣎴兪𠯿𢃼𠋥𢔰𠖎𣈳𡦃宂蝽𠖳𣲙冲冸\"],[\"faa1\",\"鴴凉减凑㳜凓𤪦决凢卂凭菍椾𣜭彻刋刦刼劵剗劔効勅簕蕂勠蘍𦬓包𨫞啉滙𣾀𠥔𣿬匳卄𠯢泋𡜦栛珕恊㺪㣌𡛨燝䒢卭却𨚫卾卿𡖖𡘓矦厓𨪛厠厫厮玧𥝲㽙玜叁叅汉义埾叙㪫𠮏叠𣿫𢶣叶𠱷吓灹唫晗浛呭𦭓𠵴啝咏咤䞦𡜍𠻝㶴𠵍\"],[\"fb40\",\"𨦼𢚘啇䳭启琗喆喩嘅𡣗𤀺䕒𤐵暳𡂴嘷曍𣊊暤暭噍噏磱囱鞇叾圀囯园𨭦㘣𡉏坆𤆥汮炋坂㚱𦱾埦𡐖堃𡑔𤍣堦𤯵塜墪㕡壠壜𡈼壻寿坃𪅐𤉸鏓㖡够梦㛃湙\"],[\"fba1\",\"𡘾娤啓𡚒蔅姉𠵎𦲁𦴪𡟜姙𡟻𡞲𦶦浱𡠨𡛕姹𦹅媫婣㛦𤦩婷㜈媖瑥嫓𦾡𢕔㶅𡤑㜲𡚸広勐孶斈孼𧨎䀄䡝𠈄寕慠𡨴𥧌𠖥寳宝䴐尅𡭄尓珎尔𡲥𦬨屉䣝岅峩峯嶋𡷹𡸷崐崘嵆𡺤岺巗苼㠭𤤁𢁉𢅳芇㠶㯂帮檊幵幺𤒼𠳓厦亷廐厨𡝱帉廴𨒂\"],[\"fc40\",\"廹廻㢠廼栾鐛弍𠇁弢㫞䢮𡌺强𦢈𢏐彘𢑱彣鞽𦹮彲鍀𨨶徧嶶㵟𥉐𡽪𧃸𢙨釖𠊞𨨩怱暅𡡷㥣㷇㘹垐𢞴祱㹀悞悤悳𤦂𤦏𧩓璤僡媠慤萤慂慈𦻒憁凴𠙖憇宪𣾷\"],[\"fca1\",\"𢡟懓𨮝𩥝懐㤲𢦀𢣁怣慜攞掋𠄘担𡝰拕𢸍捬𤧟㨗搸揸𡎎𡟼撐澊𢸶頔𤂌𥜝擡擥鑻㩦携㩗敍漖𤨨𤨣斅敭敟𣁾斵𤥀䬷旑䃘𡠩无旣忟𣐀昘𣇷𣇸晄𣆤𣆥晋𠹵晧𥇦晳晴𡸽𣈱𨗴𣇈𥌓矅𢣷馤朂𤎜𤨡㬫槺𣟂杞杧杢𤇍𩃭柗䓩栢湐鈼栁𣏦𦶠桝\"],[\"fd40\",\"𣑯槡樋𨫟楳棃𣗍椁椀㴲㨁𣘼㮀枬楡𨩊䋼椶榘㮡𠏉荣傐槹𣙙𢄪橅𣜃檝㯳枱櫈𩆜㰍欝𠤣惞欵歴𢟍溵𣫛𠎵𡥘㝀吡𣭚毡𣻼毜氷𢒋𤣱𦭑汚舦汹𣶼䓅𣶽𤆤𤤌𤤀\"],[\"fda1\",\"𣳉㛥㳫𠴲鮃𣇹𢒑羏样𦴥𦶡𦷫涖浜湼漄𤥿𤂅𦹲蔳𦽴凇沜渝萮𨬡港𣸯瑓𣾂秌湏媑𣁋濸㜍澝𣸰滺𡒗𤀽䕕鏰潄潜㵎潴𩅰㴻澟𤅄濓𤂑𤅕𤀹𣿰𣾴𤄿凟𤅖𤅗𤅀𦇝灋灾炧炁烌烕烖烟䄄㷨熴熖𤉷焫煅媈煊煮岜𤍥煏鍢𤋁焬𤑚𤨧𤨢熺𨯨炽爎\"],[\"fe40\",\"鑂爕夑鑃爤鍁𥘅爮牀𤥴梽牕牗㹕𣁄栍漽犂猪猫𤠣𨠫䣭𨠄猨献珏玪𠰺𦨮珉瑉𤇢𡛧𤨤昣㛅𤦷𤦍𤧻珷琕椃𤨦琹𠗃㻗瑜𢢭瑠𨺲瑇珤瑶莹瑬㜰瑴鏱樬璂䥓𤪌\"],[\"fea1\",\"𤅟𤩹𨮏孆𨰃𡢞瓈𡦈甎瓩甞𨻙𡩋寗𨺬鎅畍畊畧畮𤾂㼄𤴓疎瑝疞疴瘂瘬癑癏癯癶𦏵皐臯㟸𦤑𦤎皡皥皷盌𦾟葢𥂝𥅽𡸜眞眦着撯𥈠睘𣊬瞯𨥤𨥨𡛁矴砉𡍶𤨒棊碯磇磓隥礮𥗠磗礴碱𧘌辸袄𨬫𦂃𢘜禆褀椂禀𥡗禝𧬹礼禩渪𧄦㺨秆𩄍秔\"]]");
/***/ }),
-/* 320 */
+/* 411 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var Buffer = __webpack_require__(37).Buffer;
+
+// NOTE: Due to 'stream' module being pretty large (~100Kb, significant in browser environments),
+// we opt to dependency-inject it instead of creating a hard dependency.
+module.exports = function(stream_module) {
+ var Transform = stream_module.Transform;
+
+ // == Encoder stream =======================================================
+
+ function IconvLiteEncoderStream(conv, options) {
+ this.conv = conv;
+ options = options || {};
+ options.decodeStrings = false; // We accept only strings, so we don't need to decode them.
+ Transform.call(this, options);
+ }
+
+ IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, {
+ constructor: { value: IconvLiteEncoderStream }
+ });
+
+ IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) {
+ if (typeof chunk != 'string')
+ return done(new Error("Iconv encoding stream needs strings as its input."));
+ try {
+ var res = this.conv.write(chunk);
+ if (res && res.length) this.push(res);
+ done();
+ }
+ catch (e) {
+ done(e);
+ }
+ }
+
+ IconvLiteEncoderStream.prototype._flush = function(done) {
+ try {
+ var res = this.conv.end();
+ if (res && res.length) this.push(res);
+ done();
+ }
+ catch (e) {
+ done(e);
+ }
+ }
+
+ IconvLiteEncoderStream.prototype.collect = function(cb) {
+ var chunks = [];
+ this.on('error', cb);
+ this.on('data', function(chunk) { chunks.push(chunk); });
+ this.on('end', function() {
+ cb(null, Buffer.concat(chunks));
+ });
+ return this;
+ }
+
+
+ // == Decoder stream =======================================================
+
+ function IconvLiteDecoderStream(conv, options) {
+ this.conv = conv;
+ options = options || {};
+ options.encoding = this.encoding = 'utf8'; // We output strings.
+ Transform.call(this, options);
+ }
+
+ IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, {
+ constructor: { value: IconvLiteDecoderStream }
+ });
+
+ IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) {
+ if (!Buffer.isBuffer(chunk) && !(chunk instanceof Uint8Array))
+ return done(new Error("Iconv decoding stream needs buffers as its input."));
+ try {
+ var res = this.conv.write(chunk);
+ if (res && res.length) this.push(res, this.encoding);
+ done();
+ }
+ catch (e) {
+ done(e);
+ }
+ }
+
+ IconvLiteDecoderStream.prototype._flush = function(done) {
+ try {
+ var res = this.conv.end();
+ if (res && res.length) this.push(res, this.encoding);
+ done();
+ }
+ catch (e) {
+ done(e);
+ }
+ }
+
+ IconvLiteDecoderStream.prototype.collect = function(cb) {
+ var res = '';
+ this.on('error', cb);
+ this.on('data', function(chunk) { res += chunk; });
+ this.on('end', function() {
+ cb(null, res);
+ });
+ return this;
+ }
+
+ return {
+ IconvLiteEncoderStream: IconvLiteEncoderStream,
+ IconvLiteDecoderStream: IconvLiteDecoderStream,
+ };
+};
+
+
+/***/ }),
+/* 412 */
/***/ (function(module, exports) {
/* (ignored) */
/***/ }),
-/* 321 */
-/***/ (function(module, exports) {
-
-/* (ignored) */
-
-/***/ }),
-/* 322 */
+/* 413 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
@@ -54616,13 +58271,13 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
__hasProp = {}.hasOwnProperty,
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
- ArrayT = __webpack_require__(178);
+ ArrayT = __webpack_require__(253);
- NumberT = __webpack_require__(49).Number;
+ NumberT = __webpack_require__(89).Number;
- utils = __webpack_require__(26);
+ utils = __webpack_require__(38);
- inspect = __webpack_require__(104).inspect;
+ inspect = __webpack_require__(167).inspect;
LazyArrayT = (function(_super) {
__extends(LazyArrayT, _super);
@@ -54713,7 +58368,7 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 323 */
+/* 414 */
/***/ (function(module, exports) {
// Generated by CoffeeScript 1.7.1
@@ -54769,7 +58424,7 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 324 */
+/* 415 */
/***/ (function(module, exports) {
// Generated by CoffeeScript 1.7.1
@@ -54803,16 +58458,16 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 325 */
+/* 416 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
(function() {
var BufferT, NumberT, utils;
- utils = __webpack_require__(26);
+ utils = __webpack_require__(38);
- NumberT = __webpack_require__(49).Number;
+ NumberT = __webpack_require__(89).Number;
BufferT = (function() {
function BufferT(length) {
@@ -54849,7 +58504,7 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 326 */
+/* 417 */
/***/ (function(module, exports) {
// Generated by CoffeeScript 1.7.1
@@ -54891,7 +58546,7 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 327 */
+/* 418 */
/***/ (function(module, exports) {
// Generated by CoffeeScript 1.7.1
@@ -54949,14 +58604,14 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 328 */
+/* 419 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
(function() {
var Reserved, utils;
- utils = __webpack_require__(26);
+ utils = __webpack_require__(38);
Reserved = (function() {
function Reserved(type, count) {
@@ -54989,16 +58644,16 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 329 */
+/* 420 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(Buffer) {// Generated by CoffeeScript 1.7.1
(function() {
var NumberT, StringT, utils;
- NumberT = __webpack_require__(49).Number;
+ NumberT = __webpack_require__(89).Number;
- utils = __webpack_require__(26);
+ utils = __webpack_require__(38);
StringT = (function() {
function StringT(length, encoding) {
@@ -55075,10 +58730,10 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
}).call(this);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 330 */
+/* 421 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
@@ -55087,7 +58742,7 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
__hasProp = {}.hasOwnProperty,
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
- Struct = __webpack_require__(179);
+ Struct = __webpack_require__(254);
VersionedStruct = (function(_super) {
__extends(VersionedStruct, _super);
@@ -55220,14 +58875,14 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 331 */
+/* 422 */
/***/ (function(module, exports, __webpack_require__) {
// Generated by CoffeeScript 1.7.1
(function() {
var Pointer, VoidPointer, utils;
- utils = __webpack_require__(26);
+ utils = __webpack_require__(38);
Pointer = (function() {
function Pointer(offsetType, type, options) {
@@ -55402,31 +59057,31 @@ module.exports = JSON.parse("[[\"8740\",\"䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅
/***/ }),
-/* 332 */
+/* 423 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(333), __esModule: true };
+module.exports = { "default": __webpack_require__(424), __esModule: true };
/***/ }),
-/* 333 */
+/* 424 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(334);
-var $Object = __webpack_require__(2).Object;
+__webpack_require__(425);
+var $Object = __webpack_require__(7).Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
return $Object.getOwnPropertyDescriptor(it, key);
};
/***/ }),
-/* 334 */
+/* 425 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
-var toIObject = __webpack_require__(35);
-var $getOwnPropertyDescriptor = __webpack_require__(113).f;
+var toIObject = __webpack_require__(50);
+var $getOwnPropertyDescriptor = __webpack_require__(175).f;
-__webpack_require__(115)('getOwnPropertyDescriptor', function () {
+__webpack_require__(178)('getOwnPropertyDescriptor', function () {
return function getOwnPropertyDescriptor(it, key) {
return $getOwnPropertyDescriptor(toIObject(it), key);
};
@@ -55434,36 +59089,36 @@ __webpack_require__(115)('getOwnPropertyDescriptor', function () {
/***/ }),
-/* 335 */
+/* 426 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(336), __esModule: true };
+module.exports = { "default": __webpack_require__(427), __esModule: true };
/***/ }),
-/* 336 */
+/* 427 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(74);
-__webpack_require__(60);
-module.exports = __webpack_require__(344);
+__webpack_require__(102);
+__webpack_require__(91);
+module.exports = __webpack_require__(434);
/***/ }),
-/* 337 */
+/* 428 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var addToUnscopables = __webpack_require__(338);
-var step = __webpack_require__(183);
-var Iterators = __webpack_require__(58);
-var toIObject = __webpack_require__(35);
+var addToUnscopables = __webpack_require__(429);
+var step = __webpack_require__(256);
+var Iterators = __webpack_require__(103);
+var toIObject = __webpack_require__(50);
// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
-module.exports = __webpack_require__(116)(Array, 'Array', function (iterated, kind) {
+module.exports = __webpack_require__(179)(Array, 'Array', function (iterated, kind) {
this._t = toIObject(iterated); // target
this._i = 0; // next index
this._k = kind; // kind
@@ -55490,25 +59145,25 @@ addToUnscopables('entries');
/***/ }),
-/* 338 */
+/* 429 */
/***/ (function(module, exports) {
module.exports = function () { /* empty */ };
/***/ }),
-/* 339 */
+/* 430 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var create = __webpack_require__(76);
-var descriptor = __webpack_require__(57);
-var setToStringTag = __webpack_require__(79);
+var create = __webpack_require__(129);
+var descriptor = __webpack_require__(100);
+var setToStringTag = __webpack_require__(106);
var IteratorPrototype = {};
// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
-__webpack_require__(27)(IteratorPrototype, __webpack_require__(14)('iterator'), function () { return this; });
+__webpack_require__(39)(IteratorPrototype, __webpack_require__(21)('iterator'), function () { return this; });
module.exports = function (Constructor, NAME, next) {
Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
@@ -55517,14 +59172,14 @@ module.exports = function (Constructor, NAME, next) {
/***/ }),
-/* 340 */
+/* 431 */
/***/ (function(module, exports, __webpack_require__) {
// false -> Array#indexOf
// true -> Array#includes
-var toIObject = __webpack_require__(35);
-var toLength = __webpack_require__(77);
-var toAbsoluteIndex = __webpack_require__(187);
+var toIObject = __webpack_require__(50);
+var toLength = __webpack_require__(130);
+var toAbsoluteIndex = __webpack_require__(260);
module.exports = function (IS_INCLUDES) {
return function ($this, el, fromIndex) {
var O = toIObject($this);
@@ -55546,21 +59201,13 @@ module.exports = function (IS_INCLUDES) {
/***/ }),
-/* 341 */
-/***/ (function(module, exports, __webpack_require__) {
-
-var document = __webpack_require__(21).document;
-module.exports = document && document.documentElement;
-
-
-/***/ }),
-/* 342 */
+/* 432 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
-var has = __webpack_require__(36);
-var toObject = __webpack_require__(50);
-var IE_PROTO = __webpack_require__(118)('IE_PROTO');
+var has = __webpack_require__(51);
+var toObject = __webpack_require__(90);
+var IE_PROTO = __webpack_require__(181)('IE_PROTO');
var ObjectProto = Object.prototype;
module.exports = Object.getPrototypeOf || function (O) {
@@ -55573,11 +59220,11 @@ module.exports = Object.getPrototypeOf || function (O) {
/***/ }),
-/* 343 */
+/* 433 */
/***/ (function(module, exports, __webpack_require__) {
-var toInteger = __webpack_require__(117);
-var defined = __webpack_require__(112);
+var toInteger = __webpack_require__(180);
+var defined = __webpack_require__(174);
// true -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
@@ -55596,12 +59243,12 @@ module.exports = function (TO_STRING) {
/***/ }),
-/* 344 */
+/* 434 */
/***/ (function(module, exports, __webpack_require__) {
-var anObject = __webpack_require__(28);
-var get = __webpack_require__(121);
-module.exports = __webpack_require__(2).getIterator = function (it) {
+var anObject = __webpack_require__(29);
+var get = __webpack_require__(184);
+module.exports = __webpack_require__(7).getIterator = function (it) {
var iterFn = get(it);
if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!');
return anObject(iterFn.call(it));
@@ -55609,28 +59256,28 @@ module.exports = __webpack_require__(2).getIterator = function (it) {
/***/ }),
-/* 345 */
+/* 435 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(346), __esModule: true };
+module.exports = { "default": __webpack_require__(436), __esModule: true };
/***/ }),
-/* 346 */
+/* 436 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(347);
-module.exports = __webpack_require__(2).Object.freeze;
+__webpack_require__(437);
+module.exports = __webpack_require__(7).Object.freeze;
/***/ }),
-/* 347 */
+/* 437 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.5 Object.freeze(O)
-var isObject = __webpack_require__(20);
-var meta = __webpack_require__(80).onFreeze;
+var isObject = __webpack_require__(22);
+var meta = __webpack_require__(132).onFreeze;
-__webpack_require__(115)('freeze', function ($freeze) {
+__webpack_require__(178)('freeze', function ($freeze) {
return function freeze(it) {
return $freeze && isObject(it) ? $freeze(meta(it)) : it;
};
@@ -55638,71 +59285,71 @@ __webpack_require__(115)('freeze', function ($freeze) {
/***/ }),
-/* 348 */
+/* 438 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(349), __esModule: true };
+module.exports = { "default": __webpack_require__(439), __esModule: true };
/***/ }),
-/* 349 */
+/* 439 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(60);
-__webpack_require__(74);
-module.exports = __webpack_require__(123).f('iterator');
+__webpack_require__(91);
+__webpack_require__(102);
+module.exports = __webpack_require__(187).f('iterator');
/***/ }),
-/* 350 */
+/* 440 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(351), __esModule: true };
+module.exports = { "default": __webpack_require__(441), __esModule: true };
/***/ }),
-/* 351 */
+/* 441 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(352);
-__webpack_require__(126);
-__webpack_require__(355);
-__webpack_require__(356);
-module.exports = __webpack_require__(2).Symbol;
+__webpack_require__(442);
+__webpack_require__(133);
+__webpack_require__(445);
+__webpack_require__(446);
+module.exports = __webpack_require__(7).Symbol;
/***/ }),
-/* 352 */
+/* 442 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// ECMAScript 6 symbols shim
-var global = __webpack_require__(21);
-var has = __webpack_require__(36);
-var DESCRIPTORS = __webpack_require__(13);
-var $export = __webpack_require__(7);
-var redefine = __webpack_require__(184);
-var META = __webpack_require__(80).KEY;
-var $fails = __webpack_require__(37);
-var shared = __webpack_require__(119);
-var setToStringTag = __webpack_require__(79);
-var uid = __webpack_require__(78);
-var wks = __webpack_require__(14);
-var wksExt = __webpack_require__(123);
-var wksDefine = __webpack_require__(124);
-var enumKeys = __webpack_require__(353);
-var isArray = __webpack_require__(189);
-var anObject = __webpack_require__(28);
-var isObject = __webpack_require__(20);
-var toObject = __webpack_require__(50);
-var toIObject = __webpack_require__(35);
-var toPrimitive = __webpack_require__(114);
-var createDesc = __webpack_require__(57);
-var _create = __webpack_require__(76);
-var gOPNExt = __webpack_require__(354);
-var $GOPD = __webpack_require__(113);
-var $GOPS = __webpack_require__(125);
-var $DP = __webpack_require__(17);
-var $keys = __webpack_require__(59);
+var global = __webpack_require__(17);
+var has = __webpack_require__(51);
+var DESCRIPTORS = __webpack_require__(23);
+var $export = __webpack_require__(9);
+var redefine = __webpack_require__(257);
+var META = __webpack_require__(132).KEY;
+var $fails = __webpack_require__(52);
+var shared = __webpack_require__(182);
+var setToStringTag = __webpack_require__(106);
+var uid = __webpack_require__(131);
+var wks = __webpack_require__(21);
+var wksExt = __webpack_require__(187);
+var wksDefine = __webpack_require__(188);
+var enumKeys = __webpack_require__(443);
+var isArray = __webpack_require__(262);
+var anObject = __webpack_require__(29);
+var isObject = __webpack_require__(22);
+var toObject = __webpack_require__(90);
+var toIObject = __webpack_require__(50);
+var toPrimitive = __webpack_require__(176);
+var createDesc = __webpack_require__(100);
+var _create = __webpack_require__(129);
+var gOPNExt = __webpack_require__(444);
+var $GOPD = __webpack_require__(175);
+var $GOPS = __webpack_require__(189);
+var $DP = __webpack_require__(26);
+var $keys = __webpack_require__(105);
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
@@ -55825,11 +59472,11 @@ if (!USE_NATIVE) {
$GOPD.f = $getOwnPropertyDescriptor;
$DP.f = $defineProperty;
- __webpack_require__(190).f = gOPNExt.f = $getOwnPropertyNames;
- __webpack_require__(73).f = $propertyIsEnumerable;
+ __webpack_require__(263).f = gOPNExt.f = $getOwnPropertyNames;
+ __webpack_require__(128).f = $propertyIsEnumerable;
$GOPS.f = $getOwnPropertySymbols;
- if (DESCRIPTORS && !__webpack_require__(75)) {
+ if (DESCRIPTORS && !__webpack_require__(104)) {
redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
}
@@ -55913,7 +59560,7 @@ $JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
});
// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
-$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(27)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
+$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(39)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
@@ -55923,13 +59570,13 @@ setToStringTag(global.JSON, 'JSON', true);
/***/ }),
-/* 353 */
+/* 443 */
/***/ (function(module, exports, __webpack_require__) {
// all enumerable object keys, includes symbols
-var getKeys = __webpack_require__(59);
-var gOPS = __webpack_require__(125);
-var pIE = __webpack_require__(73);
+var getKeys = __webpack_require__(105);
+var gOPS = __webpack_require__(189);
+var pIE = __webpack_require__(128);
module.exports = function (it) {
var result = getKeys(it);
var getSymbols = gOPS.f;
@@ -55944,12 +59591,12 @@ module.exports = function (it) {
/***/ }),
-/* 354 */
+/* 444 */
/***/ (function(module, exports, __webpack_require__) {
// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
-var toIObject = __webpack_require__(35);
-var gOPN = __webpack_require__(190).f;
+var toIObject = __webpack_require__(50);
+var gOPN = __webpack_require__(263).f;
var toString = {}.toString;
var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
@@ -55969,42 +59616,42 @@ module.exports.f = function getOwnPropertyNames(it) {
/***/ }),
-/* 355 */
+/* 445 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(124)('asyncIterator');
+__webpack_require__(188)('asyncIterator');
/***/ }),
-/* 356 */
+/* 446 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(124)('observable');
+__webpack_require__(188)('observable');
/***/ }),
-/* 357 */
+/* 447 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(358), __esModule: true };
+module.exports = { "default": __webpack_require__(448), __esModule: true };
/***/ }),
-/* 358 */
+/* 448 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(359);
-module.exports = __webpack_require__(2).Object.keys;
+__webpack_require__(449);
+module.exports = __webpack_require__(7).Object.keys;
/***/ }),
-/* 359 */
+/* 449 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.2.14 Object.keys(O)
-var toObject = __webpack_require__(50);
-var $keys = __webpack_require__(59);
+var toObject = __webpack_require__(90);
+var $keys = __webpack_require__(105);
-__webpack_require__(115)('keys', function () {
+__webpack_require__(178)('keys', function () {
return function keys(it) {
return $keys(toObject(it));
};
@@ -56012,27 +59659,27 @@ __webpack_require__(115)('keys', function () {
/***/ }),
-/* 360 */
+/* 450 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(361);
-var $Object = __webpack_require__(2).Object;
+__webpack_require__(451);
+var $Object = __webpack_require__(7).Object;
module.exports = function defineProperty(it, key, desc) {
return $Object.defineProperty(it, key, desc);
};
/***/ }),
-/* 361 */
+/* 451 */
/***/ (function(module, exports, __webpack_require__) {
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
-$export($export.S + $export.F * !__webpack_require__(13), 'Object', { defineProperty: __webpack_require__(17).f });
+$export($export.S + $export.F * !__webpack_require__(23), 'Object', { defineProperty: __webpack_require__(26).f });
/***/ }),
-/* 362 */
+/* 452 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -56047,7 +59694,7 @@ exports.default = function (instance, Constructor) {
};
/***/ }),
-/* 363 */
+/* 453 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -56055,7 +59702,7 @@ exports.default = function (instance, Constructor) {
exports.__esModule = true;
-var _defineProperty = __webpack_require__(191);
+var _defineProperty = __webpack_require__(264);
var _defineProperty2 = _interopRequireDefault(_defineProperty);
@@ -56080,37 +59727,37 @@ exports.default = function () {
}();
/***/ }),
-/* 364 */
+/* 454 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(365), __esModule: true };
+module.exports = { "default": __webpack_require__(455), __esModule: true };
/***/ }),
-/* 365 */
+/* 455 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(126);
-__webpack_require__(60);
-__webpack_require__(74);
-__webpack_require__(366);
-__webpack_require__(371);
-__webpack_require__(373);
-__webpack_require__(374);
-module.exports = __webpack_require__(2).Map;
+__webpack_require__(133);
+__webpack_require__(91);
+__webpack_require__(102);
+__webpack_require__(456);
+__webpack_require__(460);
+__webpack_require__(462);
+__webpack_require__(463);
+module.exports = __webpack_require__(7).Map;
/***/ }),
-/* 366 */
+/* 456 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var strong = __webpack_require__(192);
-var validate = __webpack_require__(127);
+var strong = __webpack_require__(265);
+var validate = __webpack_require__(192);
var MAP = 'Map';
// 23.1 Map Objects
-module.exports = __webpack_require__(197)(MAP, function (get) {
+module.exports = __webpack_require__(269)(MAP, function (get) {
return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
// 23.1.3.6 Map.prototype.get(key)
@@ -56126,28 +59773,7 @@ module.exports = __webpack_require__(197)(MAP, function (get) {
/***/ }),
-/* 367 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var global = __webpack_require__(21);
-var core = __webpack_require__(2);
-var dP = __webpack_require__(17);
-var DESCRIPTORS = __webpack_require__(13);
-var SPECIES = __webpack_require__(14)('species');
-
-module.exports = function (KEY) {
- var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
- if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
- configurable: true,
- get: function () { return this; }
- });
-};
-
-
-/***/ }),
-/* 368 */
+/* 457 */
/***/ (function(module, exports, __webpack_require__) {
// 0 -> Array#forEach
@@ -56157,11 +59783,11 @@ module.exports = function (KEY) {
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
-var ctx = __webpack_require__(38);
-var IObject = __webpack_require__(110);
-var toObject = __webpack_require__(50);
-var toLength = __webpack_require__(77);
-var asc = __webpack_require__(369);
+var ctx = __webpack_require__(32);
+var IObject = __webpack_require__(173);
+var toObject = __webpack_require__(90);
+var toLength = __webpack_require__(130);
+var asc = __webpack_require__(458);
module.exports = function (TYPE, $create) {
var IS_MAP = TYPE == 1;
var IS_FILTER = TYPE == 2;
@@ -56197,11 +59823,11 @@ module.exports = function (TYPE, $create) {
/***/ }),
-/* 369 */
+/* 458 */
/***/ (function(module, exports, __webpack_require__) {
// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
-var speciesConstructor = __webpack_require__(370);
+var speciesConstructor = __webpack_require__(459);
module.exports = function (original, length) {
return new (speciesConstructor(original))(length);
@@ -56209,12 +59835,12 @@ module.exports = function (original, length) {
/***/ }),
-/* 370 */
+/* 459 */
/***/ (function(module, exports, __webpack_require__) {
-var isObject = __webpack_require__(20);
-var isArray = __webpack_require__(189);
-var SPECIES = __webpack_require__(14)('species');
+var isObject = __webpack_require__(22);
+var isArray = __webpack_require__(262);
+var SPECIES = __webpack_require__(21)('species');
module.exports = function (original) {
var C;
@@ -56231,20 +59857,20 @@ module.exports = function (original) {
/***/ }),
-/* 371 */
+/* 460 */
/***/ (function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
-$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(198)('Map') });
+$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(270)('Map') });
/***/ }),
-/* 372 */
+/* 461 */
/***/ (function(module, exports, __webpack_require__) {
-var forOf = __webpack_require__(81);
+var forOf = __webpack_require__(107);
module.exports = function (iter, ITERATOR) {
var result = [];
@@ -56254,23 +59880,23 @@ module.exports = function (iter, ITERATOR) {
/***/ }),
-/* 373 */
+/* 462 */
/***/ (function(module, exports, __webpack_require__) {
// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
-__webpack_require__(199)('Map');
+__webpack_require__(271)('Map');
/***/ }),
-/* 374 */
+/* 463 */
/***/ (function(module, exports, __webpack_require__) {
// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
-__webpack_require__(200)('Map');
+__webpack_require__(272)('Map');
/***/ }),
-/* 375 */
+/* 464 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -56278,7 +59904,7 @@ __webpack_require__(200)('Map');
exports.__esModule = true;
-var _typeof2 = __webpack_require__(122);
+var _typeof2 = __webpack_require__(186);
var _typeof3 = _interopRequireDefault(_typeof2);
@@ -56293,7 +59919,7 @@ exports.default = function (self, call) {
};
/***/ }),
-/* 376 */
+/* 465 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -56301,15 +59927,15 @@ exports.default = function (self, call) {
exports.__esModule = true;
-var _setPrototypeOf = __webpack_require__(377);
+var _setPrototypeOf = __webpack_require__(466);
var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf);
-var _create = __webpack_require__(381);
+var _create = __webpack_require__(470);
var _create2 = _interopRequireDefault(_create);
-var _typeof2 = __webpack_require__(122);
+var _typeof2 = __webpack_require__(186);
var _typeof3 = _interopRequireDefault(_typeof2);
@@ -56332,36 +59958,36 @@ exports.default = function (subClass, superClass) {
};
/***/ }),
-/* 377 */
+/* 466 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(378), __esModule: true };
+module.exports = { "default": __webpack_require__(467), __esModule: true };
/***/ }),
-/* 378 */
+/* 467 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(379);
-module.exports = __webpack_require__(2).Object.setPrototypeOf;
+__webpack_require__(468);
+module.exports = __webpack_require__(7).Object.setPrototypeOf;
/***/ }),
-/* 379 */
+/* 468 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.3.19 Object.setPrototypeOf(O, proto)
-var $export = __webpack_require__(7);
-$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(380).set });
+var $export = __webpack_require__(9);
+$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(469).set });
/***/ }),
-/* 380 */
+/* 469 */
/***/ (function(module, exports, __webpack_require__) {
// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
-var isObject = __webpack_require__(20);
-var anObject = __webpack_require__(28);
+var isObject = __webpack_require__(22);
+var anObject = __webpack_require__(29);
var check = function (O, proto) {
anObject(O);
if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
@@ -56370,7 +59996,7 @@ module.exports = {
set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
function (test, buggy, set) {
try {
- set = __webpack_require__(38)(Function.call, __webpack_require__(113).f(Object.prototype, '__proto__').set, 2);
+ set = __webpack_require__(32)(Function.call, __webpack_require__(175).f(Object.prototype, '__proto__').set, 2);
set(test, []);
buggy = !(test instanceof Array);
} catch (e) { buggy = true; }
@@ -56386,67 +60012,67 @@ module.exports = {
/***/ }),
-/* 381 */
+/* 470 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(382), __esModule: true };
+module.exports = { "default": __webpack_require__(471), __esModule: true };
/***/ }),
-/* 382 */
+/* 471 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(383);
-var $Object = __webpack_require__(2).Object;
+__webpack_require__(472);
+var $Object = __webpack_require__(7).Object;
module.exports = function create(P, D) {
return $Object.create(P, D);
};
/***/ }),
-/* 383 */
+/* 472 */
/***/ (function(module, exports, __webpack_require__) {
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
-$export($export.S, 'Object', { create: __webpack_require__(76) });
+$export($export.S, 'Object', { create: __webpack_require__(129) });
/***/ }),
-/* 384 */
+/* 473 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(385), __esModule: true };
+module.exports = { "default": __webpack_require__(474), __esModule: true };
/***/ }),
-/* 385 */
+/* 474 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(386);
-var $Object = __webpack_require__(2).Object;
+__webpack_require__(475);
+var $Object = __webpack_require__(7).Object;
module.exports = function defineProperties(T, D) {
return $Object.defineProperties(T, D);
};
/***/ }),
-/* 386 */
+/* 475 */
/***/ (function(module, exports, __webpack_require__) {
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
-$export($export.S + $export.F * !__webpack_require__(13), 'Object', { defineProperties: __webpack_require__(185) });
+$export($export.S + $export.F * !__webpack_require__(23), 'Object', { defineProperties: __webpack_require__(258) });
/***/ }),
-/* 387 */
+/* 476 */
/***/ (function(module, exports, __webpack_require__) {
-var objectKeys = __webpack_require__(201);
-var isArguments = __webpack_require__(389);
-var is = __webpack_require__(390);
-var isRegex = __webpack_require__(391);
-var flags = __webpack_require__(394);
-var isDate = __webpack_require__(400);
+var objectKeys = __webpack_require__(273);
+var isArguments = __webpack_require__(478);
+var is = __webpack_require__(483);
+var isRegex = __webpack_require__(485);
+var flags = __webpack_require__(486);
+var isDate = __webpack_require__(488);
var getTime = Date.prototype.getTime;
@@ -56556,7 +60182,7 @@ module.exports = deepEqual;
/***/ }),
-/* 388 */
+/* 477 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -56567,7 +60193,7 @@ if (!Object.keys) {
// modified from https://github.com/es-shims/es5-shim
var has = Object.prototype.hasOwnProperty;
var toStr = Object.prototype.toString;
- var isArgs = __webpack_require__(202); // eslint-disable-line global-require
+ var isArgs = __webpack_require__(274); // eslint-disable-line global-require
var isEnumerable = Object.prototype.propertyIsEnumerable;
var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');
var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');
@@ -56685,20 +60311,22 @@ module.exports = keysShim;
/***/ }),
-/* 389 */
+/* 478 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
-var toStr = Object.prototype.toString;
+var callBound = __webpack_require__(479);
+
+var $toString = callBound('Object.prototype.toString');
var isStandardArguments = function isArguments(value) {
if (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {
return false;
}
- return toStr.call(value) === '[object Arguments]';
+ return $toString(value) === '[object Arguments]';
};
var isLegacyArguments = function isArguments(value) {
@@ -56709,8 +60337,8 @@ var isLegacyArguments = function isArguments(value) {
typeof value === 'object' &&
typeof value.length === 'number' &&
value.length >= 0 &&
- toStr.call(value) !== '[object Array]' &&
- toStr.call(value.callee) === '[object Function]';
+ $toString(value) !== '[object Array]' &&
+ $toString(value.callee) === '[object Function]';
};
var supportsStandardArguments = (function () {
@@ -56723,93 +60351,78 @@ module.exports = supportsStandardArguments ? isStandardArguments : isLegacyArgum
/***/ }),
-/* 390 */
+/* 479 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-// http://www.ecma-international.org/ecma-262/6.0/#sec-object.is
+var GetIntrinsic = __webpack_require__(275);
-var numberIsNaN = function (value) {
- return value !== value;
+var callBind = __webpack_require__(194);
+
+var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));
+
+module.exports = function callBoundIntrinsic(name, allowMissing) {
+ var intrinsic = GetIntrinsic(name, !!allowMissing);
+ if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {
+ return callBind(intrinsic);
+ }
+ return intrinsic;
};
-module.exports = function is(a, b) {
- if (a === 0 && b === 0) {
- return 1 / a === 1 / b;
- }
- if (a === b) {
- return true;
- }
- if (numberIsNaN(a) && numberIsNaN(b)) {
- return true;
- }
- return false;
-};
-
-
/***/ }),
-/* 391 */
+/* 480 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var has = __webpack_require__(392);
-var regexExec = RegExp.prototype.exec;
-var gOPD = Object.getOwnPropertyDescriptor;
+/* eslint complexity: [2, 18], max-statements: [2, 33] */
+module.exports = function hasSymbols() {
+ if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
+ if (typeof Symbol.iterator === 'symbol') { return true; }
-var tryRegexExecCall = function tryRegexExec(value) {
- try {
- var lastIndex = value.lastIndex;
- value.lastIndex = 0; // eslint-disable-line no-param-reassign
+ var obj = {};
+ var sym = Symbol('test');
+ var symObj = Object(sym);
+ if (typeof sym === 'string') { return false; }
- regexExec.call(value);
- return true;
- } catch (e) {
- return false;
- } finally {
- value.lastIndex = lastIndex; // eslint-disable-line no-param-reassign
- }
-};
-var toStr = Object.prototype.toString;
-var regexClass = '[object RegExp]';
-var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
+ if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
+ if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
-module.exports = function isRegex(value) {
- if (!value || typeof value !== 'object') {
- return false;
- }
- if (!hasToStringTag) {
- return toStr.call(value) === regexClass;
+ // temp disabled per https://github.com/ljharb/object.assign/issues/17
+ // if (sym instanceof Symbol) { return false; }
+ // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
+ // if (!(symObj instanceof Symbol)) { return false; }
+
+ // if (typeof Symbol.prototype.toString !== 'function') { return false; }
+ // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
+
+ var symVal = 42;
+ obj[sym] = symVal;
+ for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax
+ if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
+
+ if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
+
+ var syms = Object.getOwnPropertySymbols(obj);
+ if (syms.length !== 1 || syms[0] !== sym) { return false; }
+
+ if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
+
+ if (typeof Object.getOwnPropertyDescriptor === 'function') {
+ var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
+ if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
}
- var descriptor = gOPD(value, 'lastIndex');
- var hasLastIndexDataProperty = descriptor && has(descriptor, 'value');
- if (!hasLastIndexDataProperty) {
- return false;
- }
-
- return tryRegexExecCall(value);
+ return true;
};
/***/ }),
-/* 392 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-var bind = __webpack_require__(128);
-
-module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
-
-
-/***/ }),
-/* 393 */
+/* 481 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -56868,18 +60481,141 @@ module.exports = function bind(that) {
/***/ }),
-/* 394 */
+/* 482 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var define = __webpack_require__(129);
-var callBind = __webpack_require__(395);
+var bind = __webpack_require__(193);
-var implementation = __webpack_require__(203);
-var getPolyfill = __webpack_require__(204);
-var shim = __webpack_require__(399);
+module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
+
+
+/***/ }),
+/* 483 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var define = __webpack_require__(108);
+var callBind = __webpack_require__(194);
+
+var implementation = __webpack_require__(277);
+var getPolyfill = __webpack_require__(278);
+var shim = __webpack_require__(484);
+
+var polyfill = callBind(getPolyfill(), Object);
+
+define(polyfill, {
+ getPolyfill: getPolyfill,
+ implementation: implementation,
+ shim: shim
+});
+
+module.exports = polyfill;
+
+
+/***/ }),
+/* 484 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var getPolyfill = __webpack_require__(278);
+var define = __webpack_require__(108);
+
+module.exports = function shimObjectIs() {
+ var polyfill = getPolyfill();
+ define(Object, { is: polyfill }, {
+ is: function testObjectIs() {
+ return Object.is !== polyfill;
+ }
+ });
+ return polyfill;
+};
+
+
+/***/ }),
+/* 485 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var hasSymbols = __webpack_require__(276)();
+var hasToStringTag = hasSymbols && typeof Symbol.toStringTag === 'symbol';
+var hasOwnProperty;
+var regexExec;
+var isRegexMarker;
+var badStringifier;
+
+if (hasToStringTag) {
+ hasOwnProperty = Function.call.bind(Object.prototype.hasOwnProperty);
+ regexExec = Function.call.bind(RegExp.prototype.exec);
+ isRegexMarker = {};
+
+ var throwRegexMarker = function () {
+ throw isRegexMarker;
+ };
+ badStringifier = {
+ toString: throwRegexMarker,
+ valueOf: throwRegexMarker
+ };
+
+ if (typeof Symbol.toPrimitive === 'symbol') {
+ badStringifier[Symbol.toPrimitive] = throwRegexMarker;
+ }
+}
+
+var toStr = Object.prototype.toString;
+var gOPD = Object.getOwnPropertyDescriptor;
+var regexClass = '[object RegExp]';
+
+module.exports = hasToStringTag
+ // eslint-disable-next-line consistent-return
+ ? function isRegex(value) {
+ if (!value || typeof value !== 'object') {
+ return false;
+ }
+
+ var descriptor = gOPD(value, 'lastIndex');
+ var hasLastIndexDataProperty = descriptor && hasOwnProperty(descriptor, 'value');
+ if (!hasLastIndexDataProperty) {
+ return false;
+ }
+
+ try {
+ regexExec(value, badStringifier);
+ } catch (e) {
+ return e === isRegexMarker;
+ }
+ }
+ : function isRegex(value) {
+ // In older browsers, typeof regex incorrectly returns 'function'
+ if (!value || (typeof value !== 'object' && typeof value !== 'function')) {
+ return false;
+ }
+
+ return toStr.call(value) === regexClass;
+ };
+
+
+/***/ }),
+/* 486 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var define = __webpack_require__(108);
+var callBind = __webpack_require__(194);
+
+var implementation = __webpack_require__(279);
+var getPolyfill = __webpack_require__(280);
+var shim = __webpack_require__(487);
var flagsBound = callBind(implementation);
@@ -56893,333 +60629,14 @@ module.exports = flagsBound;
/***/ }),
-/* 395 */
+/* 487 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var bind = __webpack_require__(128);
-
-var GetIntrinsic = __webpack_require__(396);
-
-var $Function = GetIntrinsic('%Function%');
-var $apply = $Function.apply;
-var $call = $Function.call;
-
-module.exports = function callBind() {
- return bind.apply($call, arguments);
-};
-
-module.exports.apply = function applyBind() {
- return bind.apply($apply, arguments);
-};
-
-
-/***/ }),
-/* 396 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-/* globals
- Atomics,
- SharedArrayBuffer,
-*/
-
-var undefined;
-
-var $TypeError = TypeError;
-
-var $gOPD = Object.getOwnPropertyDescriptor;
-if ($gOPD) {
- try {
- $gOPD({}, '');
- } catch (e) {
- $gOPD = null; // this is IE 8, which has a broken gOPD
- }
-}
-
-var throwTypeError = function () { throw new $TypeError(); };
-var ThrowTypeError = $gOPD
- ? (function () {
- try {
- // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties
- arguments.callee; // IE 8 does not throw here
- return throwTypeError;
- } catch (calleeThrows) {
- try {
- // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')
- return $gOPD(arguments, 'callee').get;
- } catch (gOPDthrows) {
- return throwTypeError;
- }
- }
- }())
- : throwTypeError;
-
-var hasSymbols = __webpack_require__(397)();
-
-var getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto
-
-var generator; // = function * () {};
-var generatorFunction = generator ? getProto(generator) : undefined;
-var asyncFn; // async function() {};
-var asyncFunction = asyncFn ? asyncFn.constructor : undefined;
-var asyncGen; // async function * () {};
-var asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;
-var asyncGenIterator = asyncGen ? asyncGen() : undefined;
-
-var TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);
-
-var INTRINSICS = {
- '%Array%': Array,
- '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,
- '%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,
- '%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,
- '%ArrayPrototype%': Array.prototype,
- '%ArrayProto_entries%': Array.prototype.entries,
- '%ArrayProto_forEach%': Array.prototype.forEach,
- '%ArrayProto_keys%': Array.prototype.keys,
- '%ArrayProto_values%': Array.prototype.values,
- '%AsyncFromSyncIteratorPrototype%': undefined,
- '%AsyncFunction%': asyncFunction,
- '%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,
- '%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,
- '%AsyncGeneratorFunction%': asyncGenFunction,
- '%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,
- '%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,
- '%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,
- '%Boolean%': Boolean,
- '%BooleanPrototype%': Boolean.prototype,
- '%DataView%': typeof DataView === 'undefined' ? undefined : DataView,
- '%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,
- '%Date%': Date,
- '%DatePrototype%': Date.prototype,
- '%decodeURI%': decodeURI,
- '%decodeURIComponent%': decodeURIComponent,
- '%encodeURI%': encodeURI,
- '%encodeURIComponent%': encodeURIComponent,
- '%Error%': Error,
- '%ErrorPrototype%': Error.prototype,
- '%eval%': eval, // eslint-disable-line no-eval
- '%EvalError%': EvalError,
- '%EvalErrorPrototype%': EvalError.prototype,
- '%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,
- '%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,
- '%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,
- '%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,
- '%Function%': Function,
- '%FunctionPrototype%': Function.prototype,
- '%Generator%': generator ? getProto(generator()) : undefined,
- '%GeneratorFunction%': generatorFunction,
- '%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,
- '%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,
- '%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,
- '%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,
- '%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,
- '%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,
- '%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,
- '%isFinite%': isFinite,
- '%isNaN%': isNaN,
- '%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,
- '%JSON%': typeof JSON === 'object' ? JSON : undefined,
- '%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,
- '%Map%': typeof Map === 'undefined' ? undefined : Map,
- '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),
- '%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,
- '%Math%': Math,
- '%Number%': Number,
- '%NumberPrototype%': Number.prototype,
- '%Object%': Object,
- '%ObjectPrototype%': Object.prototype,
- '%ObjProto_toString%': Object.prototype.toString,
- '%ObjProto_valueOf%': Object.prototype.valueOf,
- '%parseFloat%': parseFloat,
- '%parseInt%': parseInt,
- '%Promise%': typeof Promise === 'undefined' ? undefined : Promise,
- '%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,
- '%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,
- '%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,
- '%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,
- '%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,
- '%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,
- '%RangeError%': RangeError,
- '%RangeErrorPrototype%': RangeError.prototype,
- '%ReferenceError%': ReferenceError,
- '%ReferenceErrorPrototype%': ReferenceError.prototype,
- '%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,
- '%RegExp%': RegExp,
- '%RegExpPrototype%': RegExp.prototype,
- '%Set%': typeof Set === 'undefined' ? undefined : Set,
- '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),
- '%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,
- '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,
- '%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,
- '%String%': String,
- '%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,
- '%StringPrototype%': String.prototype,
- '%Symbol%': hasSymbols ? Symbol : undefined,
- '%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,
- '%SyntaxError%': SyntaxError,
- '%SyntaxErrorPrototype%': SyntaxError.prototype,
- '%ThrowTypeError%': ThrowTypeError,
- '%TypedArray%': TypedArray,
- '%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,
- '%TypeError%': $TypeError,
- '%TypeErrorPrototype%': $TypeError.prototype,
- '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,
- '%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,
- '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
- '%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,
- '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,
- '%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,
- '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,
- '%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,
- '%URIError%': URIError,
- '%URIErrorPrototype%': URIError.prototype,
- '%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,
- '%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,
- '%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,
- '%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype
-};
-
-var bind = __webpack_require__(128);
-var $replace = bind.call(Function.call, String.prototype.replace);
-
-/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
-var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
-var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
-var stringToPath = function stringToPath(string) {
- var result = [];
- $replace(string, rePropName, function (match, number, quote, subString) {
- result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);
- });
- return result;
-};
-/* end adaptation */
-
-var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
- if (!(name in INTRINSICS)) {
- throw new SyntaxError('intrinsic ' + name + ' does not exist!');
- }
-
- // istanbul ignore if // hopefully this is impossible to test :-)
- if (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {
- throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
- }
-
- return INTRINSICS[name];
-};
-
-module.exports = function GetIntrinsic(name, allowMissing) {
- if (typeof name !== 'string' || name.length === 0) {
- throw new TypeError('intrinsic name must be a non-empty string');
- }
- if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
- throw new TypeError('"allowMissing" argument must be a boolean');
- }
-
- var parts = stringToPath(name);
-
- var value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);
- for (var i = 1; i < parts.length; i += 1) {
- if (value != null) {
- if ($gOPD && (i + 1) >= parts.length) {
- var desc = $gOPD(value, parts[i]);
- if (!allowMissing && !(parts[i] in value)) {
- throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');
- }
- value = desc ? (desc.get || desc.value) : value[parts[i]];
- } else {
- value = value[parts[i]];
- }
- }
- }
- return value;
-};
-
-
-/***/ }),
-/* 397 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-/* WEBPACK VAR INJECTION */(function(global) {
-
-var origSymbol = global.Symbol;
-var hasSymbolSham = __webpack_require__(398);
-
-module.exports = function hasNativeSymbols() {
- if (typeof origSymbol !== 'function') { return false; }
- if (typeof Symbol !== 'function') { return false; }
- if (typeof origSymbol('foo') !== 'symbol') { return false; }
- if (typeof Symbol('bar') !== 'symbol') { return false; }
-
- return hasSymbolSham();
-};
-
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(22)))
-
-/***/ }),
-/* 398 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-/* eslint complexity: [2, 18], max-statements: [2, 33] */
-module.exports = function hasSymbols() {
- if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
- if (typeof Symbol.iterator === 'symbol') { return true; }
-
- var obj = {};
- var sym = Symbol('test');
- var symObj = Object(sym);
- if (typeof sym === 'string') { return false; }
-
- if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
- if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
-
- // temp disabled per https://github.com/ljharb/object.assign/issues/17
- // if (sym instanceof Symbol) { return false; }
- // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
- // if (!(symObj instanceof Symbol)) { return false; }
-
- // if (typeof Symbol.prototype.toString !== 'function') { return false; }
- // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
-
- var symVal = 42;
- obj[sym] = symVal;
- for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax
- if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
-
- if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
-
- var syms = Object.getOwnPropertySymbols(obj);
- if (syms.length !== 1 || syms[0] !== sym) { return false; }
-
- if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
-
- if (typeof Object.getOwnPropertyDescriptor === 'function') {
- var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
- if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
- }
-
- return true;
-};
-
-
-/***/ }),
-/* 399 */
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-
-var supportsDescriptors = __webpack_require__(129).supportsDescriptors;
-var getPolyfill = __webpack_require__(204);
+var supportsDescriptors = __webpack_require__(108).supportsDescriptors;
+var getPolyfill = __webpack_require__(280);
var gOPD = Object.getOwnPropertyDescriptor;
var defineProperty = Object.defineProperty;
var TypeErr = TypeError;
@@ -57245,7 +60662,7 @@ module.exports = function shimFlags() {
/***/ }),
-/* 400 */
+/* 488 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -57274,46 +60691,46 @@ module.exports = function isDateObject(value) {
/***/ }),
-/* 401 */
+/* 489 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(402), __esModule: true };
+module.exports = { "default": __webpack_require__(490), __esModule: true };
/***/ }),
-/* 402 */
+/* 490 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(403);
-module.exports = __webpack_require__(2).Object.assign;
+__webpack_require__(491);
+module.exports = __webpack_require__(7).Object.assign;
/***/ }),
-/* 403 */
+/* 491 */
/***/ (function(module, exports, __webpack_require__) {
// 19.1.3.1 Object.assign(target, source)
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
-$export($export.S + $export.F, 'Object', { assign: __webpack_require__(404) });
+$export($export.S + $export.F, 'Object', { assign: __webpack_require__(492) });
/***/ }),
-/* 404 */
+/* 492 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
// 19.1.2.1 Object.assign(target, source, ...)
-var DESCRIPTORS = __webpack_require__(13);
-var getKeys = __webpack_require__(59);
-var gOPS = __webpack_require__(125);
-var pIE = __webpack_require__(73);
-var toObject = __webpack_require__(50);
-var IObject = __webpack_require__(110);
+var DESCRIPTORS = __webpack_require__(23);
+var getKeys = __webpack_require__(105);
+var gOPS = __webpack_require__(189);
+var pIE = __webpack_require__(128);
+var toObject = __webpack_require__(90);
+var IObject = __webpack_require__(173);
var $assign = Object.assign;
// should work with symbols and should have deterministic property order (V8 bug)
-module.exports = !$assign || __webpack_require__(37)(function () {
+module.exports = !$assign || __webpack_require__(52)(function () {
var A = {};
var B = {};
// eslint-disable-next-line no-undef
@@ -57343,25 +60760,25 @@ module.exports = !$assign || __webpack_require__(37)(function () {
/***/ }),
-/* 405 */
+/* 493 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(406), __esModule: true };
+module.exports = { "default": __webpack_require__(494), __esModule: true };
/***/ }),
-/* 406 */
+/* 494 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(407);
-module.exports = __webpack_require__(2).String.fromCodePoint;
+__webpack_require__(495);
+module.exports = __webpack_require__(7).String.fromCodePoint;
/***/ }),
-/* 407 */
+/* 495 */
/***/ (function(module, exports, __webpack_require__) {
-var $export = __webpack_require__(7);
-var toAbsoluteIndex = __webpack_require__(187);
+var $export = __webpack_require__(9);
+var toAbsoluteIndex = __webpack_require__(260);
var fromCharCode = String.fromCharCode;
var $fromCodePoint = String.fromCodePoint;
@@ -57386,36 +60803,36 @@ $export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1)
/***/ }),
-/* 408 */
+/* 496 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(409), __esModule: true };
+module.exports = { "default": __webpack_require__(497), __esModule: true };
/***/ }),
-/* 409 */
+/* 497 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(60);
-__webpack_require__(410);
-module.exports = __webpack_require__(2).Array.from;
+__webpack_require__(91);
+__webpack_require__(498);
+module.exports = __webpack_require__(7).Array.from;
/***/ }),
-/* 410 */
+/* 498 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var ctx = __webpack_require__(38);
-var $export = __webpack_require__(7);
-var toObject = __webpack_require__(50);
-var call = __webpack_require__(195);
-var isArrayIter = __webpack_require__(196);
-var toLength = __webpack_require__(77);
-var createProperty = __webpack_require__(411);
-var getIterFn = __webpack_require__(121);
+var ctx = __webpack_require__(32);
+var $export = __webpack_require__(9);
+var toObject = __webpack_require__(90);
+var call = __webpack_require__(266);
+var isArrayIter = __webpack_require__(267);
+var toLength = __webpack_require__(130);
+var createProperty = __webpack_require__(499);
+var getIterFn = __webpack_require__(184);
-$export($export.S + $export.F * !__webpack_require__(412)(function (iter) { Array.from(iter); }), 'Array', {
+$export($export.S + $export.F * !__webpack_require__(281)(function (iter) { Array.from(iter); }), 'Array', {
// 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
var O = toObject(arrayLike);
@@ -57445,13 +60862,13 @@ $export($export.S + $export.F * !__webpack_require__(412)(function (iter) { Arra
/***/ }),
-/* 411 */
+/* 499 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var $defineProperty = __webpack_require__(17);
-var createDesc = __webpack_require__(57);
+var $defineProperty = __webpack_require__(26);
+var createDesc = __webpack_require__(100);
module.exports = function (object, index, value) {
if (index in object) $defineProperty.f(object, index, createDesc(0, value));
@@ -57460,65 +60877,37 @@ module.exports = function (object, index, value) {
/***/ }),
-/* 412 */
+/* 500 */
/***/ (function(module, exports, __webpack_require__) {
-var ITERATOR = __webpack_require__(14)('iterator');
-var SAFE_CLOSING = false;
+module.exports = { "default": __webpack_require__(501), __esModule: true };
-try {
- var riter = [7][ITERATOR]();
- riter['return'] = function () { SAFE_CLOSING = true; };
- // eslint-disable-next-line no-throw-literal
- Array.from(riter, function () { throw 2; });
-} catch (e) { /* empty */ }
+/***/ }),
+/* 501 */
+/***/ (function(module, exports, __webpack_require__) {
-module.exports = function (exec, skipClosing) {
- if (!skipClosing && !SAFE_CLOSING) return false;
- var safe = false;
- try {
- var arr = [7];
- var iter = arr[ITERATOR]();
- iter.next = function () { return { done: safe = true }; };
- arr[ITERATOR] = function () { return iter; };
- exec(arr);
- } catch (e) { /* empty */ }
- return safe;
-};
+__webpack_require__(133);
+__webpack_require__(91);
+__webpack_require__(102);
+__webpack_require__(502);
+__webpack_require__(503);
+__webpack_require__(504);
+__webpack_require__(505);
+module.exports = __webpack_require__(7).Set;
/***/ }),
-/* 413 */
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = { "default": __webpack_require__(414), __esModule: true };
-
-/***/ }),
-/* 414 */
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__(126);
-__webpack_require__(60);
-__webpack_require__(74);
-__webpack_require__(415);
-__webpack_require__(416);
-__webpack_require__(417);
-__webpack_require__(418);
-module.exports = __webpack_require__(2).Set;
-
-
-/***/ }),
-/* 415 */
+/* 502 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var strong = __webpack_require__(192);
-var validate = __webpack_require__(127);
+var strong = __webpack_require__(265);
+var validate = __webpack_require__(192);
var SET = 'Set';
// 23.2 Set Objects
-module.exports = __webpack_require__(197)(SET, function (get) {
+module.exports = __webpack_require__(269)(SET, function (get) {
return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
// 23.2.3.1 Set.prototype.add(value)
@@ -57529,48 +60918,48 @@ module.exports = __webpack_require__(197)(SET, function (get) {
/***/ }),
-/* 416 */
+/* 503 */
/***/ (function(module, exports, __webpack_require__) {
// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
-$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__(198)('Set') });
+$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__(270)('Set') });
/***/ }),
-/* 417 */
+/* 504 */
/***/ (function(module, exports, __webpack_require__) {
// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of
-__webpack_require__(199)('Set');
+__webpack_require__(271)('Set');
/***/ }),
-/* 418 */
+/* 505 */
/***/ (function(module, exports, __webpack_require__) {
// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from
-__webpack_require__(200)('Set');
+__webpack_require__(272)('Set');
/***/ }),
-/* 419 */
+/* 506 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+__webpack_require__(507);
+
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
-__webpack_require__(420);
+var _unicodeTrie = _interopRequireDefault(__webpack_require__(508));
-var _unicodeTrie = _interopRequireDefault(__webpack_require__(421));
-
-var _base64Js = _interopRequireDefault(__webpack_require__(423));
+var _base64Js = _interopRequireDefault(__webpack_require__(510));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -57736,33 +61125,91 @@ var _default = unicodeProperties;
exports.default = _default;
/***/ }),
-/* 420 */
+/* 507 */
/***/ (function(module, exports, __webpack_require__) {
-// 20.2.2.22 Math.log2(x)
-var $export = __webpack_require__(5);
+var $ = __webpack_require__(1);
-$export($export.S, 'Math', {
+var log = Math.log;
+var LN2 = Math.LN2;
+
+// `Math.log2` method
+// https://tc39.es/ecma262/#sec-math.log2
+$({ target: 'Math', stat: true }, {
log2: function log2(x) {
- return Math.log(x) / Math.LN2;
+ return log(x) / LN2;
}
});
/***/ }),
-/* 421 */
+/* 508 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+__webpack_require__(28);
+
+__webpack_require__(46);
+
+__webpack_require__(61);
+
+__webpack_require__(31);
+
+__webpack_require__(62);
+
+__webpack_require__(134);
+
+__webpack_require__(63);
+
+__webpack_require__(64);
+
+__webpack_require__(65);
+
+__webpack_require__(66);
+
+__webpack_require__(67);
+
+__webpack_require__(68);
+
+__webpack_require__(69);
+
+__webpack_require__(70);
+
+__webpack_require__(71);
+
+__webpack_require__(72);
+
+__webpack_require__(73);
+
+__webpack_require__(74);
+
+__webpack_require__(75);
+
+__webpack_require__(76);
+
+__webpack_require__(77);
+
+__webpack_require__(78);
+
+__webpack_require__(79);
+
+__webpack_require__(80);
+
+__webpack_require__(81);
+
__webpack_require__(82);
-__webpack_require__(44);
+__webpack_require__(83);
-var inflate = __webpack_require__(83);
+__webpack_require__(84);
-var _require = __webpack_require__(422),
+__webpack_require__(85);
+
+var inflate = __webpack_require__(135);
+
+var _require = __webpack_require__(509),
swap32LE = _require.swap32LE; // Shift size for getting the index-1 table offset.
@@ -57894,15 +61341,67 @@ var UnicodeTrie = /*#__PURE__*/function () {
module.exports = UnicodeTrie;
/***/ }),
-/* 422 */
+/* 509 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+__webpack_require__(28);
+
+__webpack_require__(61);
+
+__webpack_require__(31);
+
+__webpack_require__(62);
+
+__webpack_require__(134);
+
+__webpack_require__(63);
+
+__webpack_require__(64);
+
+__webpack_require__(65);
+
+__webpack_require__(66);
+
+__webpack_require__(67);
+
+__webpack_require__(68);
+
+__webpack_require__(69);
+
+__webpack_require__(70);
+
+__webpack_require__(71);
+
+__webpack_require__(72);
+
+__webpack_require__(73);
+
+__webpack_require__(74);
+
+__webpack_require__(75);
+
+__webpack_require__(76);
+
+__webpack_require__(77);
+
+__webpack_require__(78);
+
+__webpack_require__(79);
+
+__webpack_require__(80);
+
+__webpack_require__(81);
+
__webpack_require__(82);
-__webpack_require__(44);
+__webpack_require__(83);
+
+__webpack_require__(84);
+
+__webpack_require__(85);
var isBigEndian = new Uint8Array(new Uint32Array([0x12345678]).buffer)[0] === 0x12;
@@ -57932,13 +61431,69 @@ module.exports = {
};
/***/ }),
-/* 423 */
+/* 510 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-__webpack_require__(44);
+__webpack_require__(195);
+
+__webpack_require__(28);
+
+__webpack_require__(220);
+
+__webpack_require__(61);
+
+__webpack_require__(31);
+
+__webpack_require__(62);
+
+__webpack_require__(63);
+
+__webpack_require__(64);
+
+__webpack_require__(65);
+
+__webpack_require__(66);
+
+__webpack_require__(67);
+
+__webpack_require__(68);
+
+__webpack_require__(69);
+
+__webpack_require__(70);
+
+__webpack_require__(71);
+
+__webpack_require__(72);
+
+__webpack_require__(73);
+
+__webpack_require__(74);
+
+__webpack_require__(75);
+
+__webpack_require__(76);
+
+__webpack_require__(77);
+
+__webpack_require__(78);
+
+__webpack_require__(79);
+
+__webpack_require__(80);
+
+__webpack_require__(81);
+
+__webpack_require__(82);
+
+__webpack_require__(83);
+
+__webpack_require__(84);
+
+__webpack_require__(85);
exports.byteLength = byteLength;
exports.toByteArray = toByteArray;
@@ -58059,19 +61614,73 @@ function fromByteArray(uint8) {
}
/***/ }),
-/* 424 */
+/* 511 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+__webpack_require__(28);
+
+__webpack_require__(46);
+
+__webpack_require__(61);
+
+__webpack_require__(31);
+
+__webpack_require__(62);
+
+__webpack_require__(134);
+
+__webpack_require__(63);
+
+__webpack_require__(64);
+
+__webpack_require__(65);
+
+__webpack_require__(66);
+
+__webpack_require__(67);
+
+__webpack_require__(68);
+
+__webpack_require__(69);
+
+__webpack_require__(70);
+
+__webpack_require__(71);
+
+__webpack_require__(72);
+
+__webpack_require__(73);
+
+__webpack_require__(74);
+
+__webpack_require__(75);
+
+__webpack_require__(76);
+
+__webpack_require__(77);
+
+__webpack_require__(78);
+
+__webpack_require__(79);
+
+__webpack_require__(80);
+
+__webpack_require__(81);
+
__webpack_require__(82);
-__webpack_require__(44);
+__webpack_require__(83);
+
+__webpack_require__(84);
+
+__webpack_require__(85);
// Generated by CoffeeScript 1.7.1
var UnicodeTrie, inflate;
-inflate = __webpack_require__(83);
+inflate = __webpack_require__(135);
UnicodeTrie = function () {
var DATA_BLOCK_LENGTH, DATA_GRANULARITY, DATA_MASK, INDEX_1_OFFSET, INDEX_2_BLOCK_LENGTH, INDEX_2_BMP_LENGTH, INDEX_2_MASK, INDEX_SHIFT, LSCP_INDEX_2_LENGTH, LSCP_INDEX_2_OFFSET, OMITTED_BMP_INDEX_1_LENGTH, SHIFT_1, SHIFT_1_2, SHIFT_2, UTF8_2B_INDEX_2_LENGTH, UTF8_2B_INDEX_2_OFFSET;
@@ -58151,21 +61760,39 @@ UnicodeTrie = function () {
module.exports = UnicodeTrie;
/***/ }),
-/* 425 */
+/* 512 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-__webpack_require__(99);
+__webpack_require__(201);
-__webpack_require__(426);
+__webpack_require__(210);
-__webpack_require__(162);
+__webpack_require__(211);
-__webpack_require__(165);
+__webpack_require__(28);
-__webpack_require__(92);
+__webpack_require__(46);
+
+__webpack_require__(31);
+
+__webpack_require__(118);
+
+__webpack_require__(160);
+
+__webpack_require__(161);
+
+__webpack_require__(120);
+
+__webpack_require__(513);
+
+function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } it = o[Symbol.iterator](); return it.next.bind(it); }
+
+function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+
+function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
var INITIAL_STATE = 1;
var FAIL_STATE = 0;
@@ -58278,36 +61905,14 @@ var StateMachine = /*#__PURE__*/function () {
;
_proto.apply = function apply(str, actions) {
- for (var _iterator = this.match(str), _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
- var _ref2;
+ for (var _iterator = _createForOfIteratorHelperLoose(this.match(str)), _step; !(_step = _iterator()).done;) {
+ var _step$value = _step.value,
+ start = _step$value[0],
+ end = _step$value[1],
+ tags = _step$value[2];
- if (_isArray) {
- if (_i >= _iterator.length) break;
- _ref2 = _iterator[_i++];
- } else {
- _i = _iterator.next();
- if (_i.done) break;
- _ref2 = _i.value;
- }
-
- var _ref3 = _ref2,
- start = _ref3[0],
- end = _ref3[1],
- tags = _ref3[2];
-
- for (var _iterator2 = tags, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) {
- var _ref4;
-
- if (_isArray2) {
- if (_i2 >= _iterator2.length) break;
- _ref4 = _iterator2[_i2++];
- } else {
- _i2 = _iterator2.next();
- if (_i2.done) break;
- _ref4 = _i2.value;
- }
-
- var tag = _ref4;
+ for (var _iterator2 = _createForOfIteratorHelperLoose(tags), _step2; !(_step2 = _iterator2()).done;) {
+ var tag = _step2.value;
if (typeof actions[tag] === 'function') {
actions[tag](start, end, str.slice(start, end + 1));
@@ -58322,7 +61927,7 @@ var StateMachine = /*#__PURE__*/function () {
module.exports = StateMachine;
/***/ }),
-/* 426 */
+/* 513 */
/***/ (function(module, exports) {
/**
@@ -59055,31 +62660,31 @@ module.exports = StateMachine;
/***/ }),
-/* 427 */
+/* 514 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = { "default": __webpack_require__(428), __esModule: true };
+module.exports = { "default": __webpack_require__(515), __esModule: true };
/***/ }),
-/* 428 */
+/* 515 */
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__(429);
+__webpack_require__(516);
module.exports = Math.pow(2, -52);
/***/ }),
-/* 429 */
+/* 516 */
/***/ (function(module, exports, __webpack_require__) {
// 20.1.2.1 Number.EPSILON
-var $export = __webpack_require__(7);
+var $export = __webpack_require__(9);
$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) });
/***/ }),
-/* 430 */
+/* 517 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(Buffer) {var clone = (function() {
@@ -59249,17 +62854,482 @@ if ( true && module.exports) {
module.exports = clone;
}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 431 */
+/* 518 */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(205).BrotliDecompressBuffer;
+module.exports = { "default": __webpack_require__(519), __esModule: true };
+
+/***/ }),
+/* 519 */
+/***/ (function(module, exports, __webpack_require__) {
+
+__webpack_require__(133);
+__webpack_require__(91);
+__webpack_require__(102);
+__webpack_require__(520);
+__webpack_require__(524);
+__webpack_require__(525);
+module.exports = __webpack_require__(7).Promise;
/***/ }),
-/* 432 */
+/* 520 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var LIBRARY = __webpack_require__(104);
+var global = __webpack_require__(17);
+var ctx = __webpack_require__(32);
+var classof = __webpack_require__(185);
+var $export = __webpack_require__(9);
+var isObject = __webpack_require__(22);
+var aFunction = __webpack_require__(101);
+var anInstance = __webpack_require__(191);
+var forOf = __webpack_require__(107);
+var speciesConstructor = __webpack_require__(282);
+var task = __webpack_require__(283).set;
+var microtask = __webpack_require__(522)();
+var newPromiseCapabilityModule = __webpack_require__(196);
+var perform = __webpack_require__(284);
+var userAgent = __webpack_require__(523);
+var promiseResolve = __webpack_require__(285);
+var PROMISE = 'Promise';
+var TypeError = global.TypeError;
+var process = global.process;
+var versions = process && process.versions;
+var v8 = versions && versions.v8 || '';
+var $Promise = global[PROMISE];
+var isNode = classof(process) == 'process';
+var empty = function () { /* empty */ };
+var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
+var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;
+
+var USE_NATIVE = !!function () {
+ try {
+ // correct subclassing with @@species support
+ var promise = $Promise.resolve(1);
+ var FakePromise = (promise.constructor = {})[__webpack_require__(21)('species')] = function (exec) {
+ exec(empty, empty);
+ };
+ // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
+ return (isNode || typeof PromiseRejectionEvent == 'function')
+ && promise.then(empty) instanceof FakePromise
+ // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
+ // we can't detect it synchronously, so just check versions
+ && v8.indexOf('6.6') !== 0
+ && userAgent.indexOf('Chrome/66') === -1;
+ } catch (e) { /* empty */ }
+}();
+
+// helpers
+var isThenable = function (it) {
+ var then;
+ return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
+};
+var notify = function (promise, isReject) {
+ if (promise._n) return;
+ promise._n = true;
+ var chain = promise._c;
+ microtask(function () {
+ var value = promise._v;
+ var ok = promise._s == 1;
+ var i = 0;
+ var run = function (reaction) {
+ var handler = ok ? reaction.ok : reaction.fail;
+ var resolve = reaction.resolve;
+ var reject = reaction.reject;
+ var domain = reaction.domain;
+ var result, then, exited;
+ try {
+ if (handler) {
+ if (!ok) {
+ if (promise._h == 2) onHandleUnhandled(promise);
+ promise._h = 1;
+ }
+ if (handler === true) result = value;
+ else {
+ if (domain) domain.enter();
+ result = handler(value); // may throw
+ if (domain) {
+ domain.exit();
+ exited = true;
+ }
+ }
+ if (result === reaction.promise) {
+ reject(TypeError('Promise-chain cycle'));
+ } else if (then = isThenable(result)) {
+ then.call(result, resolve, reject);
+ } else resolve(result);
+ } else reject(value);
+ } catch (e) {
+ if (domain && !exited) domain.exit();
+ reject(e);
+ }
+ };
+ while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
+ promise._c = [];
+ promise._n = false;
+ if (isReject && !promise._h) onUnhandled(promise);
+ });
+};
+var onUnhandled = function (promise) {
+ task.call(global, function () {
+ var value = promise._v;
+ var unhandled = isUnhandled(promise);
+ var result, handler, console;
+ if (unhandled) {
+ result = perform(function () {
+ if (isNode) {
+ process.emit('unhandledRejection', value, promise);
+ } else if (handler = global.onunhandledrejection) {
+ handler({ promise: promise, reason: value });
+ } else if ((console = global.console) && console.error) {
+ console.error('Unhandled promise rejection', value);
+ }
+ });
+ // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
+ promise._h = isNode || isUnhandled(promise) ? 2 : 1;
+ } promise._a = undefined;
+ if (unhandled && result.e) throw result.v;
+ });
+};
+var isUnhandled = function (promise) {
+ return promise._h !== 1 && (promise._a || promise._c).length === 0;
+};
+var onHandleUnhandled = function (promise) {
+ task.call(global, function () {
+ var handler;
+ if (isNode) {
+ process.emit('rejectionHandled', promise);
+ } else if (handler = global.onrejectionhandled) {
+ handler({ promise: promise, reason: promise._v });
+ }
+ });
+};
+var $reject = function (value) {
+ var promise = this;
+ if (promise._d) return;
+ promise._d = true;
+ promise = promise._w || promise; // unwrap
+ promise._v = value;
+ promise._s = 2;
+ if (!promise._a) promise._a = promise._c.slice();
+ notify(promise, true);
+};
+var $resolve = function (value) {
+ var promise = this;
+ var then;
+ if (promise._d) return;
+ promise._d = true;
+ promise = promise._w || promise; // unwrap
+ try {
+ if (promise === value) throw TypeError("Promise can't be resolved itself");
+ if (then = isThenable(value)) {
+ microtask(function () {
+ var wrapper = { _w: promise, _d: false }; // wrap
+ try {
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
+ } catch (e) {
+ $reject.call(wrapper, e);
+ }
+ });
+ } else {
+ promise._v = value;
+ promise._s = 1;
+ notify(promise, false);
+ }
+ } catch (e) {
+ $reject.call({ _w: promise, _d: false }, e); // wrap
+ }
+};
+
+// constructor polyfill
+if (!USE_NATIVE) {
+ // 25.4.3.1 Promise(executor)
+ $Promise = function Promise(executor) {
+ anInstance(this, $Promise, PROMISE, '_h');
+ aFunction(executor);
+ Internal.call(this);
+ try {
+ executor(ctx($resolve, this, 1), ctx($reject, this, 1));
+ } catch (err) {
+ $reject.call(this, err);
+ }
+ };
+ // eslint-disable-next-line no-unused-vars
+ Internal = function Promise(executor) {
+ this._c = []; // <- awaiting reactions
+ this._a = undefined; // <- checked in isUnhandled reactions
+ this._s = 0; // <- state
+ this._d = false; // <- done
+ this._v = undefined; // <- value
+ this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
+ this._n = false; // <- notify
+ };
+ Internal.prototype = __webpack_require__(190)($Promise.prototype, {
+ // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
+ then: function then(onFulfilled, onRejected) {
+ var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
+ reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
+ reaction.fail = typeof onRejected == 'function' && onRejected;
+ reaction.domain = isNode ? process.domain : undefined;
+ this._c.push(reaction);
+ if (this._a) this._a.push(reaction);
+ if (this._s) notify(this, false);
+ return reaction.promise;
+ },
+ // 25.4.5.1 Promise.prototype.catch(onRejected)
+ 'catch': function (onRejected) {
+ return this.then(undefined, onRejected);
+ }
+ });
+ OwnPromiseCapability = function () {
+ var promise = new Internal();
+ this.promise = promise;
+ this.resolve = ctx($resolve, promise, 1);
+ this.reject = ctx($reject, promise, 1);
+ };
+ newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
+ return C === $Promise || C === Wrapper
+ ? new OwnPromiseCapability(C)
+ : newGenericPromiseCapability(C);
+ };
+}
+
+$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
+__webpack_require__(106)($Promise, PROMISE);
+__webpack_require__(268)(PROMISE);
+Wrapper = __webpack_require__(7)[PROMISE];
+
+// statics
+$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
+ // 25.4.4.5 Promise.reject(r)
+ reject: function reject(r) {
+ var capability = newPromiseCapability(this);
+ var $$reject = capability.reject;
+ $$reject(r);
+ return capability.promise;
+ }
+});
+$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
+ // 25.4.4.6 Promise.resolve(x)
+ resolve: function resolve(x) {
+ return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
+ }
+});
+$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(281)(function (iter) {
+ $Promise.all(iter)['catch'](empty);
+})), PROMISE, {
+ // 25.4.4.1 Promise.all(iterable)
+ all: function all(iterable) {
+ var C = this;
+ var capability = newPromiseCapability(C);
+ var resolve = capability.resolve;
+ var reject = capability.reject;
+ var result = perform(function () {
+ var values = [];
+ var index = 0;
+ var remaining = 1;
+ forOf(iterable, false, function (promise) {
+ var $index = index++;
+ var alreadyCalled = false;
+ values.push(undefined);
+ remaining++;
+ C.resolve(promise).then(function (value) {
+ if (alreadyCalled) return;
+ alreadyCalled = true;
+ values[$index] = value;
+ --remaining || resolve(values);
+ }, reject);
+ });
+ --remaining || resolve(values);
+ });
+ if (result.e) reject(result.v);
+ return capability.promise;
+ },
+ // 25.4.4.4 Promise.race(iterable)
+ race: function race(iterable) {
+ var C = this;
+ var capability = newPromiseCapability(C);
+ var reject = capability.reject;
+ var result = perform(function () {
+ forOf(iterable, false, function (promise) {
+ C.resolve(promise).then(capability.resolve, reject);
+ });
+ });
+ if (result.e) reject(result.v);
+ return capability.promise;
+ }
+});
+
+
+/***/ }),
+/* 521 */
+/***/ (function(module, exports) {
+
+// fast apply, http://jsperf.lnkit.com/fast-apply/5
+module.exports = function (fn, args, that) {
+ var un = that === undefined;
+ switch (args.length) {
+ case 0: return un ? fn()
+ : fn.call(that);
+ case 1: return un ? fn(args[0])
+ : fn.call(that, args[0]);
+ case 2: return un ? fn(args[0], args[1])
+ : fn.call(that, args[0], args[1]);
+ case 3: return un ? fn(args[0], args[1], args[2])
+ : fn.call(that, args[0], args[1], args[2]);
+ case 4: return un ? fn(args[0], args[1], args[2], args[3])
+ : fn.call(that, args[0], args[1], args[2], args[3]);
+ } return fn.apply(that, args);
+};
+
+
+/***/ }),
+/* 522 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(17);
+var macrotask = __webpack_require__(283).set;
+var Observer = global.MutationObserver || global.WebKitMutationObserver;
+var process = global.process;
+var Promise = global.Promise;
+var isNode = __webpack_require__(99)(process) == 'process';
+
+module.exports = function () {
+ var head, last, notify;
+
+ var flush = function () {
+ var parent, fn;
+ if (isNode && (parent = process.domain)) parent.exit();
+ while (head) {
+ fn = head.fn;
+ head = head.next;
+ try {
+ fn();
+ } catch (e) {
+ if (head) notify();
+ else last = undefined;
+ throw e;
+ }
+ } last = undefined;
+ if (parent) parent.enter();
+ };
+
+ // Node.js
+ if (isNode) {
+ notify = function () {
+ process.nextTick(flush);
+ };
+ // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
+ } else if (Observer && !(global.navigator && global.navigator.standalone)) {
+ var toggle = true;
+ var node = document.createTextNode('');
+ new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
+ notify = function () {
+ node.data = toggle = !toggle;
+ };
+ // environments with maybe non-completely correct, but existent Promise
+ } else if (Promise && Promise.resolve) {
+ // Promise.resolve without an argument throws an error in LG WebOS 2
+ var promise = Promise.resolve(undefined);
+ notify = function () {
+ promise.then(flush);
+ };
+ // for other environments - macrotask based on:
+ // - setImmediate
+ // - MessageChannel
+ // - window.postMessag
+ // - onreadystatechange
+ // - setTimeout
+ } else {
+ notify = function () {
+ // strange IE + webpack dev server bug - use .call(global)
+ macrotask.call(global, flush);
+ };
+ }
+
+ return function (fn) {
+ var task = { fn: fn, next: undefined };
+ if (last) last.next = task;
+ if (!head) {
+ head = task;
+ notify();
+ } last = task;
+ };
+};
+
+
+/***/ }),
+/* 523 */
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__(17);
+var navigator = global.navigator;
+
+module.exports = navigator && navigator.userAgent || '';
+
+
+/***/ }),
+/* 524 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+// https://github.com/tc39/proposal-promise-finally
+
+var $export = __webpack_require__(9);
+var core = __webpack_require__(7);
+var global = __webpack_require__(17);
+var speciesConstructor = __webpack_require__(282);
+var promiseResolve = __webpack_require__(285);
+
+$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
+ var C = speciesConstructor(this, core.Promise || global.Promise);
+ var isFunction = typeof onFinally == 'function';
+ return this.then(
+ isFunction ? function (x) {
+ return promiseResolve(C, onFinally()).then(function () { return x; });
+ } : onFinally,
+ isFunction ? function (e) {
+ return promiseResolve(C, onFinally()).then(function () { throw e; });
+ } : onFinally
+ );
+} });
+
+
+/***/ }),
+/* 525 */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+// https://github.com/tc39/proposal-promise-try
+var $export = __webpack_require__(9);
+var newPromiseCapability = __webpack_require__(196);
+var perform = __webpack_require__(284);
+
+$export($export.S, 'Promise', { 'try': function (callbackfn) {
+ var promiseCapability = newPromiseCapability.f(this);
+ var result = perform(callbackfn);
+ (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
+ return promiseCapability.promise;
+} });
+
+
+/***/ }),
+/* 526 */
+/***/ (function(module, exports, __webpack_require__) {
+
+module.exports = __webpack_require__(286).BrotliDecompressBuffer;
+
+
+/***/ }),
+/* 527 */
/***/ (function(module, exports) {
/* Copyright 2013 Google Inc. All Rights Reserved.
@@ -59389,11 +63459,11 @@ module.exports = BrotliBitReader;
/***/ }),
-/* 433 */
+/* 528 */
/***/ (function(module, exports, __webpack_require__) {
-var base64 = __webpack_require__(434);
-var fs = __webpack_require__(84);
+var base64 = __webpack_require__(529);
+var fs = __webpack_require__(53);
/**
* The normal dictionary-data.js is quite large, which makes it
@@ -59403,14 +63473,14 @@ var fs = __webpack_require__(84);
* it's own dictionary. 😜
*/
exports.init = function() {
- var BrotliDecompressBuffer = __webpack_require__(205).BrotliDecompressBuffer;
- var compressed = base64.toByteArray(__webpack_require__(435));
+ var BrotliDecompressBuffer = __webpack_require__(286).BrotliDecompressBuffer;
+ var compressed = base64.toByteArray(__webpack_require__(530));
return BrotliDecompressBuffer(compressed);
};
/***/ }),
-/* 434 */
+/* 529 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -59541,9 +63611,7 @@ function fromByteArray (uint8) {
// go through the array every three bytes, we'll deal with trailing stuff later
for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
- parts.push(encodeChunk(
- uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)
- ))
+ parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
}
// pad the end with zeros, but make sure to not forget the extra bytes
@@ -59569,14 +63637,14 @@ function fromByteArray (uint8) {
/***/ }),
-/* 435 */
+/* 530 */
/***/ (function(module, exports) {
module.exports="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";
/***/ }),
-/* 436 */
+/* 531 */
/***/ (function(module, exports) {
/* Copyright 2013 Google Inc. All Rights Reserved.
@@ -59832,7 +63900,7 @@ exports.lookupOffsets = new Uint16Array([
/***/ }),
-/* 437 */
+/* 532 */
/***/ (function(module, exports) {
/* Copyright 2013 Google Inc. All Rights Reserved.
@@ -59898,7 +63966,7 @@ exports.kCopyRangeLut = [
/***/ }),
-/* 438 */
+/* 533 */
/***/ (function(module, exports, __webpack_require__) {
/* Copyright 2013 Google Inc. All Rights Reserved.
@@ -59918,7 +63986,7 @@ exports.kCopyRangeLut = [
Transformations on dictionary words.
*/
-var BrotliDictionary = __webpack_require__(207);
+var BrotliDictionary = __webpack_require__(288);
var kIdentity = 0;
var kOmitLast1 = 1;
@@ -60151,17 +64219,71 @@ exports.transformDictionaryWord = function(dst, idx, word, len, transform) {
/***/ }),
-/* 439 */
+/* 534 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+__webpack_require__(28);
+
+__webpack_require__(46);
+
+__webpack_require__(61);
+
+__webpack_require__(31);
+
+__webpack_require__(62);
+
+__webpack_require__(134);
+
+__webpack_require__(63);
+
+__webpack_require__(64);
+
+__webpack_require__(65);
+
+__webpack_require__(66);
+
+__webpack_require__(67);
+
+__webpack_require__(68);
+
+__webpack_require__(69);
+
+__webpack_require__(70);
+
+__webpack_require__(71);
+
+__webpack_require__(72);
+
+__webpack_require__(73);
+
+__webpack_require__(74);
+
+__webpack_require__(75);
+
+__webpack_require__(76);
+
+__webpack_require__(77);
+
+__webpack_require__(78);
+
+__webpack_require__(79);
+
+__webpack_require__(80);
+
+__webpack_require__(81);
+
__webpack_require__(82);
-__webpack_require__(44);
+__webpack_require__(83);
-var inflate = __webpack_require__(83); // Shift size for getting the index-1 table offset.
+__webpack_require__(84);
+
+__webpack_require__(85);
+
+var inflate = __webpack_require__(135); // Shift size for getting the index-1 table offset.
var SHIFT_1 = 6 + 5; // Shift size for getting the index-2 table offset.
@@ -60290,7 +64412,7 @@ var UnicodeTrie = /*#__PURE__*/function () {
module.exports = UnicodeTrie;
/***/ }),
-/* 440 */
+/* 535 */
/***/ (function(module, exports, __webpack_require__) {
var lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
@@ -60420,7 +64542,7 @@ var lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
/***/ }),
-/* 441 */
+/* 536 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -60509,7 +64631,7 @@ exports.SP = 38; // Space
exports.XX = 39; // Unknown
/***/ }),
-/* 442 */
+/* 537 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -60530,15 +64652,17 @@ exports.PR_BRK = PR_BRK = 4; // Prohibited break
exports.pairTable = [[PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, CP_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, CI_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, CI_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, DI_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, DI_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, CI_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, PR_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK], [IN_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, CI_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, IN_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, DI_BRK], [DI_BRK, PR_BRK, PR_BRK, IN_BRK, IN_BRK, IN_BRK, PR_BRK, PR_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK, IN_BRK, DI_BRK, DI_BRK, PR_BRK, CI_BRK, PR_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, DI_BRK, IN_BRK]];
/***/ }),
-/* 443 */
+/* 538 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(Buffer) {
-__webpack_require__(157);
+__webpack_require__(216);
-__webpack_require__(158);
+__webpack_require__(195);
+
+__webpack_require__(46);
/*
* MIT LICENSE
@@ -60559,9 +64683,9 @@ __webpack_require__(158);
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
-var fs = __webpack_require__(84);
+var fs = __webpack_require__(53);
-var zlib = __webpack_require__(170);
+var zlib = __webpack_require__(245);
module.exports = /*#__PURE__*/function () {
PNG.decode = function decode(path, fn) {
@@ -60963,4241 +65087,6148 @@ module.exports = /*#__PURE__*/function () {
return PNG;
}();
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 444 */
+/* 539 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-var isArray = __webpack_require__(0).isArray;
-
-function typeName(bold, italics) {
- var type = 'normal';
- if (bold && italics) {
- type = 'bolditalics';
- } else if (bold) {
- type = 'bold';
- } else if (italics) {
- type = 'italics';
- }
- return type;
-}
-
-function FontProvider(fontDescriptors, pdfKitDoc) {
- this.fonts = {};
- this.pdfKitDoc = pdfKitDoc;
- this.fontCache = {};
-
- for (var font in fontDescriptors) {
- if (fontDescriptors.hasOwnProperty(font)) {
- var fontDef = fontDescriptors[font];
-
- this.fonts[font] = {
- normal: fontDef.normal,
- bold: fontDef.bold,
- italics: fontDef.italics,
- bolditalics: fontDef.bolditalics
- };
- }
- }
-}
-
-FontProvider.prototype.getFontType = function (bold, italics) {
- return typeName(bold, italics);
-}
-
-FontProvider.prototype.getFontFile = function (familyName, bold, italics) {
- var type = this.getFontType(bold, italics);
- if (!this.fonts[familyName] || !this.fonts[familyName][type]) {
- return null;
- }
-
- return this.fonts[familyName][type];
-}
-
-FontProvider.prototype.provideFont = function (familyName, bold, italics) {
- var type = this.getFontType(bold, italics);
- if (this.getFontFile(familyName, bold, italics) === null) {
- throw new Error('Font \'' + familyName + '\' in style \'' + type + '\' is not defined in the font section of the document definition.');
- }
-
- this.fontCache[familyName] = this.fontCache[familyName] || {};
-
- if (!this.fontCache[familyName][type]) {
- var def = this.fonts[familyName][type];
- if (!isArray(def)) {
- def = [def];
- }
- this.fontCache[familyName][type] = this.pdfKitDoc.font.apply(this.pdfKitDoc, def)._font;
- }
-
- return this.fontCache[familyName][type];
-};
-
-module.exports = FontProvider;
+
+
+var isArray = __webpack_require__(0).isArray;
+
+function typeName(bold, italics) {
+ var type = 'normal';
+ if (bold && italics) {
+ type = 'bolditalics';
+ } else if (bold) {
+ type = 'bold';
+ } else if (italics) {
+ type = 'italics';
+ }
+ return type;
+}
+
+function FontProvider(fontDescriptors, pdfKitDoc) {
+ this.fonts = {};
+ this.pdfKitDoc = pdfKitDoc;
+ this.fontCache = {};
+
+ for (var font in fontDescriptors) {
+ if (fontDescriptors.hasOwnProperty(font)) {
+ var fontDef = fontDescriptors[font];
+
+ this.fonts[font] = {
+ normal: fontDef.normal,
+ bold: fontDef.bold,
+ italics: fontDef.italics,
+ bolditalics: fontDef.bolditalics
+ };
+ }
+ }
+}
+
+FontProvider.prototype.getFontType = function (bold, italics) {
+ return typeName(bold, italics);
+}
+
+FontProvider.prototype.getFontFile = function (familyName, bold, italics) {
+ var type = this.getFontType(bold, italics);
+ if (!this.fonts[familyName] || !this.fonts[familyName][type]) {
+ return null;
+ }
+
+ return this.fonts[familyName][type];
+}
+
+FontProvider.prototype.provideFont = function (familyName, bold, italics) {
+ var type = this.getFontType(bold, italics);
+ if (this.getFontFile(familyName, bold, italics) === null) {
+ throw new Error('Font \'' + familyName + '\' in style \'' + type + '\' is not defined in the font section of the document definition.');
+ }
+
+ this.fontCache[familyName] = this.fontCache[familyName] || {};
+
+ if (!this.fontCache[familyName][type]) {
+ var def = this.fonts[familyName][type];
+ if (!isArray(def)) {
+ def = [def];
+ }
+ this.fontCache[familyName][type] = this.pdfKitDoc.font.apply(this.pdfKitDoc, def)._font;
+ }
+
+ return this.fontCache[familyName][type];
+};
+
+module.exports = FontProvider;
/***/ }),
-/* 445 */
+/* 540 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-var TraversalTracker = __webpack_require__(210);
-var DocPreprocessor = __webpack_require__(446);
-var DocMeasure = __webpack_require__(447);
-var DocumentContext = __webpack_require__(212);
-var PageElementWriter = __webpack_require__(449);
-var ColumnCalculator = __webpack_require__(131);
-var TableProcessor = __webpack_require__(451);
-var Line = __webpack_require__(213);
-var isString = __webpack_require__(0).isString;
-var isArray = __webpack_require__(0).isArray;
-var isUndefined = __webpack_require__(0).isUndefined;
-var isNull = __webpack_require__(0).isNull;
-var pack = __webpack_require__(0).pack;
-var offsetVector = __webpack_require__(0).offsetVector;
-var fontStringify = __webpack_require__(0).fontStringify;
-var getNodeId = __webpack_require__(0).getNodeId;
-var isFunction = __webpack_require__(0).isFunction;
-var TextTools = __webpack_require__(130);
-var StyleContextStack = __webpack_require__(211);
-var isNumber = __webpack_require__(0).isNumber;
-
-function addAll(target, otherArray) {
- otherArray.forEach(function (item) {
- target.push(item);
- });
-}
-
-/**
- * Creates an instance of LayoutBuilder - layout engine which turns document-definition-object
- * into a set of pages, lines, inlines and vectors ready to be rendered into a PDF
- *
- * @param {Object} pageSize - an object defining page width and height
- * @param {Object} pageMargins - an object defining top, left, right and bottom margins
- */
-function LayoutBuilder(pageSize, pageMargins, imageMeasure, svgMeasure) {
- this.pageSize = pageSize;
- this.pageMargins = pageMargins;
- this.tracker = new TraversalTracker();
- this.imageMeasure = imageMeasure;
- this.svgMeasure = svgMeasure;
- this.tableLayouts = {};
-}
-
-LayoutBuilder.prototype.registerTableLayouts = function (tableLayouts) {
- this.tableLayouts = pack(this.tableLayouts, tableLayouts);
-};
-
-/**
- * Executes layout engine on document-definition-object and creates an array of pages
- * containing positioned Blocks, Lines and inlines
- *
- * @param {Object} docStructure document-definition-object
- * @param {Object} fontProvider font provider
- * @param {Object} styleDictionary dictionary with style definitions
- * @param {Object} defaultStyle default style definition
- * @return {Array} an array of pages
- */
-LayoutBuilder.prototype.layoutDocument = function (docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark, pageBreakBeforeFct) {
-
- function addPageBreaksIfNecessary(linearNodeList, pages) {
-
- if (!isFunction(pageBreakBeforeFct)) {
- return false;
- }
-
- linearNodeList = linearNodeList.filter(function (node) {
- return node.positions.length > 0;
- });
-
- linearNodeList.forEach(function (node) {
- var nodeInfo = {};
- [
- 'id', 'text', 'ul', 'ol', 'table', 'image', 'qr', 'canvas', 'svg', 'columns',
- 'headlineLevel', 'style', 'pageBreak', 'pageOrientation',
- 'width', 'height'
- ].forEach(function (key) {
- if (node[key] !== undefined) {
- nodeInfo[key] = node[key];
- }
- });
- nodeInfo.startPosition = node.positions[0];
- nodeInfo.pageNumbers = node.positions.map(function (node) {
- return node.pageNumber;
- }).filter(function (element, position, array) {
- return array.indexOf(element) === position;
- });
- nodeInfo.pages = pages.length;
- nodeInfo.stack = isArray(node.stack);
-
- node.nodeInfo = nodeInfo;
- });
-
- for (var index = 0; index < linearNodeList.length; index++) {
- var node = linearNodeList[index];
- if (node.pageBreak !== 'before' && !node.pageBreakCalculated) {
- node.pageBreakCalculated = true;
- var pageNumber = node.nodeInfo.pageNumbers[0];
- var followingNodesOnPage = [];
- var nodesOnNextPage = [];
- var previousNodesOnPage = [];
- for (var ii = index + 1, l = linearNodeList.length; ii < l; ii++) {
- if (linearNodeList[ii].nodeInfo.pageNumbers.indexOf(pageNumber) > -1) {
- followingNodesOnPage.push(linearNodeList[ii].nodeInfo);
- }
- if (linearNodeList[ii].nodeInfo.pageNumbers.indexOf(pageNumber + 1) > -1) {
- nodesOnNextPage.push(linearNodeList[ii].nodeInfo);
- }
- }
- for (var ii = 0; ii < index; ii++) {
- if (linearNodeList[ii].nodeInfo.pageNumbers.indexOf(pageNumber) > -1) {
- previousNodesOnPage.push(linearNodeList[ii].nodeInfo);
- }
- }
- if (pageBreakBeforeFct(node.nodeInfo, followingNodesOnPage, nodesOnNextPage, previousNodesOnPage)) {
- node.pageBreak = 'before';
- return true;
- }
- }
- }
-
- return false;
- }
-
- this.docPreprocessor = new DocPreprocessor();
- this.docMeasure = new DocMeasure(fontProvider, styleDictionary, defaultStyle, this.imageMeasure, this.svgMeasure, this.tableLayouts, images);
-
-
- function resetXYs(result) {
- result.linearNodeList.forEach(function (node) {
- node.resetXY();
- });
- }
-
- var result = this.tryLayoutDocument(docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark);
- while (addPageBreaksIfNecessary(result.linearNodeList, result.pages)) {
- resetXYs(result);
- result = this.tryLayoutDocument(docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark);
- }
-
- return result.pages;
-};
-
-LayoutBuilder.prototype.tryLayoutDocument = function (docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark, pageBreakBeforeFct) {
-
- this.linearNodeList = [];
- docStructure = this.docPreprocessor.preprocessDocument(docStructure);
- docStructure = this.docMeasure.measureDocument(docStructure);
-
- this.writer = new PageElementWriter(
- new DocumentContext(this.pageSize, this.pageMargins), this.tracker);
-
- var _this = this;
- this.writer.context().tracker.startTracking('pageAdded', function () {
- _this.addBackground(background);
- });
-
- this.addBackground(background);
- this.processNode(docStructure);
- this.addHeadersAndFooters(header, footer);
- if (watermark != null) {
- this.addWatermark(watermark, fontProvider, defaultStyle);
- }
-
- return { pages: this.writer.context().pages, linearNodeList: this.linearNodeList };
-};
-
-
-LayoutBuilder.prototype.addBackground = function (background) {
- var backgroundGetter = isFunction(background) ? background : function () {
- return background;
- };
-
- var context = this.writer.context();
- var pageSize = context.getCurrentPage().pageSize;
-
- var pageBackground = backgroundGetter(context.page + 1, pageSize);
-
- if (pageBackground) {
- this.writer.beginUnbreakableBlock(pageSize.width, pageSize.height);
- pageBackground = this.docPreprocessor.preprocessDocument(pageBackground);
- this.processNode(this.docMeasure.measureDocument(pageBackground));
- this.writer.commitUnbreakableBlock(0, 0);
- context.backgroundLength[context.page] += pageBackground.positions.length;
- }
-};
-
-LayoutBuilder.prototype.addStaticRepeatable = function (headerOrFooter, sizeFunction) {
- this.addDynamicRepeatable(function () {
- return JSON.parse(JSON.stringify(headerOrFooter)); // copy to new object
- }, sizeFunction);
-};
-
-LayoutBuilder.prototype.addDynamicRepeatable = function (nodeGetter, sizeFunction) {
- var pages = this.writer.context().pages;
-
- for (var pageIndex = 0, l = pages.length; pageIndex < l; pageIndex++) {
- this.writer.context().page = pageIndex;
-
- var node = nodeGetter(pageIndex + 1, l, this.writer.context().pages[pageIndex].pageSize);
-
- if (node) {
- var sizes = sizeFunction(this.writer.context().getCurrentPage().pageSize, this.pageMargins);
- this.writer.beginUnbreakableBlock(sizes.width, sizes.height);
- node = this.docPreprocessor.preprocessDocument(node);
- this.processNode(this.docMeasure.measureDocument(node));
- this.writer.commitUnbreakableBlock(sizes.x, sizes.y);
- }
- }
-};
-
-LayoutBuilder.prototype.addHeadersAndFooters = function (header, footer) {
- var headerSizeFct = function (pageSize, pageMargins) {
- return {
- x: 0,
- y: 0,
- width: pageSize.width,
- height: pageMargins.top
- };
- };
-
- var footerSizeFct = function (pageSize, pageMargins) {
- return {
- x: 0,
- y: pageSize.height - pageMargins.bottom,
- width: pageSize.width,
- height: pageMargins.bottom
- };
- };
-
- if (isFunction(header)) {
- this.addDynamicRepeatable(header, headerSizeFct);
- } else if (header) {
- this.addStaticRepeatable(header, headerSizeFct);
- }
-
- if (isFunction(footer)) {
- this.addDynamicRepeatable(footer, footerSizeFct);
- } else if (footer) {
- this.addStaticRepeatable(footer, footerSizeFct);
- }
-};
-
-LayoutBuilder.prototype.addWatermark = function (watermark, fontProvider, defaultStyle) {
- if (isString(watermark)) {
- watermark = { 'text': watermark };
- }
-
- if (!watermark.text) { // empty watermark text
- return;
- }
-
- watermark.font = watermark.font || defaultStyle.font || 'Roboto';
- watermark.fontSize = watermark.fontSize || 'auto';
- watermark.color = watermark.color || 'black';
- watermark.opacity = isNumber(watermark.opacity) ? watermark.opacity : 0.6;
- watermark.bold = watermark.bold || false;
- watermark.italics = watermark.italics || false;
- watermark.angle = !isUndefined(watermark.angle) && !isNull(watermark.angle) ? watermark.angle : null;
-
- if (watermark.angle === null) {
- watermark.angle = Math.atan2(this.pageSize.height, this.pageSize.width) * -180 / Math.PI;
- }
-
- if (watermark.fontSize === 'auto') {
- watermark.fontSize = getWatermarkFontSize(this.pageSize, watermark, fontProvider);
- }
-
- var watermarkObject = {
- text: watermark.text,
- font: fontProvider.provideFont(watermark.font, watermark.bold, watermark.italics),
- fontSize: watermark.fontSize,
- color: watermark.color,
- opacity: watermark.opacity,
- angle: watermark.angle
- };
-
- watermarkObject._size = getWatermarkSize(watermark, fontProvider);
-
- var pages = this.writer.context().pages;
- for (var i = 0, l = pages.length; i < l; i++) {
- pages[i].watermark = watermarkObject;
- }
-
- function getWatermarkSize(watermark, fontProvider) {
- var textTools = new TextTools(fontProvider);
- var styleContextStack = new StyleContextStack(null, { font: watermark.font, bold: watermark.bold, italics: watermark.italics });
-
- styleContextStack.push({
- fontSize: watermark.fontSize
- });
-
- var size = textTools.sizeOfString(watermark.text, styleContextStack);
- var rotatedSize = textTools.sizeOfRotatedText(watermark.text, watermark.angle, styleContextStack);
-
- return { size: size, rotatedSize: rotatedSize };
- }
-
- function getWatermarkFontSize(pageSize, watermark, fontProvider) {
- var textTools = new TextTools(fontProvider);
- var styleContextStack = new StyleContextStack(null, { font: watermark.font, bold: watermark.bold, italics: watermark.italics });
- var rotatedSize;
-
- /**
- * Binary search the best font size.
- * Initial bounds [0, 1000]
- * Break when range < 1
- */
- var a = 0;
- var b = 1000;
- var c = (a + b) / 2;
- while (Math.abs(a - b) > 1) {
- styleContextStack.push({
- fontSize: c
- });
- rotatedSize = textTools.sizeOfRotatedText(watermark.text, watermark.angle, styleContextStack);
- if (rotatedSize.width > pageSize.width) {
- b = c;
- c = (a + b) / 2;
- } else if (rotatedSize.width < pageSize.width) {
- if (rotatedSize.height > pageSize.height) {
- b = c;
- c = (a + b) / 2;
- } else {
- a = c;
- c = (a + b) / 2;
- }
- }
- styleContextStack.pop();
- }
- /*
- End binary search
- */
- return c;
- }
-};
-
-function decorateNode(node) {
- var x = node.x, y = node.y;
- node.positions = [];
-
- if (isArray(node.canvas)) {
- node.canvas.forEach(function (vector) {
- var x = vector.x, y = vector.y, x1 = vector.x1, y1 = vector.y1, x2 = vector.x2, y2 = vector.y2;
- vector.resetXY = function () {
- vector.x = x;
- vector.y = y;
- vector.x1 = x1;
- vector.y1 = y1;
- vector.x2 = x2;
- vector.y2 = y2;
- };
- });
- }
-
- node.resetXY = function () {
- node.x = x;
- node.y = y;
- if (isArray(node.canvas)) {
- node.canvas.forEach(function (vector) {
- vector.resetXY();
- });
- }
- };
-}
-
-LayoutBuilder.prototype.processNode = function (node) {
- var self = this;
-
- this.linearNodeList.push(node);
- decorateNode(node);
-
- applyMargins(function () {
- var unbreakable = node.unbreakable;
- if (unbreakable) {
- self.writer.beginUnbreakableBlock();
- }
-
- var absPosition = node.absolutePosition;
- if (absPosition) {
- self.writer.context().beginDetachedBlock();
- self.writer.context().moveTo(absPosition.x || 0, absPosition.y || 0);
- }
-
- var relPosition = node.relativePosition;
- if (relPosition) {
- self.writer.context().beginDetachedBlock();
- self.writer.context().moveToRelative(relPosition.x || 0, relPosition.y || 0);
- }
-
- if (node.stack) {
- self.processVerticalContainer(node);
- } else if (node.columns) {
- self.processColumns(node);
- } else if (node.ul) {
- self.processList(false, node);
- } else if (node.ol) {
- self.processList(true, node);
- } else if (node.table) {
- self.processTable(node);
- } else if (node.text !== undefined) {
- self.processLeaf(node);
- } else if (node.toc) {
- self.processToc(node);
- } else if (node.image) {
- self.processImage(node);
- } else if (node.svg) {
- self.processSVG(node);
- } else if (node.canvas) {
- self.processCanvas(node);
- } else if (node.qr) {
- self.processQr(node);
- } else if (!node._span) {
- throw 'Unrecognized document structure: ' + JSON.stringify(node, fontStringify);
- }
-
- if (absPosition || relPosition) {
- self.writer.context().endDetachedBlock();
- }
-
- if (unbreakable) {
- self.writer.commitUnbreakableBlock();
- }
- });
-
- function applyMargins(callback) {
- var margin = node._margin;
-
- if (node.pageBreak === 'before') {
- self.writer.moveToNextPage(node.pageOrientation);
- } else if (node.pageBreak === 'beforeOdd') {
- self.writer.moveToNextPage(node.pageOrientation);
- if ((self.writer.context().page + 1) % 2 === 1) {
- self.writer.moveToNextPage(node.pageOrientation);
- }
- } else if (node.pageBreak === 'beforeEven') {
- self.writer.moveToNextPage(node.pageOrientation);
- if ((self.writer.context().page + 1) % 2 === 0) {
- self.writer.moveToNextPage(node.pageOrientation);
- }
- }
-
- if (margin) {
- self.writer.context().moveDown(margin[1]);
- self.writer.context().addMargin(margin[0], margin[2]);
- }
-
- callback();
-
- if (margin) {
- self.writer.context().addMargin(-margin[0], -margin[2]);
- self.writer.context().moveDown(margin[3]);
- }
-
- if (node.pageBreak === 'after') {
- self.writer.moveToNextPage(node.pageOrientation);
- } else if (node.pageBreak === 'afterOdd') {
- self.writer.moveToNextPage(node.pageOrientation);
- if ((self.writer.context().page + 1) % 2 === 1) {
- self.writer.moveToNextPage(node.pageOrientation);
- }
- } else if (node.pageBreak === 'afterEven') {
- self.writer.moveToNextPage(node.pageOrientation);
- if ((self.writer.context().page + 1) % 2 === 0) {
- self.writer.moveToNextPage(node.pageOrientation);
- }
- }
- }
-};
-
-// vertical container
-LayoutBuilder.prototype.processVerticalContainer = function (node) {
- var self = this;
- node.stack.forEach(function (item) {
- self.processNode(item);
- addAll(node.positions, item.positions);
-
- //TODO: paragraph gap
- });
-};
-
-// columns
-LayoutBuilder.prototype.processColumns = function (columnNode) {
- var columns = columnNode.columns;
- var availableWidth = this.writer.context().availableWidth;
- var gaps = gapArray(columnNode._gap);
-
- if (gaps) {
- availableWidth -= (gaps.length - 1) * columnNode._gap;
- }
-
- ColumnCalculator.buildColumnWidths(columns, availableWidth);
- var result = this.processRow(columns, columns, gaps);
- addAll(columnNode.positions, result.positions);
-
-
- function gapArray(gap) {
- if (!gap) {
- return null;
- }
-
- var gaps = [];
- gaps.push(0);
-
- for (var i = columns.length - 1; i > 0; i--) {
- gaps.push(gap);
- }
-
- return gaps;
- }
-};
-
-LayoutBuilder.prototype.processRow = function (columns, widths, gaps, tableBody, tableRow, height) {
- var self = this;
- var pageBreaks = [], positions = [];
-
- this.tracker.auto('pageChanged', storePageBreakData, function () {
- widths = widths || columns;
-
- self.writer.context().beginColumnGroup();
-
- for (var i = 0, l = columns.length; i < l; i++) {
- var column = columns[i];
- var width = widths[i]._calcWidth;
- var leftOffset = colLeftOffset(i);
-
- if (column.colSpan && column.colSpan > 1) {
- for (var j = 1; j < column.colSpan; j++) {
- width += widths[++i]._calcWidth + gaps[i];
- }
- }
-
- self.writer.context().beginColumn(width, leftOffset, getEndingCell(column, i));
- if (!column._span) {
- self.processNode(column);
- addAll(positions, column.positions);
- } else if (column._columnEndingContext) {
- // row-span ending
- self.writer.context().markEnding(column);
- }
- }
-
- self.writer.context().completeColumnGroup(height);
- });
-
- return { pageBreaks: pageBreaks, positions: positions };
-
- function storePageBreakData(data) {
- var pageDesc;
-
- for (var i = 0, l = pageBreaks.length; i < l; i++) {
- var desc = pageBreaks[i];
- if (desc.prevPage === data.prevPage) {
- pageDesc = desc;
- break;
- }
- }
-
- if (!pageDesc) {
- pageDesc = data;
- pageBreaks.push(pageDesc);
- }
- pageDesc.prevY = Math.max(pageDesc.prevY, data.prevY);
- pageDesc.y = Math.min(pageDesc.y, data.y);
- }
-
- function colLeftOffset(i) {
- if (gaps && gaps.length > i) {
- return gaps[i];
- }
- return 0;
- }
-
- function getEndingCell(column, columnIndex) {
- if (column.rowSpan && column.rowSpan > 1) {
- var endingRow = tableRow + column.rowSpan - 1;
- if (endingRow >= tableBody.length) {
- throw 'Row span for column ' + columnIndex + ' (with indexes starting from 0) exceeded row count';
- }
- return tableBody[endingRow][columnIndex];
- }
-
- return null;
- }
-};
-
-// lists
-LayoutBuilder.prototype.processList = function (orderedList, node) {
- var self = this,
- items = orderedList ? node.ol : node.ul,
- gapSize = node._gapSize;
-
- this.writer.context().addMargin(gapSize.width);
-
- var nextMarker;
- this.tracker.auto('lineAdded', addMarkerToFirstLeaf, function () {
- items.forEach(function (item) {
- nextMarker = item.listMarker;
- self.processNode(item);
- addAll(node.positions, item.positions);
- });
- });
-
- this.writer.context().addMargin(-gapSize.width);
-
- function addMarkerToFirstLeaf(line) {
- // I'm not very happy with the way list processing is implemented
- // (both code and algorithm should be rethinked)
- if (nextMarker) {
- var marker = nextMarker;
- nextMarker = null;
-
- if (marker.canvas) {
- var vector = marker.canvas[0];
-
- offsetVector(vector, -marker._minWidth, 0);
- self.writer.addVector(vector);
- } else if (marker._inlines) {
- var markerLine = new Line(self.pageSize.width);
- markerLine.addInline(marker._inlines[0]);
- markerLine.x = -marker._minWidth;
- markerLine.y = line.getAscenderHeight() - markerLine.getAscenderHeight();
- self.writer.addLine(markerLine, true);
- }
- }
- }
-};
-
-// tables
-LayoutBuilder.prototype.processTable = function (tableNode) {
- var processor = new TableProcessor(tableNode);
-
- processor.beginTable(this.writer);
-
- var rowHeights = tableNode.table.heights;
- for (var i = 0, l = tableNode.table.body.length; i < l; i++) {
- processor.beginRow(i, this.writer);
-
- var height;
- if (isFunction(rowHeights)) {
- height = rowHeights(i);
- } else if (isArray(rowHeights)) {
- height = rowHeights[i];
- } else {
- height = rowHeights;
- }
-
- if (height === 'auto') {
- height = undefined;
- }
-
- var result = this.processRow(tableNode.table.body[i], tableNode.table.widths, tableNode._offsets.offsets, tableNode.table.body, i, height);
- addAll(tableNode.positions, result.positions);
-
- processor.endRow(i, this.writer, result.pageBreaks);
- }
-
- processor.endTable(this.writer);
-};
-
-// leafs (texts)
-LayoutBuilder.prototype.processLeaf = function (node) {
- var line = this.buildNextLine(node);
- if (line && (node.tocItem || node.id)) {
- line._node = node;
- }
- var currentHeight = (line) ? line.getHeight() : 0;
- var maxHeight = node.maxHeight || -1;
-
- if (line) {
- var nodeId = getNodeId(node);
- if (nodeId) {
- line.id = nodeId;
- }
- }
-
- if (node._tocItemRef) {
- line._pageNodeRef = node._tocItemRef;
- }
-
- if (node._pageRef) {
- line._pageNodeRef = node._pageRef._nodeRef;
- }
-
- if (line && line.inlines && isArray(line.inlines)) {
- for (var i = 0, l = line.inlines.length; i < l; i++) {
- if (line.inlines[i]._tocItemRef) {
- line.inlines[i]._pageNodeRef = line.inlines[i]._tocItemRef;
- }
-
- if (line.inlines[i]._pageRef) {
- line.inlines[i]._pageNodeRef = line.inlines[i]._pageRef._nodeRef;
- }
- }
- }
-
- while (line && (maxHeight === -1 || currentHeight < maxHeight)) {
- var positions = this.writer.addLine(line);
- node.positions.push(positions);
- line = this.buildNextLine(node);
- if (line) {
- currentHeight += line.getHeight();
- }
- }
-};
-
-LayoutBuilder.prototype.processToc = function (node) {
- if (node.toc.title) {
- this.processNode(node.toc.title);
- }
- if (node.toc._table) {
- this.processNode(node.toc._table);
- }
-};
-
-LayoutBuilder.prototype.buildNextLine = function (textNode) {
-
- function cloneInline(inline) {
- var newInline = inline.constructor();
- for (var key in inline) {
- newInline[key] = inline[key];
- }
- return newInline;
- }
-
- if (!textNode._inlines || textNode._inlines.length === 0) {
- return null;
- }
-
- var line = new Line(this.writer.context().availableWidth);
- var textTools = new TextTools(null);
-
- var isForceContinue = false;
- while (textNode._inlines && textNode._inlines.length > 0 &&
- (line.hasEnoughSpaceForInline(textNode._inlines[0], textNode._inlines.slice(1)) || isForceContinue)) {
- var isHardWrap = false;
- var inline = textNode._inlines.shift();
- isForceContinue = false;
-
- if (!inline.noWrap && inline.text.length > 1 && inline.width > line.getAvailableWidth()) {
- var widthPerChar = inline.width / inline.text.length;
- var maxChars = Math.floor(line.getAvailableWidth() / widthPerChar);
- if (maxChars < 1) {
- maxChars = 1;
- }
- if (maxChars < inline.text.length) {
- var newInline = cloneInline(inline);
-
- newInline.text = inline.text.substr(maxChars);
- inline.text = inline.text.substr(0, maxChars);
-
- newInline.width = textTools.widthOfString(newInline.text, newInline.font, newInline.fontSize, newInline.characterSpacing, newInline.fontFeatures);
- inline.width = textTools.widthOfString(inline.text, inline.font, inline.fontSize, inline.characterSpacing, inline.fontFeatures);
-
- textNode._inlines.unshift(newInline);
- isHardWrap = true;
- }
- }
-
- line.addInline(inline);
-
- isForceContinue = inline.noNewLine && !isHardWrap;
- }
-
- line.lastLineInParagraph = textNode._inlines.length === 0;
-
- return line;
-};
-
-// images
-LayoutBuilder.prototype.processImage = function (node) {
- var position = this.writer.addImage(node);
- node.positions.push(position);
-};
-
-LayoutBuilder.prototype.processSVG = function (node) {
- var position = this.writer.addSVG(node);
- node.positions.push(position);
-};
-
-LayoutBuilder.prototype.processCanvas = function (node) {
- var height = node._minHeight;
-
- if (node.absolutePosition === undefined && this.writer.context().availableHeight < height) {
- // TODO: support for canvas larger than a page
- // TODO: support for other overflow methods
-
- this.writer.moveToNextPage();
- }
-
- this.writer.alignCanvas(node);
-
- node.canvas.forEach(function (vector) {
- var position = this.writer.addVector(vector);
- node.positions.push(position);
- }, this);
-
- this.writer.context().moveDown(height);
-};
-
-LayoutBuilder.prototype.processQr = function (node) {
- var position = this.writer.addQr(node);
- node.positions.push(position);
-};
-
-module.exports = LayoutBuilder;
+
+
+var TraversalTracker = __webpack_require__(291);
+var DocPreprocessor = __webpack_require__(541);
+var DocMeasure = __webpack_require__(542);
+var DocumentContext = __webpack_require__(293);
+var PageElementWriter = __webpack_require__(544);
+var ColumnCalculator = __webpack_require__(198);
+var TableProcessor = __webpack_require__(546);
+var Line = __webpack_require__(294);
+var isString = __webpack_require__(0).isString;
+var isArray = __webpack_require__(0).isArray;
+var isUndefined = __webpack_require__(0).isUndefined;
+var isNull = __webpack_require__(0).isNull;
+var pack = __webpack_require__(0).pack;
+var offsetVector = __webpack_require__(0).offsetVector;
+var fontStringify = __webpack_require__(0).fontStringify;
+var getNodeId = __webpack_require__(0).getNodeId;
+var isFunction = __webpack_require__(0).isFunction;
+var TextTools = __webpack_require__(197);
+var StyleContextStack = __webpack_require__(292);
+var isNumber = __webpack_require__(0).isNumber;
+
+function addAll(target, otherArray) {
+ otherArray.forEach(function (item) {
+ target.push(item);
+ });
+}
+
+/**
+ * Creates an instance of LayoutBuilder - layout engine which turns document-definition-object
+ * into a set of pages, lines, inlines and vectors ready to be rendered into a PDF
+ *
+ * @param {Object} pageSize - an object defining page width and height
+ * @param {Object} pageMargins - an object defining top, left, right and bottom margins
+ */
+function LayoutBuilder(pageSize, pageMargins, imageMeasure, svgMeasure) {
+ this.pageSize = pageSize;
+ this.pageMargins = pageMargins;
+ this.tracker = new TraversalTracker();
+ this.imageMeasure = imageMeasure;
+ this.svgMeasure = svgMeasure;
+ this.tableLayouts = {};
+}
+
+LayoutBuilder.prototype.registerTableLayouts = function (tableLayouts) {
+ this.tableLayouts = pack(this.tableLayouts, tableLayouts);
+};
+
+/**
+ * Executes layout engine on document-definition-object and creates an array of pages
+ * containing positioned Blocks, Lines and inlines
+ *
+ * @param {Object} docStructure document-definition-object
+ * @param {Object} fontProvider font provider
+ * @param {Object} styleDictionary dictionary with style definitions
+ * @param {Object} defaultStyle default style definition
+ * @return {Array} an array of pages
+ */
+LayoutBuilder.prototype.layoutDocument = function (docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark, pageBreakBeforeFct) {
+
+ function addPageBreaksIfNecessary(linearNodeList, pages) {
+
+ if (!isFunction(pageBreakBeforeFct)) {
+ return false;
+ }
+
+ linearNodeList = linearNodeList.filter(function (node) {
+ return node.positions.length > 0;
+ });
+
+ linearNodeList.forEach(function (node) {
+ var nodeInfo = {};
+ [
+ 'id', 'text', 'ul', 'ol', 'table', 'image', 'qr', 'canvas', 'svg', 'columns',
+ 'headlineLevel', 'style', 'pageBreak', 'pageOrientation',
+ 'width', 'height'
+ ].forEach(function (key) {
+ if (node[key] !== undefined) {
+ nodeInfo[key] = node[key];
+ }
+ });
+ nodeInfo.startPosition = node.positions[0];
+ nodeInfo.pageNumbers = node.positions.map(function (node) {
+ return node.pageNumber;
+ }).filter(function (element, position, array) {
+ return array.indexOf(element) === position;
+ });
+ nodeInfo.pages = pages.length;
+ nodeInfo.stack = isArray(node.stack);
+
+ node.nodeInfo = nodeInfo;
+ });
+
+ for (var index = 0; index < linearNodeList.length; index++) {
+ var node = linearNodeList[index];
+ if (node.pageBreak !== 'before' && !node.pageBreakCalculated) {
+ node.pageBreakCalculated = true;
+ var pageNumber = node.nodeInfo.pageNumbers[0];
+ var followingNodesOnPage = [];
+ var nodesOnNextPage = [];
+ var previousNodesOnPage = [];
+ for (var ii = index + 1, l = linearNodeList.length; ii < l; ii++) {
+ if (linearNodeList[ii].nodeInfo.pageNumbers.indexOf(pageNumber) > -1) {
+ followingNodesOnPage.push(linearNodeList[ii].nodeInfo);
+ }
+ if (linearNodeList[ii].nodeInfo.pageNumbers.indexOf(pageNumber + 1) > -1) {
+ nodesOnNextPage.push(linearNodeList[ii].nodeInfo);
+ }
+ }
+ for (var ii = 0; ii < index; ii++) {
+ if (linearNodeList[ii].nodeInfo.pageNumbers.indexOf(pageNumber) > -1) {
+ previousNodesOnPage.push(linearNodeList[ii].nodeInfo);
+ }
+ }
+ if (pageBreakBeforeFct(node.nodeInfo, followingNodesOnPage, nodesOnNextPage, previousNodesOnPage)) {
+ node.pageBreak = 'before';
+ return true;
+ }
+ }
+ }
+
+ return false;
+ }
+
+ this.docPreprocessor = new DocPreprocessor();
+ this.docMeasure = new DocMeasure(fontProvider, styleDictionary, defaultStyle, this.imageMeasure, this.svgMeasure, this.tableLayouts, images);
+
+
+ function resetXYs(result) {
+ result.linearNodeList.forEach(function (node) {
+ node.resetXY();
+ });
+ }
+
+ var result = this.tryLayoutDocument(docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark);
+ while (addPageBreaksIfNecessary(result.linearNodeList, result.pages)) {
+ resetXYs(result);
+ result = this.tryLayoutDocument(docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark);
+ }
+
+ return result.pages;
+};
+
+LayoutBuilder.prototype.tryLayoutDocument = function (docStructure, fontProvider, styleDictionary, defaultStyle, background, header, footer, images, watermark, pageBreakBeforeFct) {
+
+ this.linearNodeList = [];
+ docStructure = this.docPreprocessor.preprocessDocument(docStructure);
+ docStructure = this.docMeasure.measureDocument(docStructure);
+
+ this.writer = new PageElementWriter(
+ new DocumentContext(this.pageSize, this.pageMargins), this.tracker);
+
+ var _this = this;
+ this.writer.context().tracker.startTracking('pageAdded', function () {
+ _this.addBackground(background);
+ });
+
+ this.addBackground(background);
+ this.processNode(docStructure);
+ this.addHeadersAndFooters(header, footer);
+ if (watermark != null) {
+ this.addWatermark(watermark, fontProvider, defaultStyle);
+ }
+
+ return { pages: this.writer.context().pages, linearNodeList: this.linearNodeList };
+};
+
+
+LayoutBuilder.prototype.addBackground = function (background) {
+ var backgroundGetter = isFunction(background) ? background : function () {
+ return background;
+ };
+
+ var context = this.writer.context();
+ var pageSize = context.getCurrentPage().pageSize;
+
+ var pageBackground = backgroundGetter(context.page + 1, pageSize);
+
+ if (pageBackground) {
+ this.writer.beginUnbreakableBlock(pageSize.width, pageSize.height);
+ pageBackground = this.docPreprocessor.preprocessDocument(pageBackground);
+ this.processNode(this.docMeasure.measureDocument(pageBackground));
+ this.writer.commitUnbreakableBlock(0, 0);
+ context.backgroundLength[context.page] += pageBackground.positions.length;
+ }
+};
+
+LayoutBuilder.prototype.addStaticRepeatable = function (headerOrFooter, sizeFunction) {
+ this.addDynamicRepeatable(function () {
+ return JSON.parse(JSON.stringify(headerOrFooter)); // copy to new object
+ }, sizeFunction);
+};
+
+LayoutBuilder.prototype.addDynamicRepeatable = function (nodeGetter, sizeFunction) {
+ var pages = this.writer.context().pages;
+
+ for (var pageIndex = 0, l = pages.length; pageIndex < l; pageIndex++) {
+ this.writer.context().page = pageIndex;
+
+ var node = nodeGetter(pageIndex + 1, l, this.writer.context().pages[pageIndex].pageSize);
+
+ if (node) {
+ var sizes = sizeFunction(this.writer.context().getCurrentPage().pageSize, this.pageMargins);
+ this.writer.beginUnbreakableBlock(sizes.width, sizes.height);
+ node = this.docPreprocessor.preprocessDocument(node);
+ this.processNode(this.docMeasure.measureDocument(node));
+ this.writer.commitUnbreakableBlock(sizes.x, sizes.y);
+ }
+ }
+};
+
+LayoutBuilder.prototype.addHeadersAndFooters = function (header, footer) {
+ var headerSizeFct = function (pageSize, pageMargins) {
+ return {
+ x: 0,
+ y: 0,
+ width: pageSize.width,
+ height: pageMargins.top
+ };
+ };
+
+ var footerSizeFct = function (pageSize, pageMargins) {
+ return {
+ x: 0,
+ y: pageSize.height - pageMargins.bottom,
+ width: pageSize.width,
+ height: pageMargins.bottom
+ };
+ };
+
+ if (isFunction(header)) {
+ this.addDynamicRepeatable(header, headerSizeFct);
+ } else if (header) {
+ this.addStaticRepeatable(header, headerSizeFct);
+ }
+
+ if (isFunction(footer)) {
+ this.addDynamicRepeatable(footer, footerSizeFct);
+ } else if (footer) {
+ this.addStaticRepeatable(footer, footerSizeFct);
+ }
+};
+
+LayoutBuilder.prototype.addWatermark = function (watermark, fontProvider, defaultStyle) {
+ if (isString(watermark)) {
+ watermark = { 'text': watermark };
+ }
+
+ if (!watermark.text) { // empty watermark text
+ return;
+ }
+
+ watermark.font = watermark.font || defaultStyle.font || 'Roboto';
+ watermark.fontSize = watermark.fontSize || 'auto';
+ watermark.color = watermark.color || 'black';
+ watermark.opacity = isNumber(watermark.opacity) ? watermark.opacity : 0.6;
+ watermark.bold = watermark.bold || false;
+ watermark.italics = watermark.italics || false;
+ watermark.angle = !isUndefined(watermark.angle) && !isNull(watermark.angle) ? watermark.angle : null;
+
+ if (watermark.angle === null) {
+ watermark.angle = Math.atan2(this.pageSize.height, this.pageSize.width) * -180 / Math.PI;
+ }
+
+ if (watermark.fontSize === 'auto') {
+ watermark.fontSize = getWatermarkFontSize(this.pageSize, watermark, fontProvider);
+ }
+
+ var watermarkObject = {
+ text: watermark.text,
+ font: fontProvider.provideFont(watermark.font, watermark.bold, watermark.italics),
+ fontSize: watermark.fontSize,
+ color: watermark.color,
+ opacity: watermark.opacity,
+ angle: watermark.angle
+ };
+
+ watermarkObject._size = getWatermarkSize(watermark, fontProvider);
+
+ var pages = this.writer.context().pages;
+ for (var i = 0, l = pages.length; i < l; i++) {
+ pages[i].watermark = watermarkObject;
+ }
+
+ function getWatermarkSize(watermark, fontProvider) {
+ var textTools = new TextTools(fontProvider);
+ var styleContextStack = new StyleContextStack(null, { font: watermark.font, bold: watermark.bold, italics: watermark.italics });
+
+ styleContextStack.push({
+ fontSize: watermark.fontSize
+ });
+
+ var size = textTools.sizeOfString(watermark.text, styleContextStack);
+ var rotatedSize = textTools.sizeOfRotatedText(watermark.text, watermark.angle, styleContextStack);
+
+ return { size: size, rotatedSize: rotatedSize };
+ }
+
+ function getWatermarkFontSize(pageSize, watermark, fontProvider) {
+ var textTools = new TextTools(fontProvider);
+ var styleContextStack = new StyleContextStack(null, { font: watermark.font, bold: watermark.bold, italics: watermark.italics });
+ var rotatedSize;
+
+ /**
+ * Binary search the best font size.
+ * Initial bounds [0, 1000]
+ * Break when range < 1
+ */
+ var a = 0;
+ var b = 1000;
+ var c = (a + b) / 2;
+ while (Math.abs(a - b) > 1) {
+ styleContextStack.push({
+ fontSize: c
+ });
+ rotatedSize = textTools.sizeOfRotatedText(watermark.text, watermark.angle, styleContextStack);
+ if (rotatedSize.width > pageSize.width) {
+ b = c;
+ c = (a + b) / 2;
+ } else if (rotatedSize.width < pageSize.width) {
+ if (rotatedSize.height > pageSize.height) {
+ b = c;
+ c = (a + b) / 2;
+ } else {
+ a = c;
+ c = (a + b) / 2;
+ }
+ }
+ styleContextStack.pop();
+ }
+ /*
+ End binary search
+ */
+ return c;
+ }
+};
+
+function decorateNode(node) {
+ var x = node.x, y = node.y;
+ node.positions = [];
+
+ if (isArray(node.canvas)) {
+ node.canvas.forEach(function (vector) {
+ var x = vector.x, y = vector.y, x1 = vector.x1, y1 = vector.y1, x2 = vector.x2, y2 = vector.y2;
+ vector.resetXY = function () {
+ vector.x = x;
+ vector.y = y;
+ vector.x1 = x1;
+ vector.y1 = y1;
+ vector.x2 = x2;
+ vector.y2 = y2;
+ };
+ });
+ }
+
+ node.resetXY = function () {
+ node.x = x;
+ node.y = y;
+ if (isArray(node.canvas)) {
+ node.canvas.forEach(function (vector) {
+ vector.resetXY();
+ });
+ }
+ };
+}
+
+LayoutBuilder.prototype.processNode = function (node) {
+ var self = this;
+
+ this.linearNodeList.push(node);
+ decorateNode(node);
+
+ applyMargins(function () {
+ var unbreakable = node.unbreakable;
+ if (unbreakable) {
+ self.writer.beginUnbreakableBlock();
+ }
+
+ var absPosition = node.absolutePosition;
+ if (absPosition) {
+ self.writer.context().beginDetachedBlock();
+ self.writer.context().moveTo(absPosition.x || 0, absPosition.y || 0);
+ }
+
+ var relPosition = node.relativePosition;
+ if (relPosition) {
+ self.writer.context().beginDetachedBlock();
+ self.writer.context().moveToRelative(relPosition.x || 0, relPosition.y || 0);
+ }
+
+ if (node.stack) {
+ self.processVerticalContainer(node);
+ } else if (node.columns) {
+ self.processColumns(node);
+ } else if (node.ul) {
+ self.processList(false, node);
+ } else if (node.ol) {
+ self.processList(true, node);
+ } else if (node.table) {
+ self.processTable(node);
+ } else if (node.text !== undefined) {
+ self.processLeaf(node);
+ } else if (node.toc) {
+ self.processToc(node);
+ } else if (node.image) {
+ self.processImage(node);
+ } else if (node.svg) {
+ self.processSVG(node);
+ } else if (node.canvas) {
+ self.processCanvas(node);
+ } else if (node.qr) {
+ self.processQr(node);
+ } else if (!node._span) {
+ throw 'Unrecognized document structure: ' + JSON.stringify(node, fontStringify);
+ }
+
+ if (absPosition || relPosition) {
+ self.writer.context().endDetachedBlock();
+ }
+
+ if (unbreakable) {
+ self.writer.commitUnbreakableBlock();
+ }
+ });
+
+ function applyMargins(callback) {
+ var margin = node._margin;
+
+ if (node.pageBreak === 'before') {
+ self.writer.moveToNextPage(node.pageOrientation);
+ } else if (node.pageBreak === 'beforeOdd') {
+ self.writer.moveToNextPage(node.pageOrientation);
+ if ((self.writer.context().page + 1) % 2 === 1) {
+ self.writer.moveToNextPage(node.pageOrientation);
+ }
+ } else if (node.pageBreak === 'beforeEven') {
+ self.writer.moveToNextPage(node.pageOrientation);
+ if ((self.writer.context().page + 1) % 2 === 0) {
+ self.writer.moveToNextPage(node.pageOrientation);
+ }
+ }
+
+ if (margin) {
+ self.writer.context().moveDown(margin[1]);
+ self.writer.context().addMargin(margin[0], margin[2]);
+ }
+
+ callback();
+
+ if (margin) {
+ self.writer.context().addMargin(-margin[0], -margin[2]);
+ self.writer.context().moveDown(margin[3]);
+ }
+
+ if (node.pageBreak === 'after') {
+ self.writer.moveToNextPage(node.pageOrientation);
+ } else if (node.pageBreak === 'afterOdd') {
+ self.writer.moveToNextPage(node.pageOrientation);
+ if ((self.writer.context().page + 1) % 2 === 1) {
+ self.writer.moveToNextPage(node.pageOrientation);
+ }
+ } else if (node.pageBreak === 'afterEven') {
+ self.writer.moveToNextPage(node.pageOrientation);
+ if ((self.writer.context().page + 1) % 2 === 0) {
+ self.writer.moveToNextPage(node.pageOrientation);
+ }
+ }
+ }
+};
+
+// vertical container
+LayoutBuilder.prototype.processVerticalContainer = function (node) {
+ var self = this;
+ node.stack.forEach(function (item) {
+ self.processNode(item);
+ addAll(node.positions, item.positions);
+
+ //TODO: paragraph gap
+ });
+};
+
+// columns
+LayoutBuilder.prototype.processColumns = function (columnNode) {
+ var columns = columnNode.columns;
+ var availableWidth = this.writer.context().availableWidth;
+ var gaps = gapArray(columnNode._gap);
+
+ if (gaps) {
+ availableWidth -= (gaps.length - 1) * columnNode._gap;
+ }
+
+ ColumnCalculator.buildColumnWidths(columns, availableWidth);
+ var result = this.processRow(columns, columns, gaps);
+ addAll(columnNode.positions, result.positions);
+
+
+ function gapArray(gap) {
+ if (!gap) {
+ return null;
+ }
+
+ var gaps = [];
+ gaps.push(0);
+
+ for (var i = columns.length - 1; i > 0; i--) {
+ gaps.push(gap);
+ }
+
+ return gaps;
+ }
+};
+
+LayoutBuilder.prototype.processRow = function (columns, widths, gaps, tableBody, tableRow, height) {
+ var self = this;
+ var pageBreaks = [], positions = [];
+
+ this.tracker.auto('pageChanged', storePageBreakData, function () {
+ widths = widths || columns;
+
+ self.writer.context().beginColumnGroup();
+
+ for (var i = 0, l = columns.length; i < l; i++) {
+ var column = columns[i];
+ var width = widths[i]._calcWidth;
+ var leftOffset = colLeftOffset(i);
+
+ if (column.colSpan && column.colSpan > 1) {
+ for (var j = 1; j < column.colSpan; j++) {
+ width += widths[++i]._calcWidth + gaps[i];
+ }
+ }
+
+ self.writer.context().beginColumn(width, leftOffset, getEndingCell(column, i));
+ if (!column._span) {
+ self.processNode(column);
+ addAll(positions, column.positions);
+ } else if (column._columnEndingContext) {
+ // row-span ending
+ self.writer.context().markEnding(column);
+ }
+ }
+
+ self.writer.context().completeColumnGroup(height);
+ });
+
+ return { pageBreaks: pageBreaks, positions: positions };
+
+ function storePageBreakData(data) {
+ var pageDesc;
+
+ for (var i = 0, l = pageBreaks.length; i < l; i++) {
+ var desc = pageBreaks[i];
+ if (desc.prevPage === data.prevPage) {
+ pageDesc = desc;
+ break;
+ }
+ }
+
+ if (!pageDesc) {
+ pageDesc = data;
+ pageBreaks.push(pageDesc);
+ }
+ pageDesc.prevY = Math.max(pageDesc.prevY, data.prevY);
+ pageDesc.y = Math.min(pageDesc.y, data.y);
+ }
+
+ function colLeftOffset(i) {
+ if (gaps && gaps.length > i) {
+ return gaps[i];
+ }
+ return 0;
+ }
+
+ function getEndingCell(column, columnIndex) {
+ if (column.rowSpan && column.rowSpan > 1) {
+ var endingRow = tableRow + column.rowSpan - 1;
+ if (endingRow >= tableBody.length) {
+ throw 'Row span for column ' + columnIndex + ' (with indexes starting from 0) exceeded row count';
+ }
+ return tableBody[endingRow][columnIndex];
+ }
+
+ return null;
+ }
+};
+
+// lists
+LayoutBuilder.prototype.processList = function (orderedList, node) {
+ var self = this,
+ items = orderedList ? node.ol : node.ul,
+ gapSize = node._gapSize;
+
+ this.writer.context().addMargin(gapSize.width);
+
+ var nextMarker;
+ this.tracker.auto('lineAdded', addMarkerToFirstLeaf, function () {
+ items.forEach(function (item) {
+ nextMarker = item.listMarker;
+ self.processNode(item);
+ addAll(node.positions, item.positions);
+ });
+ });
+
+ this.writer.context().addMargin(-gapSize.width);
+
+ function addMarkerToFirstLeaf(line) {
+ // I'm not very happy with the way list processing is implemented
+ // (both code and algorithm should be rethinked)
+ if (nextMarker) {
+ var marker = nextMarker;
+ nextMarker = null;
+
+ if (marker.canvas) {
+ var vector = marker.canvas[0];
+
+ offsetVector(vector, -marker._minWidth, 0);
+ self.writer.addVector(vector);
+ } else if (marker._inlines) {
+ var markerLine = new Line(self.pageSize.width);
+ markerLine.addInline(marker._inlines[0]);
+ markerLine.x = -marker._minWidth;
+ markerLine.y = line.getAscenderHeight() - markerLine.getAscenderHeight();
+ self.writer.addLine(markerLine, true);
+ }
+ }
+ }
+};
+
+// tables
+LayoutBuilder.prototype.processTable = function (tableNode) {
+ var processor = new TableProcessor(tableNode);
+
+ processor.beginTable(this.writer);
+
+ var rowHeights = tableNode.table.heights;
+ for (var i = 0, l = tableNode.table.body.length; i < l; i++) {
+ processor.beginRow(i, this.writer);
+
+ var height;
+ if (isFunction(rowHeights)) {
+ height = rowHeights(i);
+ } else if (isArray(rowHeights)) {
+ height = rowHeights[i];
+ } else {
+ height = rowHeights;
+ }
+
+ if (height === 'auto') {
+ height = undefined;
+ }
+
+ var result = this.processRow(tableNode.table.body[i], tableNode.table.widths, tableNode._offsets.offsets, tableNode.table.body, i, height);
+ addAll(tableNode.positions, result.positions);
+
+ processor.endRow(i, this.writer, result.pageBreaks);
+ }
+
+ processor.endTable(this.writer);
+};
+
+// leafs (texts)
+LayoutBuilder.prototype.processLeaf = function (node) {
+ var line = this.buildNextLine(node);
+ if (line && (node.tocItem || node.id)) {
+ line._node = node;
+ }
+ var currentHeight = (line) ? line.getHeight() : 0;
+ var maxHeight = node.maxHeight || -1;
+
+ if (line) {
+ var nodeId = getNodeId(node);
+ if (nodeId) {
+ line.id = nodeId;
+ }
+ }
+
+ if (node._tocItemRef) {
+ line._pageNodeRef = node._tocItemRef;
+ }
+
+ if (node._pageRef) {
+ line._pageNodeRef = node._pageRef._nodeRef;
+ }
+
+ if (line && line.inlines && isArray(line.inlines)) {
+ for (var i = 0, l = line.inlines.length; i < l; i++) {
+ if (line.inlines[i]._tocItemRef) {
+ line.inlines[i]._pageNodeRef = line.inlines[i]._tocItemRef;
+ }
+
+ if (line.inlines[i]._pageRef) {
+ line.inlines[i]._pageNodeRef = line.inlines[i]._pageRef._nodeRef;
+ }
+ }
+ }
+
+ while (line && (maxHeight === -1 || currentHeight < maxHeight)) {
+ var positions = this.writer.addLine(line);
+ node.positions.push(positions);
+ line = this.buildNextLine(node);
+ if (line) {
+ currentHeight += line.getHeight();
+ }
+ }
+};
+
+LayoutBuilder.prototype.processToc = function (node) {
+ if (node.toc.title) {
+ this.processNode(node.toc.title);
+ }
+ if (node.toc._table) {
+ this.processNode(node.toc._table);
+ }
+};
+
+LayoutBuilder.prototype.buildNextLine = function (textNode) {
+
+ function cloneInline(inline) {
+ var newInline = inline.constructor();
+ for (var key in inline) {
+ newInline[key] = inline[key];
+ }
+ return newInline;
+ }
+
+ if (!textNode._inlines || textNode._inlines.length === 0) {
+ return null;
+ }
+
+ var line = new Line(this.writer.context().availableWidth);
+ var textTools = new TextTools(null);
+
+ var isForceContinue = false;
+ while (textNode._inlines && textNode._inlines.length > 0 &&
+ (line.hasEnoughSpaceForInline(textNode._inlines[0], textNode._inlines.slice(1)) || isForceContinue)) {
+ var isHardWrap = false;
+ var inline = textNode._inlines.shift();
+ isForceContinue = false;
+
+ if (!inline.noWrap && inline.text.length > 1 && inline.width > line.getAvailableWidth()) {
+ var widthPerChar = inline.width / inline.text.length;
+ var maxChars = Math.floor(line.getAvailableWidth() / widthPerChar);
+ if (maxChars < 1) {
+ maxChars = 1;
+ }
+ if (maxChars < inline.text.length) {
+ var newInline = cloneInline(inline);
+
+ newInline.text = inline.text.substr(maxChars);
+ inline.text = inline.text.substr(0, maxChars);
+
+ newInline.width = textTools.widthOfString(newInline.text, newInline.font, newInline.fontSize, newInline.characterSpacing, newInline.fontFeatures);
+ inline.width = textTools.widthOfString(inline.text, inline.font, inline.fontSize, inline.characterSpacing, inline.fontFeatures);
+
+ textNode._inlines.unshift(newInline);
+ isHardWrap = true;
+ }
+ }
+
+ line.addInline(inline);
+
+ isForceContinue = inline.noNewLine && !isHardWrap;
+ }
+
+ line.lastLineInParagraph = textNode._inlines.length === 0;
+
+ return line;
+};
+
+// images
+LayoutBuilder.prototype.processImage = function (node) {
+ var position = this.writer.addImage(node);
+ node.positions.push(position);
+};
+
+LayoutBuilder.prototype.processSVG = function (node) {
+ var position = this.writer.addSVG(node);
+ node.positions.push(position);
+};
+
+LayoutBuilder.prototype.processCanvas = function (node) {
+ var height = node._minHeight;
+
+ if (node.absolutePosition === undefined && this.writer.context().availableHeight < height) {
+ // TODO: support for canvas larger than a page
+ // TODO: support for other overflow methods
+
+ this.writer.moveToNextPage();
+ }
+
+ this.writer.alignCanvas(node);
+
+ node.canvas.forEach(function (vector) {
+ var position = this.writer.addVector(vector);
+ node.positions.push(position);
+ }, this);
+
+ this.writer.context().moveDown(height);
+};
+
+LayoutBuilder.prototype.processQr = function (node) {
+ var position = this.writer.addQr(node);
+ node.positions.push(position);
+};
+
+module.exports = LayoutBuilder;
/***/ }),
-/* 446 */
+/* 541 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/* WEBPACK VAR INJECTION */(function(Buffer) {
-
-var isString = __webpack_require__(0).isString;
-var isNumber = __webpack_require__(0).isNumber;
-var isBoolean = __webpack_require__(0).isBoolean;
-var isArray = __webpack_require__(0).isArray;
-var isUndefined = __webpack_require__(0).isUndefined;
-var fontStringify = __webpack_require__(0).fontStringify;
-
-function DocPreprocessor() {
-
-}
-
-DocPreprocessor.prototype.preprocessDocument = function (docStructure) {
- this.parentNode = null;
- this.tocs = [];
- this.nodeReferences = [];
- return this.preprocessNode(docStructure);
-};
-
-DocPreprocessor.prototype.preprocessNode = function (node) {
- // expand shortcuts and casting values
- if (isArray(node)) {
- node = { stack: node };
- } else if (isString(node)) {
- node = { text: node };
- } else if (isNumber(node) || isBoolean(node)) {
- node = { text: node.toString() };
- } else if (node === undefined || node === null) {
- node = { text: '' };
- } else if (Object.keys(node).length === 0) { // empty object
- node = { text: '' };
- } else if ('text' in node && (node.text === undefined || node.text === null)) {
- node.text = '';
- }
-
- if (node.columns) {
- return this.preprocessColumns(node);
- } else if (node.stack) {
- return this.preprocessVerticalContainer(node);
- } else if (node.ul) {
- return this.preprocessList(node);
- } else if (node.ol) {
- return this.preprocessList(node);
- } else if (node.table) {
- return this.preprocessTable(node);
- } else if (node.text !== undefined) {
- return this.preprocessText(node);
- } else if (node.toc) {
- return this.preprocessToc(node);
- } else if (node.image) {
- return this.preprocessImage(node);
- } else if (node.svg) {
- return this.preprocessSVG(node);
- } else if (node.canvas) {
- return this.preprocessCanvas(node);
- } else if (node.qr) {
- return this.preprocessQr(node);
- } else if (node.pageReference || node.textReference) {
- return this.preprocessText(node);
- } else {
- throw 'Unrecognized document structure: ' + JSON.stringify(node, fontStringify);
- }
-};
-
-DocPreprocessor.prototype.preprocessColumns = function (node) {
- var columns = node.columns;
-
- for (var i = 0, l = columns.length; i < l; i++) {
- columns[i] = this.preprocessNode(columns[i]);
- }
-
- return node;
-};
-
-DocPreprocessor.prototype.preprocessVerticalContainer = function (node) {
- var items = node.stack;
-
- for (var i = 0, l = items.length; i < l; i++) {
- items[i] = this.preprocessNode(items[i]);
- }
-
- return node;
-};
-
-DocPreprocessor.prototype.preprocessList = function (node) {
- var items = node.ul || node.ol;
-
- for (var i = 0, l = items.length; i < l; i++) {
- items[i] = this.preprocessNode(items[i]);
- }
-
- return node;
-};
-
-DocPreprocessor.prototype.preprocessTable = function (node) {
- var col, row, cols, rows;
-
- for (col = 0, cols = node.table.body[0].length; col < cols; col++) {
- for (row = 0, rows = node.table.body.length; row < rows; row++) {
- var rowData = node.table.body[row];
- var data = rowData[col];
- if (data !== undefined) {
- if (data === null) { // transform to object
- data = '';
- }
- if (!data._span) {
- rowData[col] = this.preprocessNode(data);
- }
- }
- }
- }
-
- return node;
-};
-
-DocPreprocessor.prototype.preprocessText = function (node) {
- if (node.tocItem) {
- if (!isArray(node.tocItem)) {
- node.tocItem = [node.tocItem];
- }
-
- for (var i = 0, l = node.tocItem.length; i < l; i++) {
- if (!isString(node.tocItem[i])) {
- node.tocItem[i] = '_default_';
- }
-
- var tocItemId = node.tocItem[i];
-
- if (!this.tocs[tocItemId]) {
- this.tocs[tocItemId] = { toc: { _items: [], _pseudo: true } };
- }
-
- if (!node.id) {
- node.id = 'toc-' + tocItemId + '-' + this.tocs[tocItemId].toc._items.length;
- }
-
- var tocItemRef = {
- _nodeRef: this._getNodeForNodeRef(node),
- _textNodeRef: node
- };
- this.tocs[tocItemId].toc._items.push(tocItemRef);
- }
- }
-
- if (node.id) {
- if (this.nodeReferences[node.id]) {
- if (!this.nodeReferences[node.id]._pseudo) {
- throw "Node id '" + node.id + "' already exists";
- }
-
- this.nodeReferences[node.id]._nodeRef = this._getNodeForNodeRef(node);
- this.nodeReferences[node.id]._textNodeRef = node;
- this.nodeReferences[node.id]._pseudo = false;
- } else {
- this.nodeReferences[node.id] = {
- _nodeRef: this._getNodeForNodeRef(node),
- _textNodeRef: node
- };
- }
- }
-
- if (node.pageReference) {
- if (!this.nodeReferences[node.pageReference]) {
- this.nodeReferences[node.pageReference] = {
- _nodeRef: {},
- _textNodeRef: {},
- _pseudo: true
- };
- }
- node.text = '00000';
- node.linkToDestination = node.pageReference;
- node._pageRef = this.nodeReferences[node.pageReference];
- }
-
- if (node.textReference) {
- if (!this.nodeReferences[node.textReference]) {
- this.nodeReferences[node.textReference] = { _nodeRef: {}, _pseudo: true };
- }
-
- node.text = '';
- node.linkToDestination = node.textReference;
- node._textRef = this.nodeReferences[node.textReference];
- }
-
- if (node.text && node.text.text) {
- node.text = [this.preprocessNode(node.text)];
- } else if (isArray(node.text)) {
- var isSetParentNode = false;
- if (this.parentNode === null) {
- this.parentNode = node;
- isSetParentNode = true;
- }
-
- for (var i = 0, l = node.text.length; i < l; i++) {
- node.text[i] = this.preprocessNode(node.text[i]);
- }
-
- if (isSetParentNode) {
- this.parentNode = null;
- }
- }
-
- return node;
-};
-
-DocPreprocessor.prototype.preprocessToc = function (node) {
- if (!node.toc.id) {
- node.toc.id = '_default_';
- }
-
- node.toc.title = node.toc.title ? this.preprocessNode(node.toc.title) : null;
- node.toc._items = [];
-
- if (this.tocs[node.toc.id]) {
- if (!this.tocs[node.toc.id].toc._pseudo) {
- throw "TOC '" + node.toc.id + "' already exists";
- }
-
- node.toc._items = this.tocs[node.toc.id].toc._items;
- }
-
- this.tocs[node.toc.id] = node;
-
- return node;
-};
-
-DocPreprocessor.prototype.preprocessImage = function (node) {
- if (!isUndefined(node.image.type) && !isUndefined(node.image.data) && (node.image.type === 'Buffer') && isArray(node.image.data)) {
- node.image = Buffer.from(node.image.data);
- }
- return node;
-};
-
-DocPreprocessor.prototype.preprocessSVG = function (node) {
- return node;
-};
-
-DocPreprocessor.prototype.preprocessCanvas = function (node) {
- return node;
-};
-
-DocPreprocessor.prototype.preprocessQr = function (node) {
- return node;
-};
-
-DocPreprocessor.prototype._getNodeForNodeRef = function (node) {
- if (this.parentNode) {
- return this.parentNode;
- }
-
- return node;
-}
-
-module.exports = DocPreprocessor;
+/* WEBPACK VAR INJECTION */(function(Buffer) {
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+var isString = __webpack_require__(0).isString;
+var isNumber = __webpack_require__(0).isNumber;
+var isBoolean = __webpack_require__(0).isBoolean;
+var isArray = __webpack_require__(0).isArray;
+var isUndefined = __webpack_require__(0).isUndefined;
+var fontStringify = __webpack_require__(0).fontStringify;
+
+function DocPreprocessor() {
+
+}
+
+DocPreprocessor.prototype.preprocessDocument = function (docStructure) {
+ this.parentNode = null;
+ this.tocs = [];
+ this.nodeReferences = [];
+ return this.preprocessNode(docStructure);
+};
+
+DocPreprocessor.prototype.preprocessNode = function (node) {
+ // expand shortcuts and casting values
+ if (isArray(node)) {
+ node = { stack: node };
+ } else if (isString(node)) {
+ node = { text: node };
+ } else if (isNumber(node) || isBoolean(node)) {
+ node = { text: node.toString() };
+ } else if (node === undefined || node === null) {
+ node = { text: '' };
+ } else if (Object.keys(node).length === 0) { // empty object
+ node = { text: '' };
+ } else if ('text' in node && (node.text === undefined || node.text === null)) {
+ node.text = '';
+ }
+
+ if (node.columns) {
+ return this.preprocessColumns(node);
+ } else if (node.stack) {
+ return this.preprocessVerticalContainer(node);
+ } else if (node.ul) {
+ return this.preprocessList(node);
+ } else if (node.ol) {
+ return this.preprocessList(node);
+ } else if (node.table) {
+ return this.preprocessTable(node);
+ } else if (node.text !== undefined) {
+ return this.preprocessText(node);
+ } else if (node.toc) {
+ return this.preprocessToc(node);
+ } else if (node.image) {
+ return this.preprocessImage(node);
+ } else if (node.svg) {
+ return this.preprocessSVG(node);
+ } else if (node.canvas) {
+ return this.preprocessCanvas(node);
+ } else if (node.qr) {
+ return this.preprocessQr(node);
+ } else if (node.pageReference || node.textReference) {
+ return this.preprocessText(node);
+ } else {
+ throw 'Unrecognized document structure: ' + JSON.stringify(node, fontStringify);
+ }
+};
+
+DocPreprocessor.prototype.preprocessColumns = function (node) {
+ var columns = node.columns;
+
+ for (var i = 0, l = columns.length; i < l; i++) {
+ columns[i] = this.preprocessNode(columns[i]);
+ }
+
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessVerticalContainer = function (node) {
+ var items = node.stack;
+
+ for (var i = 0, l = items.length; i < l; i++) {
+ items[i] = this.preprocessNode(items[i]);
+ }
+
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessList = function (node) {
+ var items = node.ul || node.ol;
+
+ for (var i = 0, l = items.length; i < l; i++) {
+ items[i] = this.preprocessNode(items[i]);
+ }
+
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessTable = function (node) {
+ var col, row, cols, rows;
+
+ for (col = 0, cols = node.table.body[0].length; col < cols; col++) {
+ for (row = 0, rows = node.table.body.length; row < rows; row++) {
+ var rowData = node.table.body[row];
+ var data = rowData[col];
+ if (data !== undefined) {
+ if (data === null) { // transform to object
+ data = '';
+ }
+ if (!data._span) {
+ rowData[col] = this.preprocessNode(data);
+ }
+ }
+ }
+ }
+
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessText = function (node) {
+ if (node.tocItem) {
+ if (!isArray(node.tocItem)) {
+ node.tocItem = [node.tocItem];
+ }
+
+ for (var i = 0, l = node.tocItem.length; i < l; i++) {
+ if (!isString(node.tocItem[i])) {
+ node.tocItem[i] = '_default_';
+ }
+
+ var tocItemId = node.tocItem[i];
+
+ if (!this.tocs[tocItemId]) {
+ this.tocs[tocItemId] = { toc: { _items: [], _pseudo: true } };
+ }
+
+ if (!node.id) {
+ node.id = 'toc-' + tocItemId + '-' + this.tocs[tocItemId].toc._items.length;
+ }
+
+ var tocItemRef = {
+ _nodeRef: this._getNodeForNodeRef(node),
+ _textNodeRef: node
+ };
+ this.tocs[tocItemId].toc._items.push(tocItemRef);
+ }
+ }
+
+ if (node.id) {
+ if (this.nodeReferences[node.id]) {
+ if (!this.nodeReferences[node.id]._pseudo) {
+ throw "Node id '" + node.id + "' already exists";
+ }
+
+ this.nodeReferences[node.id]._nodeRef = this._getNodeForNodeRef(node);
+ this.nodeReferences[node.id]._textNodeRef = node;
+ this.nodeReferences[node.id]._pseudo = false;
+ } else {
+ this.nodeReferences[node.id] = {
+ _nodeRef: this._getNodeForNodeRef(node),
+ _textNodeRef: node
+ };
+ }
+ }
+
+ if (node.pageReference) {
+ if (!this.nodeReferences[node.pageReference]) {
+ this.nodeReferences[node.pageReference] = {
+ _nodeRef: {},
+ _textNodeRef: {},
+ _pseudo: true
+ };
+ }
+ node.text = '00000';
+ node.linkToDestination = node.pageReference;
+ node._pageRef = this.nodeReferences[node.pageReference];
+ }
+
+ if (node.textReference) {
+ if (!this.nodeReferences[node.textReference]) {
+ this.nodeReferences[node.textReference] = { _nodeRef: {}, _pseudo: true };
+ }
+
+ node.text = '';
+ node.linkToDestination = node.textReference;
+ node._textRef = this.nodeReferences[node.textReference];
+ }
+
+ if (node.text && node.text.text) {
+ node.text = [this.preprocessNode(node.text)];
+ } else if (isArray(node.text)) {
+ var isSetParentNode = false;
+ if (this.parentNode === null) {
+ this.parentNode = node;
+ isSetParentNode = true;
+ }
+
+ for (var i = 0, l = node.text.length; i < l; i++) {
+ node.text[i] = this.preprocessNode(node.text[i]);
+ }
+
+ if (isSetParentNode) {
+ this.parentNode = null;
+ }
+ }
+
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessToc = function (node) {
+ if (!node.toc.id) {
+ node.toc.id = '_default_';
+ }
+
+ node.toc.title = node.toc.title ? this.preprocessNode(node.toc.title) : null;
+ node.toc._items = [];
+
+ if (this.tocs[node.toc.id]) {
+ if (!this.tocs[node.toc.id].toc._pseudo) {
+ throw "TOC '" + node.toc.id + "' already exists";
+ }
+
+ node.toc._items = this.tocs[node.toc.id].toc._items;
+ }
+
+ this.tocs[node.toc.id] = node;
+
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessImage = function (node) {
+ if (!isUndefined(node.image.type) && !isUndefined(node.image.data) && (node.image.type === 'Buffer') && isArray(node.image.data)) {
+ node.image = Buffer.from(node.image.data);
+ }
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessSVG = function (node) {
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessCanvas = function (node) {
+ return node;
+};
+
+DocPreprocessor.prototype.preprocessQr = function (node) {
+ return node;
+};
+
+DocPreprocessor.prototype._getNodeForNodeRef = function (node) {
+ if (this.parentNode) {
+ return this.parentNode;
+ }
+
+ return node;
+}
+
+module.exports = DocPreprocessor;
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 447 */
+/* 542 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/*eslint no-unused-vars: ["error", {"args": "none"}]*/
-
-
-
-var TextTools = __webpack_require__(130);
-var StyleContextStack = __webpack_require__(211);
-var ColumnCalculator = __webpack_require__(131);
-var isString = __webpack_require__(0).isString;
-var isNumber = __webpack_require__(0).isNumber;
-var isObject = __webpack_require__(0).isObject;
-var isArray = __webpack_require__(0).isArray;
-var fontStringify = __webpack_require__(0).fontStringify;
-var getNodeId = __webpack_require__(0).getNodeId;
-var pack = __webpack_require__(0).pack;
-var qrEncoder = __webpack_require__(448);
-
-/**
- * @private
- */
-function DocMeasure(fontProvider, styleDictionary, defaultStyle, imageMeasure, svgMeasure, tableLayouts, images) {
- this.textTools = new TextTools(fontProvider);
- this.styleStack = new StyleContextStack(styleDictionary, defaultStyle);
- this.imageMeasure = imageMeasure;
- this.svgMeasure = svgMeasure;
- this.tableLayouts = tableLayouts;
- this.images = images;
- this.autoImageIndex = 1;
-}
-
-/**
- * Measures all nodes and sets min/max-width properties required for the second
- * layout-pass.
- * @param {Object} docStructure document-definition-object
- * @return {Object} document-measurement-object
- */
-DocMeasure.prototype.measureDocument = function (docStructure) {
- return this.measureNode(docStructure);
-};
-
-DocMeasure.prototype.measureNode = function (node) {
-
- var self = this;
-
- return this.styleStack.auto(node, function () {
- // TODO: refactor + rethink whether this is the proper way to handle margins
- node._margin = getNodeMargin(node);
-
- if (node.columns) {
- return extendMargins(self.measureColumns(node));
- } else if (node.stack) {
- return extendMargins(self.measureVerticalContainer(node));
- } else if (node.ul) {
- return extendMargins(self.measureUnorderedList(node));
- } else if (node.ol) {
- return extendMargins(self.measureOrderedList(node));
- } else if (node.table) {
- return extendMargins(self.measureTable(node));
- } else if (node.text !== undefined) {
- return extendMargins(self.measureLeaf(node));
- } else if (node.toc) {
- return extendMargins(self.measureToc(node));
- } else if (node.image) {
- return extendMargins(self.measureImage(node));
- } else if (node.svg) {
- return extendMargins(self.measureSVG(node));
- } else if (node.canvas) {
- return extendMargins(self.measureCanvas(node));
- } else if (node.qr) {
- return extendMargins(self.measureQr(node));
- } else {
- throw 'Unrecognized document structure: ' + JSON.stringify(node, fontStringify);
- }
- });
-
- function extendMargins(node) {
- var margin = node._margin;
-
- if (margin) {
- node._minWidth += margin[0] + margin[2];
- node._maxWidth += margin[0] + margin[2];
- }
-
- return node;
- }
-
- function getNodeMargin() {
-
- function processSingleMargins(node, currentMargin) {
- if (node.marginLeft || node.marginTop || node.marginRight || node.marginBottom) {
- return [
- node.marginLeft || currentMargin[0] || 0,
- node.marginTop || currentMargin[1] || 0,
- node.marginRight || currentMargin[2] || 0,
- node.marginBottom || currentMargin[3] || 0
- ];
- }
- return currentMargin;
- }
-
- function flattenStyleArray(styleArray) {
- var flattenedStyles = {};
- for (var i = styleArray.length - 1; i >= 0; i--) {
- var styleName = styleArray[i];
- var style = self.styleStack.styleDictionary[styleName];
- for (var key in style) {
- if (style.hasOwnProperty(key)) {
- flattenedStyles[key] = style[key];
- }
- }
- }
- return flattenedStyles;
- }
-
- function convertMargin(margin) {
- if (isNumber(margin)) {
- margin = [margin, margin, margin, margin];
- } else if (isArray(margin)) {
- if (margin.length === 2) {
- margin = [margin[0], margin[1], margin[0], margin[1]];
- }
- }
- return margin;
- }
-
- var margin = [undefined, undefined, undefined, undefined];
-
- if (node.style) {
- var styleArray = isArray(node.style) ? node.style : [node.style];
- var flattenedStyleArray = flattenStyleArray(styleArray);
-
- if (flattenedStyleArray) {
- margin = processSingleMargins(flattenedStyleArray, margin);
- }
-
- if (flattenedStyleArray.margin) {
- margin = convertMargin(flattenedStyleArray.margin);
- }
- }
-
- margin = processSingleMargins(node, margin);
-
- if (node.margin) {
- margin = convertMargin(node.margin);
- }
-
- if (margin[0] === undefined && margin[1] === undefined && margin[2] === undefined && margin[3] === undefined) {
- return null;
- } else {
- return margin;
- }
- }
-};
-
-DocMeasure.prototype.convertIfBase64Image = function (node) {
- if (/^data:image\/(jpeg|jpg|png);base64,/.test(node.image)) {
- var label = '$$pdfmake$$' + this.autoImageIndex++;
- this.images[label] = node.image;
- node.image = label;
- }
-};
-
-DocMeasure.prototype.measureImageWithDimensions = function (node, dimensions) {
- if (node.fit) {
- var factor = (dimensions.width / dimensions.height > node.fit[0] / node.fit[1]) ? node.fit[0] / dimensions.width : node.fit[1] / dimensions.height;
- node._width = node._minWidth = node._maxWidth = dimensions.width * factor;
- node._height = dimensions.height * factor;
- } else {
- node._width = node._minWidth = node._maxWidth = node.width || dimensions.width;
- node._height = node.height || (dimensions.height * node._width / dimensions.width);
-
- if (isNumber(node.maxWidth) && node.maxWidth < node._width) {
- node._width = node._minWidth = node._maxWidth = node.maxWidth;
- node._height = node._width * dimensions.height / dimensions.width;
- }
-
- if (isNumber(node.maxHeight) && node.maxHeight < node._height) {
- node._height = node.maxHeight;
- node._width = node._minWidth = node._maxWidth = node._height * dimensions.width / dimensions.height;
- }
-
- if (isNumber(node.minWidth) && node.minWidth > node._width) {
- node._width = node._minWidth = node._maxWidth = node.minWidth;
- node._height = node._width * dimensions.height / dimensions.width;
- }
-
- if (isNumber(node.minHeight) && node.minHeight > node._height) {
- node._height = node.minHeight;
- node._width = node._minWidth = node._maxWidth = node._height * dimensions.width / dimensions.height;
- }
- }
-
- node._alignment = this.styleStack.getProperty('alignment');
-};
-
-DocMeasure.prototype.measureImage = function (node) {
- if (this.images) {
- this.convertIfBase64Image(node);
- }
-
- var dimensions = this.imageMeasure.measureImage(node.image);
-
- this.measureImageWithDimensions(node, dimensions);
-
- return node;
-};
-
-DocMeasure.prototype.measureSVG = function (node) {
-
- var dimensions = this.svgMeasure.measureSVG(node.svg);
-
- this.measureImageWithDimensions(node, dimensions);
-
- node.font = this.styleStack.getProperty('font');
-
- // scale SVG based on final dimension
- node.svg = this.svgMeasure.writeDimensions(node.svg, {
- width: node._width,
- height: node._height
- });
-
- return node;
-};
-
-DocMeasure.prototype.measureLeaf = function (node) {
-
- if (node._textRef && node._textRef._textNodeRef.text) {
- node.text = node._textRef._textNodeRef.text;
- }
-
- // Make sure style properties of the node itself are considered when building inlines.
- // We could also just pass [node] to buildInlines, but that fails for bullet points.
- var styleStack = this.styleStack.clone();
- styleStack.push(node);
-
- var data = this.textTools.buildInlines(node.text, styleStack);
-
- node._inlines = data.items;
- node._minWidth = data.minWidth;
- node._maxWidth = data.maxWidth;
-
- return node;
-};
-
-DocMeasure.prototype.measureToc = function (node) {
- if (node.toc.title) {
- node.toc.title = this.measureNode(node.toc.title);
- }
-
- if (node.toc._items.length > 0) {
- var body = [];
- var textStyle = node.toc.textStyle || {};
- var numberStyle = node.toc.numberStyle || textStyle;
- var textMargin = node.toc.textMargin || [0, 0, 0, 0];
- for (var i = 0, l = node.toc._items.length; i < l; i++) {
- var item = node.toc._items[i];
- var lineStyle = item._textNodeRef.tocStyle || textStyle;
- var lineMargin = item._textNodeRef.tocMargin || textMargin;
- var lineNumberStyle = item._textNodeRef.tocNumberStyle || numberStyle;
- var destination = getNodeId(item._nodeRef);
- body.push([
- { text: item._textNodeRef.text, linkToDestination: destination, alignment: 'left', style: lineStyle, margin: lineMargin },
- { text: '00000', linkToDestination: destination, alignment: 'right', _tocItemRef: item._nodeRef, style: lineNumberStyle, margin: [0, lineMargin[1], 0, lineMargin[3]] }
- ]);
- }
-
-
- node.toc._table = {
- table: {
- dontBreakRows: true,
- widths: ['*', 'auto'],
- body: body
- },
- layout: 'noBorders'
- };
-
- node.toc._table = this.measureNode(node.toc._table);
- }
-
- return node;
-};
-
-DocMeasure.prototype.measureVerticalContainer = function (node) {
- var items = node.stack;
-
- node._minWidth = 0;
- node._maxWidth = 0;
-
- for (var i = 0, l = items.length; i < l; i++) {
- items[i] = this.measureNode(items[i]);
-
- node._minWidth = Math.max(node._minWidth, items[i]._minWidth);
- node._maxWidth = Math.max(node._maxWidth, items[i]._maxWidth);
- }
-
- return node;
-};
-
-DocMeasure.prototype.gapSizeForList = function () {
- return this.textTools.sizeOfString('9. ', this.styleStack);
-};
-
-DocMeasure.prototype.buildUnorderedMarker = function (styleStack, gapSize, type) {
- function buildDisc(gapSize, color) {
- // TODO: ascender-based calculations
- var radius = gapSize.fontSize / 6;
- return {
- canvas: [{
- x: radius,
- y: (gapSize.height / gapSize.lineHeight) + gapSize.descender - gapSize.fontSize / 3,
- r1: radius,
- r2: radius,
- type: 'ellipse',
- color: color
- }]
- };
- }
-
- function buildSquare(gapSize, color) {
- // TODO: ascender-based calculations
- var size = gapSize.fontSize / 3;
- return {
- canvas: [{
- x: 0,
- y: (gapSize.height / gapSize.lineHeight) + gapSize.descender - (gapSize.fontSize / 3) - (size / 2),
- h: size,
- w: size,
- type: 'rect',
- color: color
- }]
- };
- }
-
- function buildCircle(gapSize, color) {
- // TODO: ascender-based calculations
- var radius = gapSize.fontSize / 6;
- return {
- canvas: [{
- x: radius,
- y: (gapSize.height / gapSize.lineHeight) + gapSize.descender - gapSize.fontSize / 3,
- r1: radius,
- r2: radius,
- type: 'ellipse',
- lineColor: color
- }]
- };
- }
-
- var marker;
- var color = styleStack.getProperty('markerColor') || styleStack.getProperty('color') || 'black';
-
- switch (type) {
- case 'circle':
- marker = buildCircle(gapSize, color);
- break;
-
- case 'square':
- marker = buildSquare(gapSize, color);
- break;
-
- case 'none':
- marker = {};
- break;
-
- case 'disc':
- default:
- marker = buildDisc(gapSize, color);
- break;
- }
-
- marker._minWidth = marker._maxWidth = gapSize.width;
- marker._minHeight = marker._maxHeight = gapSize.height;
-
- return marker;
-};
-
-DocMeasure.prototype.buildOrderedMarker = function (counter, styleStack, type, separator) {
- function prepareAlpha(counter) {
- function toAlpha(num) {
- return (num >= 26 ? toAlpha((num / 26 >> 0) - 1) : '') + 'abcdefghijklmnopqrstuvwxyz'[num % 26 >> 0];
- }
-
- if (counter < 1) {
- return counter.toString();
- }
-
- return toAlpha(counter - 1);
- }
-
- function prepareRoman(counter) {
- if (counter < 1 || counter > 4999) {
- return counter.toString();
- }
- var num = counter;
- var lookup = { M: 1000, CM: 900, D: 500, CD: 400, C: 100, XC: 90, L: 50, XL: 40, X: 10, IX: 9, V: 5, IV: 4, I: 1 }, roman = '', i;
- for (i in lookup) {
- while (num >= lookup[i]) {
- roman += i;
- num -= lookup[i];
- }
- }
- return roman;
- }
-
- function prepareDecimal(counter) {
- return counter.toString();
- }
-
- var counterText;
- switch (type) {
- case 'none':
- counterText = null;
- break;
-
- case 'upper-alpha':
- counterText = prepareAlpha(counter).toUpperCase();
- break;
-
- case 'lower-alpha':
- counterText = prepareAlpha(counter);
- break;
-
- case 'upper-roman':
- counterText = prepareRoman(counter);
- break;
-
- case 'lower-roman':
- counterText = prepareRoman(counter).toLowerCase();
- break;
-
- case 'decimal':
- default:
- counterText = prepareDecimal(counter);
- break;
- }
-
- if (counterText === null) {
- return {};
- }
-
- if (separator) {
- if (isArray(separator)) {
- if (separator[0]) {
- counterText = separator[0] + counterText;
- }
-
- if (separator[1]) {
- counterText += separator[1];
- }
- counterText += ' ';
- } else {
- counterText += separator + ' ';
- }
- }
-
- var textArray = { text: counterText };
- var markerColor = styleStack.getProperty('markerColor');
- if (markerColor) {
- textArray.color = markerColor;
- }
-
- return { _inlines: this.textTools.buildInlines(textArray, styleStack).items };
-};
-
-DocMeasure.prototype.measureUnorderedList = function (node) {
- var style = this.styleStack.clone();
- var items = node.ul;
- node.type = node.type || 'disc';
- node._gapSize = this.gapSizeForList();
- node._minWidth = 0;
- node._maxWidth = 0;
-
- for (var i = 0, l = items.length; i < l; i++) {
- var item = items[i] = this.measureNode(items[i]);
-
- if (!item.ol && !item.ul) {
- item.listMarker = this.buildUnorderedMarker(style, node._gapSize, item.listType || node.type);
- }
-
- node._minWidth = Math.max(node._minWidth, items[i]._minWidth + node._gapSize.width);
- node._maxWidth = Math.max(node._maxWidth, items[i]._maxWidth + node._gapSize.width);
- }
-
- return node;
-};
-
-DocMeasure.prototype.measureOrderedList = function (node) {
- var style = this.styleStack.clone();
- var items = node.ol;
- node.type = node.type || 'decimal';
- node.separator = node.separator || '.';
- node.reversed = node.reversed || false;
- if (!isNumber(node.start)) {
- node.start = node.reversed ? items.length : 1;
- }
- node._gapSize = this.gapSizeForList();
- node._minWidth = 0;
- node._maxWidth = 0;
-
- var counter = node.start;
- for (var i = 0, l = items.length; i < l; i++) {
- var item = items[i] = this.measureNode(items[i]);
-
- if (!item.ol && !item.ul) {
- var counterValue = isNumber(item.counter) ? item.counter : counter;
- item.listMarker = this.buildOrderedMarker(counterValue, style, item.listType || node.type, node.separator);
- if (item.listMarker._inlines) {
- node._gapSize.width = Math.max(node._gapSize.width, item.listMarker._inlines[0].width);
- }
- } // TODO: else - nested lists numbering
-
- node._minWidth = Math.max(node._minWidth, items[i]._minWidth);
- node._maxWidth = Math.max(node._maxWidth, items[i]._maxWidth);
-
- if (node.reversed) {
- counter--;
- } else {
- counter++;
- }
- }
-
- node._minWidth += node._gapSize.width;
- node._maxWidth += node._gapSize.width;
-
- for (var i = 0, l = items.length; i < l; i++) {
- var item = items[i];
- if (!item.ol && !item.ul) {
- item.listMarker._minWidth = item.listMarker._maxWidth = node._gapSize.width;
- }
- }
-
- return node;
-};
-
-DocMeasure.prototype.measureColumns = function (node) {
- var columns = node.columns;
- node._gap = this.styleStack.getProperty('columnGap') || 0;
-
- for (var i = 0, l = columns.length; i < l; i++) {
- columns[i] = this.measureNode(columns[i]);
- }
-
- var measures = ColumnCalculator.measureMinMax(columns);
-
- var numGaps = (columns.length > 0) ? (columns.length - 1) : 0;
- node._minWidth = measures.min + node._gap * numGaps;
- node._maxWidth = measures.max + node._gap * numGaps;
-
- return node;
-};
-
-DocMeasure.prototype.measureTable = function (node) {
- extendTableWidths(node);
- node._layout = getLayout(this.tableLayouts);
- node._offsets = getOffsets(node._layout);
-
- var colSpans = [];
- var col, row, cols, rows;
-
- for (col = 0, cols = node.table.body[0].length; col < cols; col++) {
- var c = node.table.widths[col];
- c._minWidth = 0;
- c._maxWidth = 0;
-
- for (row = 0, rows = node.table.body.length; row < rows; row++) {
- var rowData = node.table.body[row];
- var data = rowData[col];
- if (data === undefined) {
- console.error('Malformed table row ', rowData, 'in node ', node);
- throw 'Malformed table row, a cell is undefined.';
- }
- if (data === null) { // transform to object
- data = '';
- }
-
- if (!data._span) {
- data = rowData[col] = this.styleStack.auto(data, measureCb(this, data));
-
- if (data.colSpan && data.colSpan > 1) {
- markSpans(rowData, col, data.colSpan);
- colSpans.push({ col: col, span: data.colSpan, minWidth: data._minWidth, maxWidth: data._maxWidth });
- } else {
- c._minWidth = Math.max(c._minWidth, data._minWidth);
- c._maxWidth = Math.max(c._maxWidth, data._maxWidth);
- }
- }
-
- if (data.rowSpan && data.rowSpan > 1) {
- markVSpans(node.table, row, col, data.rowSpan);
- }
- }
- }
-
- extendWidthsForColSpans();
-
- var measures = ColumnCalculator.measureMinMax(node.table.widths);
-
- node._minWidth = measures.min + node._offsets.total;
- node._maxWidth = measures.max + node._offsets.total;
-
- return node;
-
- function measureCb(_this, data) {
- return function () {
- if (isObject(data)) {
- data.fillColor = _this.styleStack.getProperty('fillColor');
- data.fillOpacity = _this.styleStack.getProperty('fillOpacity');
- }
- return _this.measureNode(data);
- };
- }
-
- function getLayout(tableLayouts) {
- var layout = node.layout;
-
- if (isString(layout)) {
- layout = tableLayouts[layout];
- }
-
- var defaultLayout = {
- hLineWidth: function (i, node) {
- return 1;
- },
- vLineWidth: function (i, node) {
- return 1;
- },
- hLineColor: function (i, node) {
- return 'black';
- },
- vLineColor: function (i, node) {
- return 'black';
- },
- hLineStyle: function (i, node) {
- return null;
- },
- vLineStyle: function (i, node) {
- return null;
- },
- paddingLeft: function (i, node) {
- return 4;
- },
- paddingRight: function (i, node) {
- return 4;
- },
- paddingTop: function (i, node) {
- return 2;
- },
- paddingBottom: function (i, node) {
- return 2;
- },
- fillColor: function (i, node) {
- return null;
- },
- fillOpacity: function (i, node) {
- return 1;
- },
- defaultBorder: true
- };
-
- return pack(defaultLayout, layout);
- }
-
- function getOffsets(layout) {
- var offsets = [];
- var totalOffset = 0;
- var prevRightPadding = 0;
-
- for (var i = 0, l = node.table.widths.length; i < l; i++) {
- var lOffset = prevRightPadding + layout.vLineWidth(i, node) + layout.paddingLeft(i, node);
- offsets.push(lOffset);
- totalOffset += lOffset;
- prevRightPadding = layout.paddingRight(i, node);
- }
-
- totalOffset += prevRightPadding + layout.vLineWidth(node.table.widths.length, node);
-
- return {
- total: totalOffset,
- offsets: offsets
- };
- }
-
- function extendWidthsForColSpans() {
- var q, j;
-
- for (var i = 0, l = colSpans.length; i < l; i++) {
- var span = colSpans[i];
-
- var currentMinMax = getMinMax(span.col, span.span, node._offsets);
- var minDifference = span.minWidth - currentMinMax.minWidth;
- var maxDifference = span.maxWidth - currentMinMax.maxWidth;
-
- if (minDifference > 0) {
- q = minDifference / span.span;
-
- for (j = 0; j < span.span; j++) {
- node.table.widths[span.col + j]._minWidth += q;
- }
- }
-
- if (maxDifference > 0) {
- q = maxDifference / span.span;
-
- for (j = 0; j < span.span; j++) {
- node.table.widths[span.col + j]._maxWidth += q;
- }
- }
- }
- }
-
- function getMinMax(col, span, offsets) {
- var result = { minWidth: 0, maxWidth: 0 };
-
- for (var i = 0; i < span; i++) {
- result.minWidth += node.table.widths[col + i]._minWidth + (i ? offsets.offsets[col + i] : 0);
- result.maxWidth += node.table.widths[col + i]._maxWidth + (i ? offsets.offsets[col + i] : 0);
- }
-
- return result;
- }
-
- function markSpans(rowData, col, span) {
- for (var i = 1; i < span; i++) {
- rowData[col + i] = {
- _span: true,
- _minWidth: 0,
- _maxWidth: 0,
- rowSpan: rowData[col].rowSpan
- };
- }
- }
-
- function markVSpans(table, row, col, span) {
- for (var i = 1; i < span; i++) {
- table.body[row + i][col] = {
- _span: true,
- _minWidth: 0,
- _maxWidth: 0,
- fillColor: table.body[row][col].fillColor,
- fillOpacity: table.body[row][col].fillOpacity
- };
- }
- }
-
- function extendTableWidths(node) {
- if (!node.table.widths) {
- node.table.widths = 'auto';
- }
-
- if (isString(node.table.widths)) {
- node.table.widths = [node.table.widths];
-
- while (node.table.widths.length < node.table.body[0].length) {
- node.table.widths.push(node.table.widths[node.table.widths.length - 1]);
- }
- }
-
- for (var i = 0, l = node.table.widths.length; i < l; i++) {
- var w = node.table.widths[i];
- if (isNumber(w) || isString(w)) {
- node.table.widths[i] = { width: w };
- }
- }
- }
-};
-
-DocMeasure.prototype.measureCanvas = function (node) {
- var w = 0, h = 0;
-
- for (var i = 0, l = node.canvas.length; i < l; i++) {
- var vector = node.canvas[i];
-
- switch (vector.type) {
- case 'ellipse':
- w = Math.max(w, vector.x + vector.r1);
- h = Math.max(h, vector.y + vector.r2);
- break;
- case 'rect':
- w = Math.max(w, vector.x + vector.w);
- h = Math.max(h, vector.y + vector.h);
- break;
- case 'line':
- w = Math.max(w, vector.x1, vector.x2);
- h = Math.max(h, vector.y1, vector.y2);
- break;
- case 'polyline':
- for (var i2 = 0, l2 = vector.points.length; i2 < l2; i2++) {
- w = Math.max(w, vector.points[i2].x);
- h = Math.max(h, vector.points[i2].y);
- }
- break;
- }
- }
-
- node._minWidth = node._maxWidth = w;
- node._minHeight = node._maxHeight = h;
- node._alignment = this.styleStack.getProperty('alignment');
-
- return node;
-};
-
-DocMeasure.prototype.measureQr = function (node) {
- node = qrEncoder.measure(node);
- node._alignment = this.styleStack.getProperty('alignment');
- return node;
-};
-
-module.exports = DocMeasure;
+/*eslint no-unused-vars: ["error", {"args": "none"}]*/
+
+
+
+var TextTools = __webpack_require__(197);
+var StyleContextStack = __webpack_require__(292);
+var ColumnCalculator = __webpack_require__(198);
+var isString = __webpack_require__(0).isString;
+var isNumber = __webpack_require__(0).isNumber;
+var isObject = __webpack_require__(0).isObject;
+var isArray = __webpack_require__(0).isArray;
+var fontStringify = __webpack_require__(0).fontStringify;
+var getNodeId = __webpack_require__(0).getNodeId;
+var pack = __webpack_require__(0).pack;
+var qrEncoder = __webpack_require__(543);
+
+/**
+ * @private
+ */
+function DocMeasure(fontProvider, styleDictionary, defaultStyle, imageMeasure, svgMeasure, tableLayouts, images) {
+ this.textTools = new TextTools(fontProvider);
+ this.styleStack = new StyleContextStack(styleDictionary, defaultStyle);
+ this.imageMeasure = imageMeasure;
+ this.svgMeasure = svgMeasure;
+ this.tableLayouts = tableLayouts;
+ this.images = images;
+ this.autoImageIndex = 1;
+}
+
+/**
+ * Measures all nodes and sets min/max-width properties required for the second
+ * layout-pass.
+ * @param {Object} docStructure document-definition-object
+ * @return {Object} document-measurement-object
+ */
+DocMeasure.prototype.measureDocument = function (docStructure) {
+ return this.measureNode(docStructure);
+};
+
+DocMeasure.prototype.measureNode = function (node) {
+
+ var self = this;
+
+ return this.styleStack.auto(node, function () {
+ // TODO: refactor + rethink whether this is the proper way to handle margins
+ node._margin = getNodeMargin(node);
+
+ if (node.columns) {
+ return extendMargins(self.measureColumns(node));
+ } else if (node.stack) {
+ return extendMargins(self.measureVerticalContainer(node));
+ } else if (node.ul) {
+ return extendMargins(self.measureUnorderedList(node));
+ } else if (node.ol) {
+ return extendMargins(self.measureOrderedList(node));
+ } else if (node.table) {
+ return extendMargins(self.measureTable(node));
+ } else if (node.text !== undefined) {
+ return extendMargins(self.measureLeaf(node));
+ } else if (node.toc) {
+ return extendMargins(self.measureToc(node));
+ } else if (node.image) {
+ return extendMargins(self.measureImage(node));
+ } else if (node.svg) {
+ return extendMargins(self.measureSVG(node));
+ } else if (node.canvas) {
+ return extendMargins(self.measureCanvas(node));
+ } else if (node.qr) {
+ return extendMargins(self.measureQr(node));
+ } else {
+ throw 'Unrecognized document structure: ' + JSON.stringify(node, fontStringify);
+ }
+ });
+
+ function extendMargins(node) {
+ var margin = node._margin;
+
+ if (margin) {
+ node._minWidth += margin[0] + margin[2];
+ node._maxWidth += margin[0] + margin[2];
+ }
+
+ return node;
+ }
+
+ function getNodeMargin() {
+
+ function processSingleMargins(node, currentMargin) {
+ if (node.marginLeft || node.marginTop || node.marginRight || node.marginBottom) {
+ return [
+ node.marginLeft || currentMargin[0] || 0,
+ node.marginTop || currentMargin[1] || 0,
+ node.marginRight || currentMargin[2] || 0,
+ node.marginBottom || currentMargin[3] || 0
+ ];
+ }
+ return currentMargin;
+ }
+
+ function flattenStyleArray(styleArray) {
+ var flattenedStyles = {};
+ for (var i = styleArray.length - 1; i >= 0; i--) {
+ var styleName = styleArray[i];
+ var style = self.styleStack.styleDictionary[styleName];
+ for (var key in style) {
+ if (style.hasOwnProperty(key)) {
+ flattenedStyles[key] = style[key];
+ }
+ }
+ }
+ return flattenedStyles;
+ }
+
+ function convertMargin(margin) {
+ if (isNumber(margin)) {
+ margin = [margin, margin, margin, margin];
+ } else if (isArray(margin)) {
+ if (margin.length === 2) {
+ margin = [margin[0], margin[1], margin[0], margin[1]];
+ }
+ }
+ return margin;
+ }
+
+ var margin = [undefined, undefined, undefined, undefined];
+
+ if (node.style) {
+ var styleArray = isArray(node.style) ? node.style : [node.style];
+ var flattenedStyleArray = flattenStyleArray(styleArray);
+
+ if (flattenedStyleArray) {
+ margin = processSingleMargins(flattenedStyleArray, margin);
+ }
+
+ if (flattenedStyleArray.margin) {
+ margin = convertMargin(flattenedStyleArray.margin);
+ }
+ }
+
+ margin = processSingleMargins(node, margin);
+
+ if (node.margin) {
+ margin = convertMargin(node.margin);
+ }
+
+ if (margin[0] === undefined && margin[1] === undefined && margin[2] === undefined && margin[3] === undefined) {
+ return null;
+ } else {
+ return margin;
+ }
+ }
+};
+
+DocMeasure.prototype.convertIfBase64Image = function (node) {
+ if (/^data:image\/(jpeg|jpg|png);base64,/.test(node.image)) {
+ var label = '$$pdfmake$$' + this.autoImageIndex++;
+ this.images[label] = node.image;
+ node.image = label;
+ }
+};
+
+DocMeasure.prototype.measureImageWithDimensions = function (node, dimensions) {
+ if (node.fit) {
+ var factor = (dimensions.width / dimensions.height > node.fit[0] / node.fit[1]) ? node.fit[0] / dimensions.width : node.fit[1] / dimensions.height;
+ node._width = node._minWidth = node._maxWidth = dimensions.width * factor;
+ node._height = dimensions.height * factor;
+ } else {
+ node._width = node._minWidth = node._maxWidth = node.width || dimensions.width;
+ node._height = node.height || (dimensions.height * node._width / dimensions.width);
+
+ if (isNumber(node.maxWidth) && node.maxWidth < node._width) {
+ node._width = node._minWidth = node._maxWidth = node.maxWidth;
+ node._height = node._width * dimensions.height / dimensions.width;
+ }
+
+ if (isNumber(node.maxHeight) && node.maxHeight < node._height) {
+ node._height = node.maxHeight;
+ node._width = node._minWidth = node._maxWidth = node._height * dimensions.width / dimensions.height;
+ }
+
+ if (isNumber(node.minWidth) && node.minWidth > node._width) {
+ node._width = node._minWidth = node._maxWidth = node.minWidth;
+ node._height = node._width * dimensions.height / dimensions.width;
+ }
+
+ if (isNumber(node.minHeight) && node.minHeight > node._height) {
+ node._height = node.minHeight;
+ node._width = node._minWidth = node._maxWidth = node._height * dimensions.width / dimensions.height;
+ }
+ }
+
+ node._alignment = this.styleStack.getProperty('alignment');
+};
+
+DocMeasure.prototype.measureImage = function (node) {
+ if (this.images) {
+ this.convertIfBase64Image(node);
+ }
+
+ var dimensions = this.imageMeasure.measureImage(node.image);
+
+ this.measureImageWithDimensions(node, dimensions);
+
+ return node;
+};
+
+DocMeasure.prototype.measureSVG = function (node) {
+
+ var dimensions = this.svgMeasure.measureSVG(node.svg);
+
+ this.measureImageWithDimensions(node, dimensions);
+
+ node.font = this.styleStack.getProperty('font');
+
+ // scale SVG based on final dimension
+ node.svg = this.svgMeasure.writeDimensions(node.svg, {
+ width: node._width,
+ height: node._height
+ });
+
+ return node;
+};
+
+DocMeasure.prototype.measureLeaf = function (node) {
+
+ if (node._textRef && node._textRef._textNodeRef.text) {
+ node.text = node._textRef._textNodeRef.text;
+ }
+
+ // Make sure style properties of the node itself are considered when building inlines.
+ // We could also just pass [node] to buildInlines, but that fails for bullet points.
+ var styleStack = this.styleStack.clone();
+ styleStack.push(node);
+
+ var data = this.textTools.buildInlines(node.text, styleStack);
+
+ node._inlines = data.items;
+ node._minWidth = data.minWidth;
+ node._maxWidth = data.maxWidth;
+
+ return node;
+};
+
+DocMeasure.prototype.measureToc = function (node) {
+ if (node.toc.title) {
+ node.toc.title = this.measureNode(node.toc.title);
+ }
+
+ if (node.toc._items.length > 0) {
+ var body = [];
+ var textStyle = node.toc.textStyle || {};
+ var numberStyle = node.toc.numberStyle || textStyle;
+ var textMargin = node.toc.textMargin || [0, 0, 0, 0];
+ for (var i = 0, l = node.toc._items.length; i < l; i++) {
+ var item = node.toc._items[i];
+ var lineStyle = item._textNodeRef.tocStyle || textStyle;
+ var lineMargin = item._textNodeRef.tocMargin || textMargin;
+ var lineNumberStyle = item._textNodeRef.tocNumberStyle || numberStyle;
+ var destination = getNodeId(item._nodeRef);
+ body.push([
+ { text: item._textNodeRef.text, linkToDestination: destination, alignment: 'left', style: lineStyle, margin: lineMargin },
+ { text: '00000', linkToDestination: destination, alignment: 'right', _tocItemRef: item._nodeRef, style: lineNumberStyle, margin: [0, lineMargin[1], 0, lineMargin[3]] }
+ ]);
+ }
+
+
+ node.toc._table = {
+ table: {
+ dontBreakRows: true,
+ widths: ['*', 'auto'],
+ body: body
+ },
+ layout: 'noBorders'
+ };
+
+ node.toc._table = this.measureNode(node.toc._table);
+ }
+
+ return node;
+};
+
+DocMeasure.prototype.measureVerticalContainer = function (node) {
+ var items = node.stack;
+
+ node._minWidth = 0;
+ node._maxWidth = 0;
+
+ for (var i = 0, l = items.length; i < l; i++) {
+ items[i] = this.measureNode(items[i]);
+
+ node._minWidth = Math.max(node._minWidth, items[i]._minWidth);
+ node._maxWidth = Math.max(node._maxWidth, items[i]._maxWidth);
+ }
+
+ return node;
+};
+
+DocMeasure.prototype.gapSizeForList = function () {
+ return this.textTools.sizeOfString('9. ', this.styleStack);
+};
+
+DocMeasure.prototype.buildUnorderedMarker = function (styleStack, gapSize, type) {
+ function buildDisc(gapSize, color) {
+ // TODO: ascender-based calculations
+ var radius = gapSize.fontSize / 6;
+ return {
+ canvas: [{
+ x: radius,
+ y: (gapSize.height / gapSize.lineHeight) + gapSize.descender - gapSize.fontSize / 3,
+ r1: radius,
+ r2: radius,
+ type: 'ellipse',
+ color: color
+ }]
+ };
+ }
+
+ function buildSquare(gapSize, color) {
+ // TODO: ascender-based calculations
+ var size = gapSize.fontSize / 3;
+ return {
+ canvas: [{
+ x: 0,
+ y: (gapSize.height / gapSize.lineHeight) + gapSize.descender - (gapSize.fontSize / 3) - (size / 2),
+ h: size,
+ w: size,
+ type: 'rect',
+ color: color
+ }]
+ };
+ }
+
+ function buildCircle(gapSize, color) {
+ // TODO: ascender-based calculations
+ var radius = gapSize.fontSize / 6;
+ return {
+ canvas: [{
+ x: radius,
+ y: (gapSize.height / gapSize.lineHeight) + gapSize.descender - gapSize.fontSize / 3,
+ r1: radius,
+ r2: radius,
+ type: 'ellipse',
+ lineColor: color
+ }]
+ };
+ }
+
+ var marker;
+ var color = styleStack.getProperty('markerColor') || styleStack.getProperty('color') || 'black';
+
+ switch (type) {
+ case 'circle':
+ marker = buildCircle(gapSize, color);
+ break;
+
+ case 'square':
+ marker = buildSquare(gapSize, color);
+ break;
+
+ case 'none':
+ marker = {};
+ break;
+
+ case 'disc':
+ default:
+ marker = buildDisc(gapSize, color);
+ break;
+ }
+
+ marker._minWidth = marker._maxWidth = gapSize.width;
+ marker._minHeight = marker._maxHeight = gapSize.height;
+
+ return marker;
+};
+
+DocMeasure.prototype.buildOrderedMarker = function (counter, styleStack, type, separator) {
+ function prepareAlpha(counter) {
+ function toAlpha(num) {
+ return (num >= 26 ? toAlpha((num / 26 >> 0) - 1) : '') + 'abcdefghijklmnopqrstuvwxyz'[num % 26 >> 0];
+ }
+
+ if (counter < 1) {
+ return counter.toString();
+ }
+
+ return toAlpha(counter - 1);
+ }
+
+ function prepareRoman(counter) {
+ if (counter < 1 || counter > 4999) {
+ return counter.toString();
+ }
+ var num = counter;
+ var lookup = { M: 1000, CM: 900, D: 500, CD: 400, C: 100, XC: 90, L: 50, XL: 40, X: 10, IX: 9, V: 5, IV: 4, I: 1 }, roman = '', i;
+ for (i in lookup) {
+ while (num >= lookup[i]) {
+ roman += i;
+ num -= lookup[i];
+ }
+ }
+ return roman;
+ }
+
+ function prepareDecimal(counter) {
+ return counter.toString();
+ }
+
+ var counterText;
+ switch (type) {
+ case 'none':
+ counterText = null;
+ break;
+
+ case 'upper-alpha':
+ counterText = prepareAlpha(counter).toUpperCase();
+ break;
+
+ case 'lower-alpha':
+ counterText = prepareAlpha(counter);
+ break;
+
+ case 'upper-roman':
+ counterText = prepareRoman(counter);
+ break;
+
+ case 'lower-roman':
+ counterText = prepareRoman(counter).toLowerCase();
+ break;
+
+ case 'decimal':
+ default:
+ counterText = prepareDecimal(counter);
+ break;
+ }
+
+ if (counterText === null) {
+ return {};
+ }
+
+ if (separator) {
+ if (isArray(separator)) {
+ if (separator[0]) {
+ counterText = separator[0] + counterText;
+ }
+
+ if (separator[1]) {
+ counterText += separator[1];
+ }
+ counterText += ' ';
+ } else {
+ counterText += separator + ' ';
+ }
+ }
+
+ var textArray = { text: counterText };
+ var markerColor = styleStack.getProperty('markerColor');
+ if (markerColor) {
+ textArray.color = markerColor;
+ }
+
+ return { _inlines: this.textTools.buildInlines(textArray, styleStack).items };
+};
+
+DocMeasure.prototype.measureUnorderedList = function (node) {
+ var style = this.styleStack.clone();
+ var items = node.ul;
+ node.type = node.type || 'disc';
+ node._gapSize = this.gapSizeForList();
+ node._minWidth = 0;
+ node._maxWidth = 0;
+
+ for (var i = 0, l = items.length; i < l; i++) {
+ var item = items[i] = this.measureNode(items[i]);
+
+ if (!item.ol && !item.ul) {
+ item.listMarker = this.buildUnorderedMarker(style, node._gapSize, item.listType || node.type);
+ }
+
+ node._minWidth = Math.max(node._minWidth, items[i]._minWidth + node._gapSize.width);
+ node._maxWidth = Math.max(node._maxWidth, items[i]._maxWidth + node._gapSize.width);
+ }
+
+ return node;
+};
+
+DocMeasure.prototype.measureOrderedList = function (node) {
+ var style = this.styleStack.clone();
+ var items = node.ol;
+ node.type = node.type || 'decimal';
+ node.separator = node.separator || '.';
+ node.reversed = node.reversed || false;
+ if (!isNumber(node.start)) {
+ node.start = node.reversed ? items.length : 1;
+ }
+ node._gapSize = this.gapSizeForList();
+ node._minWidth = 0;
+ node._maxWidth = 0;
+
+ var counter = node.start;
+ for (var i = 0, l = items.length; i < l; i++) {
+ var item = items[i] = this.measureNode(items[i]);
+
+ if (!item.ol && !item.ul) {
+ var counterValue = isNumber(item.counter) ? item.counter : counter;
+ item.listMarker = this.buildOrderedMarker(counterValue, style, item.listType || node.type, node.separator);
+ if (item.listMarker._inlines) {
+ node._gapSize.width = Math.max(node._gapSize.width, item.listMarker._inlines[0].width);
+ }
+ } // TODO: else - nested lists numbering
+
+ node._minWidth = Math.max(node._minWidth, items[i]._minWidth);
+ node._maxWidth = Math.max(node._maxWidth, items[i]._maxWidth);
+
+ if (node.reversed) {
+ counter--;
+ } else {
+ counter++;
+ }
+ }
+
+ node._minWidth += node._gapSize.width;
+ node._maxWidth += node._gapSize.width;
+
+ for (var i = 0, l = items.length; i < l; i++) {
+ var item = items[i];
+ if (!item.ol && !item.ul) {
+ item.listMarker._minWidth = item.listMarker._maxWidth = node._gapSize.width;
+ }
+ }
+
+ return node;
+};
+
+DocMeasure.prototype.measureColumns = function (node) {
+ var columns = node.columns;
+ node._gap = this.styleStack.getProperty('columnGap') || 0;
+
+ for (var i = 0, l = columns.length; i < l; i++) {
+ columns[i] = this.measureNode(columns[i]);
+ }
+
+ var measures = ColumnCalculator.measureMinMax(columns);
+
+ var numGaps = (columns.length > 0) ? (columns.length - 1) : 0;
+ node._minWidth = measures.min + node._gap * numGaps;
+ node._maxWidth = measures.max + node._gap * numGaps;
+
+ return node;
+};
+
+DocMeasure.prototype.measureTable = function (node) {
+ extendTableWidths(node);
+ node._layout = getLayout(this.tableLayouts);
+ node._offsets = getOffsets(node._layout);
+
+ var colSpans = [];
+ var col, row, cols, rows;
+
+ for (col = 0, cols = node.table.body[0].length; col < cols; col++) {
+ var c = node.table.widths[col];
+ c._minWidth = 0;
+ c._maxWidth = 0;
+
+ for (row = 0, rows = node.table.body.length; row < rows; row++) {
+ var rowData = node.table.body[row];
+ var data = rowData[col];
+ if (data === undefined) {
+ console.error('Malformed table row ', rowData, 'in node ', node);
+ throw 'Malformed table row, a cell is undefined.';
+ }
+ if (data === null) { // transform to object
+ data = '';
+ }
+
+ if (!data._span) {
+ data = rowData[col] = this.styleStack.auto(data, measureCb(this, data));
+
+ if (data.colSpan && data.colSpan > 1) {
+ markSpans(rowData, col, data.colSpan);
+ colSpans.push({ col: col, span: data.colSpan, minWidth: data._minWidth, maxWidth: data._maxWidth });
+ } else {
+ c._minWidth = Math.max(c._minWidth, data._minWidth);
+ c._maxWidth = Math.max(c._maxWidth, data._maxWidth);
+ }
+ }
+
+ if (data.rowSpan && data.rowSpan > 1) {
+ markVSpans(node.table, row, col, data.rowSpan);
+ }
+ }
+ }
+
+ extendWidthsForColSpans();
+
+ var measures = ColumnCalculator.measureMinMax(node.table.widths);
+
+ node._minWidth = measures.min + node._offsets.total;
+ node._maxWidth = measures.max + node._offsets.total;
+
+ return node;
+
+ function measureCb(_this, data) {
+ return function () {
+ if (isObject(data)) {
+ data.fillColor = _this.styleStack.getProperty('fillColor');
+ data.fillOpacity = _this.styleStack.getProperty('fillOpacity');
+ }
+ return _this.measureNode(data);
+ };
+ }
+
+ function getLayout(tableLayouts) {
+ var layout = node.layout;
+
+ if (isString(layout)) {
+ layout = tableLayouts[layout];
+ }
+
+ var defaultLayout = {
+ hLineWidth: function (i, node) {
+ return 1;
+ },
+ vLineWidth: function (i, node) {
+ return 1;
+ },
+ hLineColor: function (i, node) {
+ return 'black';
+ },
+ vLineColor: function (i, node) {
+ return 'black';
+ },
+ hLineStyle: function (i, node) {
+ return null;
+ },
+ vLineStyle: function (i, node) {
+ return null;
+ },
+ paddingLeft: function (i, node) {
+ return 4;
+ },
+ paddingRight: function (i, node) {
+ return 4;
+ },
+ paddingTop: function (i, node) {
+ return 2;
+ },
+ paddingBottom: function (i, node) {
+ return 2;
+ },
+ fillColor: function (i, node) {
+ return null;
+ },
+ fillOpacity: function (i, node) {
+ return 1;
+ },
+ defaultBorder: true
+ };
+
+ return pack(defaultLayout, layout);
+ }
+
+ function getOffsets(layout) {
+ var offsets = [];
+ var totalOffset = 0;
+ var prevRightPadding = 0;
+
+ for (var i = 0, l = node.table.widths.length; i < l; i++) {
+ var lOffset = prevRightPadding + layout.vLineWidth(i, node) + layout.paddingLeft(i, node);
+ offsets.push(lOffset);
+ totalOffset += lOffset;
+ prevRightPadding = layout.paddingRight(i, node);
+ }
+
+ totalOffset += prevRightPadding + layout.vLineWidth(node.table.widths.length, node);
+
+ return {
+ total: totalOffset,
+ offsets: offsets
+ };
+ }
+
+ function extendWidthsForColSpans() {
+ var q, j;
+
+ for (var i = 0, l = colSpans.length; i < l; i++) {
+ var span = colSpans[i];
+
+ var currentMinMax = getMinMax(span.col, span.span, node._offsets);
+ var minDifference = span.minWidth - currentMinMax.minWidth;
+ var maxDifference = span.maxWidth - currentMinMax.maxWidth;
+
+ if (minDifference > 0) {
+ q = minDifference / span.span;
+
+ for (j = 0; j < span.span; j++) {
+ node.table.widths[span.col + j]._minWidth += q;
+ }
+ }
+
+ if (maxDifference > 0) {
+ q = maxDifference / span.span;
+
+ for (j = 0; j < span.span; j++) {
+ node.table.widths[span.col + j]._maxWidth += q;
+ }
+ }
+ }
+ }
+
+ function getMinMax(col, span, offsets) {
+ var result = { minWidth: 0, maxWidth: 0 };
+
+ for (var i = 0; i < span; i++) {
+ result.minWidth += node.table.widths[col + i]._minWidth + (i ? offsets.offsets[col + i] : 0);
+ result.maxWidth += node.table.widths[col + i]._maxWidth + (i ? offsets.offsets[col + i] : 0);
+ }
+
+ return result;
+ }
+
+ function markSpans(rowData, col, span) {
+ for (var i = 1; i < span; i++) {
+ rowData[col + i] = {
+ _span: true,
+ _minWidth: 0,
+ _maxWidth: 0,
+ rowSpan: rowData[col].rowSpan
+ };
+ }
+ }
+
+ function markVSpans(table, row, col, span) {
+ for (var i = 1; i < span; i++) {
+ table.body[row + i][col] = {
+ _span: true,
+ _minWidth: 0,
+ _maxWidth: 0,
+ fillColor: table.body[row][col].fillColor,
+ fillOpacity: table.body[row][col].fillOpacity
+ };
+ }
+ }
+
+ function extendTableWidths(node) {
+ if (!node.table.widths) {
+ node.table.widths = 'auto';
+ }
+
+ if (isString(node.table.widths)) {
+ node.table.widths = [node.table.widths];
+
+ while (node.table.widths.length < node.table.body[0].length) {
+ node.table.widths.push(node.table.widths[node.table.widths.length - 1]);
+ }
+ }
+
+ for (var i = 0, l = node.table.widths.length; i < l; i++) {
+ var w = node.table.widths[i];
+ if (isNumber(w) || isString(w)) {
+ node.table.widths[i] = { width: w };
+ }
+ }
+ }
+};
+
+DocMeasure.prototype.measureCanvas = function (node) {
+ var w = 0, h = 0;
+
+ for (var i = 0, l = node.canvas.length; i < l; i++) {
+ var vector = node.canvas[i];
+
+ switch (vector.type) {
+ case 'ellipse':
+ w = Math.max(w, vector.x + vector.r1);
+ h = Math.max(h, vector.y + vector.r2);
+ break;
+ case 'rect':
+ w = Math.max(w, vector.x + vector.w);
+ h = Math.max(h, vector.y + vector.h);
+ break;
+ case 'line':
+ w = Math.max(w, vector.x1, vector.x2);
+ h = Math.max(h, vector.y1, vector.y2);
+ break;
+ case 'polyline':
+ for (var i2 = 0, l2 = vector.points.length; i2 < l2; i2++) {
+ w = Math.max(w, vector.points[i2].x);
+ h = Math.max(h, vector.points[i2].y);
+ }
+ break;
+ }
+ }
+
+ node._minWidth = node._maxWidth = w;
+ node._minHeight = node._maxHeight = h;
+ node._alignment = this.styleStack.getProperty('alignment');
+
+ return node;
+};
+
+DocMeasure.prototype.measureQr = function (node) {
+ node = qrEncoder.measure(node);
+ node._alignment = this.styleStack.getProperty('alignment');
+ return node;
+};
+
+module.exports = DocMeasure;
/***/ }),
-/* 448 */
+/* 543 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/*eslint no-unused-vars: ["error", {"args": "none"}]*/
-/*eslint no-redeclare: "off"*/
-
-
-/* qr.js -- QR code generator in Javascript (revision 2011-01-19)
- * Written by Kang Seonghoon .
- *
- * This source code is in the public domain; if your jurisdiction does not
- * recognize the public domain the terms of Creative Commons CC0 license
- * apply. In the other words, you can always do what you want.
- */
-
-
-// per-version information (cf. JIS X 0510:2004 pp. 30--36, 71)
-//
-// [0]: the degree of generator polynomial by ECC levels
-// [1]: # of code blocks by ECC levels
-// [2]: left-top positions of alignment patterns
-//
-// the number in this table (in particular, [0]) does not exactly match with
-// the numbers in the specficiation. see augumenteccs below for the reason.
-var VERSIONS = [
- null,
- [[10, 7, 17, 13], [1, 1, 1, 1], []],
- [[16, 10, 28, 22], [1, 1, 1, 1], [4, 16]],
- [[26, 15, 22, 18], [1, 1, 2, 2], [4, 20]],
- [[18, 20, 16, 26], [2, 1, 4, 2], [4, 24]],
- [[24, 26, 22, 18], [2, 1, 4, 4], [4, 28]],
- [[16, 18, 28, 24], [4, 2, 4, 4], [4, 32]],
- [[18, 20, 26, 18], [4, 2, 5, 6], [4, 20, 36]],
- [[22, 24, 26, 22], [4, 2, 6, 6], [4, 22, 40]],
- [[22, 30, 24, 20], [5, 2, 8, 8], [4, 24, 44]],
- [[26, 18, 28, 24], [5, 4, 8, 8], [4, 26, 48]],
- [[30, 20, 24, 28], [5, 4, 11, 8], [4, 28, 52]],
- [[22, 24, 28, 26], [8, 4, 11, 10], [4, 30, 56]],
- [[22, 26, 22, 24], [9, 4, 16, 12], [4, 32, 60]],
- [[24, 30, 24, 20], [9, 4, 16, 16], [4, 24, 44, 64]],
- [[24, 22, 24, 30], [10, 6, 18, 12], [4, 24, 46, 68]],
- [[28, 24, 30, 24], [10, 6, 16, 17], [4, 24, 48, 72]],
- [[28, 28, 28, 28], [11, 6, 19, 16], [4, 28, 52, 76]],
- [[26, 30, 28, 28], [13, 6, 21, 18], [4, 28, 54, 80]],
- [[26, 28, 26, 26], [14, 7, 25, 21], [4, 28, 56, 84]],
- [[26, 28, 28, 30], [16, 8, 25, 20], [4, 32, 60, 88]],
- [[26, 28, 30, 28], [17, 8, 25, 23], [4, 26, 48, 70, 92]],
- [[28, 28, 24, 30], [17, 9, 34, 23], [4, 24, 48, 72, 96]],
- [[28, 30, 30, 30], [18, 9, 30, 25], [4, 28, 52, 76, 100]],
- [[28, 30, 30, 30], [20, 10, 32, 27], [4, 26, 52, 78, 104]],
- [[28, 26, 30, 30], [21, 12, 35, 29], [4, 30, 56, 82, 108]],
- [[28, 28, 30, 28], [23, 12, 37, 34], [4, 28, 56, 84, 112]],
- [[28, 30, 30, 30], [25, 12, 40, 34], [4, 32, 60, 88, 116]],
- [[28, 30, 30, 30], [26, 13, 42, 35], [4, 24, 48, 72, 96, 120]],
- [[28, 30, 30, 30], [28, 14, 45, 38], [4, 28, 52, 76, 100, 124]],
- [[28, 30, 30, 30], [29, 15, 48, 40], [4, 24, 50, 76, 102, 128]],
- [[28, 30, 30, 30], [31, 16, 51, 43], [4, 28, 54, 80, 106, 132]],
- [[28, 30, 30, 30], [33, 17, 54, 45], [4, 32, 58, 84, 110, 136]],
- [[28, 30, 30, 30], [35, 18, 57, 48], [4, 28, 56, 84, 112, 140]],
- [[28, 30, 30, 30], [37, 19, 60, 51], [4, 32, 60, 88, 116, 144]],
- [[28, 30, 30, 30], [38, 19, 63, 53], [4, 28, 52, 76, 100, 124, 148]],
- [[28, 30, 30, 30], [40, 20, 66, 56], [4, 22, 48, 74, 100, 126, 152]],
- [[28, 30, 30, 30], [43, 21, 70, 59], [4, 26, 52, 78, 104, 130, 156]],
- [[28, 30, 30, 30], [45, 22, 74, 62], [4, 30, 56, 82, 108, 134, 160]],
- [[28, 30, 30, 30], [47, 24, 77, 65], [4, 24, 52, 80, 108, 136, 164]],
- [[28, 30, 30, 30], [49, 25, 81, 68], [4, 28, 56, 84, 112, 140, 168]]];
-
-// mode constants (cf. Table 2 in JIS X 0510:2004 p. 16)
-var MODE_TERMINATOR = 0;
-var MODE_NUMERIC = 1, MODE_ALPHANUMERIC = 2, MODE_OCTET = 4, MODE_KANJI = 8;
-
-// validation regexps
-var NUMERIC_REGEXP = /^\d*$/;
-var ALPHANUMERIC_REGEXP = /^[A-Za-z0-9 $%*+\-./:]*$/;
-var ALPHANUMERIC_OUT_REGEXP = /^[A-Z0-9 $%*+\-./:]*$/;
-
-// ECC levels (cf. Table 22 in JIS X 0510:2004 p. 45)
-var ECCLEVEL_L = 1, ECCLEVEL_M = 0, ECCLEVEL_Q = 3, ECCLEVEL_H = 2;
-
-// GF(2^8)-to-integer mapping with a reducing polynomial x^8+x^4+x^3+x^2+1
-// invariant: GF256_MAP[GF256_INVMAP[i]] == i for all i in [1,256)
-var GF256_MAP = [], GF256_INVMAP = [-1];
-for (var i = 0, v = 1; i < 255; ++i) {
- GF256_MAP.push(v);
- GF256_INVMAP[v] = i;
- v = (v * 2) ^ (v >= 128 ? 0x11d : 0);
-}
-
-// generator polynomials up to degree 30
-// (should match with polynomials in JIS X 0510:2004 Appendix A)
-//
-// generator polynomial of degree K is product of (x-\alpha^0), (x-\alpha^1),
-// ..., (x-\alpha^(K-1)). by convention, we omit the K-th coefficient (always 1)
-// from the result; also other coefficients are written in terms of the exponent
-// to \alpha to avoid the redundant calculation. (see also calculateecc below.)
-var GF256_GENPOLY = [[]];
-for (var i = 0; i < 30; ++i) {
- var prevpoly = GF256_GENPOLY[i], poly = [];
- for (var j = 0; j <= i; ++j) {
- var a = (j < i ? GF256_MAP[prevpoly[j]] : 0);
- var b = GF256_MAP[(i + (prevpoly[j - 1] || 0)) % 255];
- poly.push(GF256_INVMAP[a ^ b]);
- }
- GF256_GENPOLY.push(poly);
-}
-
-// alphanumeric character mapping (cf. Table 5 in JIS X 0510:2004 p. 19)
-var ALPHANUMERIC_MAP = {};
-for (var i = 0; i < 45; ++i) {
- ALPHANUMERIC_MAP['0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:'.charAt(i)] = i;
-}
-
-// mask functions in terms of row # and column #
-// (cf. Table 20 in JIS X 0510:2004 p. 42)
-/*jshint unused: false */
-var MASKFUNCS = [
- function (i, j) {
- return (i + j) % 2 === 0;
- },
- function (i, j) {
- return i % 2 === 0;
- },
- function (i, j) {
- return j % 3 === 0;
- },
- function (i, j) {
- return (i + j) % 3 === 0;
- },
- function (i, j) {
- return (((i / 2) | 0) + ((j / 3) | 0)) % 2 === 0;
- },
- function (i, j) {
- return (i * j) % 2 + (i * j) % 3 === 0;
- },
- function (i, j) {
- return ((i * j) % 2 + (i * j) % 3) % 2 === 0;
- },
- function (i, j) {
- return ((i + j) % 2 + (i * j) % 3) % 2 === 0;
- }];
-
-// returns true when the version information has to be embeded.
-var needsverinfo = function (ver) {
- return ver > 6;
-};
-
-// returns the size of entire QR code for given version.
-var getsizebyver = function (ver) {
- return 4 * ver + 17;
-};
-
-// returns the number of bits available for code words in this version.
-var nfullbits = function (ver) {
- /*
- * |<--------------- n --------------->|
- * | |<----- n-17 ---->| |
- * +-------+ ///+-------+ ----
- * | | ///| | ^
- * | 9x9 | @@@@@ ///| 9x8 | |
- * | | # # # @5x5@ # # # | | |
- * +-------+ @@@@@ +-------+ |
- * # ---|
- * ^ |
- * # |
- * @@@@@ @@@@@ @@@@@ | n
- * @5x5@ @5x5@ @5x5@ n-17
- * @@@@@ @@@@@ @@@@@ | |
- * # | |
- * ////// v |
- * //////# ---|
- * +-------+ @@@@@ @@@@@ |
- * | | @5x5@ @5x5@ |
- * | 8x9 | @@@@@ @@@@@ |
- * | | v
- * +-------+ ----
- *
- * when the entire code has n^2 modules and there are m^2-3 alignment
- * patterns, we have:
- * - 225 (= 9x9 + 9x8 + 8x9) modules for finder patterns and
- * format information;
- * - 2n-34 (= 2(n-17)) modules for timing patterns;
- * - 36 (= 3x6 + 6x3) modules for version information, if any;
- * - 25m^2-75 (= (m^2-3)(5x5)) modules for alignment patterns
- * if any, but 10m-20 (= 2(m-2)x5) of them overlaps with
- * timing patterns.
- */
- var v = VERSIONS[ver];
- var nbits = 16 * ver * ver + 128 * ver + 64; // finder, timing and format info.
- if (needsverinfo(ver))
- nbits -= 36; // version information
- if (v[2].length) { // alignment patterns
- nbits -= 25 * v[2].length * v[2].length - 10 * v[2].length - 55;
- }
- return nbits;
-};
-
-// returns the number of bits available for data portions (i.e. excludes ECC
-// bits but includes mode and length bits) in this version and ECC level.
-var ndatabits = function (ver, ecclevel) {
- var nbits = nfullbits(ver) & ~7; // no sub-octet code words
- var v = VERSIONS[ver];
- nbits -= 8 * v[0][ecclevel] * v[1][ecclevel]; // ecc bits
- return nbits;
-};
-
-// returns the number of bits required for the length of data.
-// (cf. Table 3 in JIS X 0510:2004 p. 16)
-var ndatalenbits = function (ver, mode) {
- switch (mode) {
- case MODE_NUMERIC:
- return (ver < 10 ? 10 : ver < 27 ? 12 : 14);
- case MODE_ALPHANUMERIC:
- return (ver < 10 ? 9 : ver < 27 ? 11 : 13);
- case MODE_OCTET:
- return (ver < 10 ? 8 : 16);
- case MODE_KANJI:
- return (ver < 10 ? 8 : ver < 27 ? 10 : 12);
- }
-};
-
-// returns the maximum length of data possible in given configuration.
-var getmaxdatalen = function (ver, mode, ecclevel) {
- var nbits = ndatabits(ver, ecclevel) - 4 - ndatalenbits(ver, mode); // 4 for mode bits
- switch (mode) {
- case MODE_NUMERIC:
- return ((nbits / 10) | 0) * 3 + (nbits % 10 < 4 ? 0 : nbits % 10 < 7 ? 1 : 2);
- case MODE_ALPHANUMERIC:
- return ((nbits / 11) | 0) * 2 + (nbits % 11 < 6 ? 0 : 1);
- case MODE_OCTET:
- return (nbits / 8) | 0;
- case MODE_KANJI:
- return (nbits / 13) | 0;
- }
-};
-
-// checks if the given data can be encoded in given mode, and returns
-// the converted data for the further processing if possible. otherwise
-// returns null.
-//
-// this function does not check the length of data; it is a duty of
-// encode function below (as it depends on the version and ECC level too).
-var validatedata = function (mode, data) {
- switch (mode) {
- case MODE_NUMERIC:
- if (!data.match(NUMERIC_REGEXP))
- return null;
- return data;
-
- case MODE_ALPHANUMERIC:
- if (!data.match(ALPHANUMERIC_REGEXP))
- return null;
- return data.toUpperCase();
-
- case MODE_OCTET:
- if (typeof data === 'string') { // encode as utf-8 string
- var newdata = [];
- for (var i = 0; i < data.length; ++i) {
- var ch = data.charCodeAt(i);
- if (ch < 0x80) {
- newdata.push(ch);
- } else if (ch < 0x800) {
- newdata.push(0xc0 | (ch >> 6),
- 0x80 | (ch & 0x3f));
- } else if (ch < 0x10000) {
- newdata.push(0xe0 | (ch >> 12),
- 0x80 | ((ch >> 6) & 0x3f),
- 0x80 | (ch & 0x3f));
- } else {
- newdata.push(0xf0 | (ch >> 18),
- 0x80 | ((ch >> 12) & 0x3f),
- 0x80 | ((ch >> 6) & 0x3f),
- 0x80 | (ch & 0x3f));
- }
- }
- return newdata;
- } else {
- return data;
- }
- }
-};
-
-// returns the code words (sans ECC bits) for given data and configurations.
-// requires data to be preprocessed by validatedata. no length check is
-// performed, and everything has to be checked before calling this function.
-var encode = function (ver, mode, data, maxbuflen) {
- var buf = [];
- var bits = 0, remaining = 8;
- var datalen = data.length;
-
- // this function is intentionally no-op when n=0.
- var pack = function (x, n) {
- if (n >= remaining) {
- buf.push(bits | (x >> (n -= remaining)));
- while (n >= 8)
- buf.push((x >> (n -= 8)) & 255);
- bits = 0;
- remaining = 8;
- }
- if (n > 0)
- bits |= (x & ((1 << n) - 1)) << (remaining -= n);
- };
-
- var nlenbits = ndatalenbits(ver, mode);
- pack(mode, 4);
- pack(datalen, nlenbits);
-
- switch (mode) {
- case MODE_NUMERIC:
- for (var i = 2; i < datalen; i += 3) {
- pack(parseInt(data.substring(i - 2, i + 1), 10), 10);
- }
- pack(parseInt(data.substring(i - 2), 10), [0, 4, 7][datalen % 3]);
- break;
-
- case MODE_ALPHANUMERIC:
- for (var i = 1; i < datalen; i += 2) {
- pack(ALPHANUMERIC_MAP[data.charAt(i - 1)] * 45 +
- ALPHANUMERIC_MAP[data.charAt(i)], 11);
- }
- if (datalen % 2 == 1) {
- pack(ALPHANUMERIC_MAP[data.charAt(i - 1)], 6);
- }
- break;
-
- case MODE_OCTET:
- for (var i = 0; i < datalen; ++i) {
- pack(data[i], 8);
- }
- break;
- }
-
- // final bits. it is possible that adding terminator causes the buffer
- // to overflow, but then the buffer truncated to the maximum size will
- // be valid as the truncated terminator mode bits and padding is
- // identical in appearance (cf. JIS X 0510:2004 sec 8.4.8).
- pack(MODE_TERMINATOR, 4);
- if (remaining < 8)
- buf.push(bits);
-
- // the padding to fill up the remaining space. we should not add any
- // words when the overflow already occurred.
- while (buf.length + 1 < maxbuflen)
- buf.push(0xec, 0x11);
- if (buf.length < maxbuflen)
- buf.push(0xec);
- return buf;
-};
-
-// calculates ECC code words for given code words and generator polynomial.
-//
-// this is quite similar to CRC calculation as both Reed-Solomon and CRC use
-// the certain kind of cyclic codes, which is effectively the division of
-// zero-augumented polynomial by the generator polynomial. the only difference
-// is that Reed-Solomon uses GF(2^8), instead of CRC's GF(2), and Reed-Solomon
-// uses the different generator polynomial than CRC's.
-var calculateecc = function (poly, genpoly) {
- var modulus = poly.slice(0);
- var polylen = poly.length, genpolylen = genpoly.length;
- for (var i = 0; i < genpolylen; ++i)
- modulus.push(0);
- for (var i = 0; i < polylen; ) {
- var quotient = GF256_INVMAP[modulus[i++]];
- if (quotient >= 0) {
- for (var j = 0; j < genpolylen; ++j) {
- modulus[i + j] ^= GF256_MAP[(quotient + genpoly[j]) % 255];
- }
- }
- }
- return modulus.slice(polylen);
-};
-
-// auguments ECC code words to given code words. the resulting words are
-// ready to be encoded in the matrix.
-//
-// the much of actual augumenting procedure follows JIS X 0510:2004 sec 8.7.
-// the code is simplified using the fact that the size of each code & ECC
-// blocks is almost same; for example, when we have 4 blocks and 46 data words
-// the number of code words in those blocks are 11, 11, 12, 12 respectively.
-var augumenteccs = function (poly, nblocks, genpoly) {
- var subsizes = [];
- var subsize = (poly.length / nblocks) | 0, subsize0 = 0;
- var pivot = nblocks - poly.length % nblocks;
- for (var i = 0; i < pivot; ++i) {
- subsizes.push(subsize0);
- subsize0 += subsize;
- }
- for (var i = pivot; i < nblocks; ++i) {
- subsizes.push(subsize0);
- subsize0 += subsize + 1;
- }
- subsizes.push(subsize0);
-
- var eccs = [];
- for (var i = 0; i < nblocks; ++i) {
- eccs.push(calculateecc(poly.slice(subsizes[i], subsizes[i + 1]), genpoly));
- }
-
- var result = [];
- var nitemsperblock = (poly.length / nblocks) | 0;
- for (var i = 0; i < nitemsperblock; ++i) {
- for (var j = 0; j < nblocks; ++j) {
- result.push(poly[subsizes[j] + i]);
- }
- }
- for (var j = pivot; j < nblocks; ++j) {
- result.push(poly[subsizes[j + 1] - 1]);
- }
- for (var i = 0; i < genpoly.length; ++i) {
- for (var j = 0; j < nblocks; ++j) {
- result.push(eccs[j][i]);
- }
- }
- return result;
-};
-
-// auguments BCH(p+q,q) code to the polynomial over GF(2), given the proper
-// genpoly. the both input and output are in binary numbers, and unlike
-// calculateecc genpoly should include the 1 bit for the highest degree.
-//
-// actual polynomials used for this procedure are as follows:
-// - p=10, q=5, genpoly=x^10+x^8+x^5+x^4+x^2+x+1 (JIS X 0510:2004 Appendix C)
-// - p=18, q=6, genpoly=x^12+x^11+x^10+x^9+x^8+x^5+x^2+1 (ibid. Appendix D)
-var augumentbch = function (poly, p, genpoly, q) {
- var modulus = poly << q;
- for (var i = p - 1; i >= 0; --i) {
- if ((modulus >> (q + i)) & 1)
- modulus ^= genpoly << i;
- }
- return (poly << q) | modulus;
-};
-
-// creates the base matrix for given version. it returns two matrices, one of
-// them is the actual one and the another represents the "reserved" portion
-// (e.g. finder and timing patterns) of the matrix.
-//
-// some entries in the matrix may be undefined, rather than 0 or 1. this is
-// intentional (no initialization needed!), and putdata below will fill
-// the remaining ones.
-var makebasematrix = function (ver) {
- var v = VERSIONS[ver], n = getsizebyver(ver);
- var matrix = [], reserved = [];
- for (var i = 0; i < n; ++i) {
- matrix.push([]);
- reserved.push([]);
- }
-
- var blit = function (y, x, h, w, bits) {
- for (var i = 0; i < h; ++i) {
- for (var j = 0; j < w; ++j) {
- matrix[y + i][x + j] = (bits[i] >> j) & 1;
- reserved[y + i][x + j] = 1;
- }
- }
- };
-
- // finder patterns and a part of timing patterns
- // will also mark the format information area (not yet written) as reserved.
- blit(0, 0, 9, 9, [0x7f, 0x41, 0x5d, 0x5d, 0x5d, 0x41, 0x17f, 0x00, 0x40]);
- blit(n - 8, 0, 8, 9, [0x100, 0x7f, 0x41, 0x5d, 0x5d, 0x5d, 0x41, 0x7f]);
- blit(0, n - 8, 9, 8, [0xfe, 0x82, 0xba, 0xba, 0xba, 0x82, 0xfe, 0x00, 0x00]);
-
- // the rest of timing patterns
- for (var i = 9; i < n - 8; ++i) {
- matrix[6][i] = matrix[i][6] = ~i & 1;
- reserved[6][i] = reserved[i][6] = 1;
- }
-
- // alignment patterns
- var aligns = v[2], m = aligns.length;
- for (var i = 0; i < m; ++i) {
- var minj = (i === 0 || i === m - 1 ? 1 : 0), maxj = (i === 0 ? m - 1 : m);
- for (var j = minj; j < maxj; ++j) {
- blit(aligns[i], aligns[j], 5, 5, [0x1f, 0x11, 0x15, 0x11, 0x1f]);
- }
- }
-
- // version information
- if (needsverinfo(ver)) {
- var code = augumentbch(ver, 6, 0x1f25, 12);
- var k = 0;
- for (var i = 0; i < 6; ++i) {
- for (var j = 0; j < 3; ++j) {
- matrix[i][(n - 11) + j] = matrix[(n - 11) + j][i] = (code >> k++) & 1;
- reserved[i][(n - 11) + j] = reserved[(n - 11) + j][i] = 1;
- }
- }
- }
-
- return {matrix: matrix, reserved: reserved};
-};
-
-// fills the data portion (i.e. unmarked in reserved) of the matrix with given
-// code words. the size of code words should be no more than available bits,
-// and remaining bits are padded to 0 (cf. JIS X 0510:2004 sec 8.7.3).
-var putdata = function (matrix, reserved, buf) {
- var n = matrix.length;
- var k = 0, dir = -1;
- for (var i = n - 1; i >= 0; i -= 2) {
- if (i == 6)
- --i; // skip the entire timing pattern column
- var jj = (dir < 0 ? n - 1 : 0);
- for (var j = 0; j < n; ++j) {
- for (var ii = i; ii > i - 2; --ii) {
- if (!reserved[jj][ii]) {
- // may overflow, but (undefined >> x)
- // is 0 so it will auto-pad to zero.
- matrix[jj][ii] = (buf[k >> 3] >> (~k & 7)) & 1;
- ++k;
- }
- }
- jj += dir;
- }
- dir = -dir;
- }
- return matrix;
-};
-
-// XOR-masks the data portion of the matrix. repeating the call with the same
-// arguments will revert the prior call (convenient in the matrix evaluation).
-var maskdata = function (matrix, reserved, mask) {
- var maskf = MASKFUNCS[mask];
- var n = matrix.length;
- for (var i = 0; i < n; ++i) {
- for (var j = 0; j < n; ++j) {
- if (!reserved[i][j])
- matrix[i][j] ^= maskf(i, j);
- }
- }
- return matrix;
-};
-
-// puts the format information.
-var putformatinfo = function (matrix, reserved, ecclevel, mask) {
- var n = matrix.length;
- var code = augumentbch((ecclevel << 3) | mask, 5, 0x537, 10) ^ 0x5412;
- for (var i = 0; i < 15; ++i) {
- var r = [0, 1, 2, 3, 4, 5, 7, 8, n - 7, n - 6, n - 5, n - 4, n - 3, n - 2, n - 1][i];
- var c = [n - 1, n - 2, n - 3, n - 4, n - 5, n - 6, n - 7, n - 8, 7, 5, 4, 3, 2, 1, 0][i];
- matrix[r][8] = matrix[8][c] = (code >> i) & 1;
- // we don't have to mark those bits reserved; always done
- // in makebasematrix above.
- }
- return matrix;
-};
-
-// evaluates the resulting matrix and returns the score (lower is better).
-// (cf. JIS X 0510:2004 sec 8.8.2)
-//
-// the evaluation procedure tries to avoid the problematic patterns naturally
-// occuring from the original matrix. for example, it penaltizes the patterns
-// which just look like the finder pattern which will confuse the decoder.
-// we choose the mask which results in the lowest score among 8 possible ones.
-//
-// note: zxing seems to use the same procedure and in many cases its choice
-// agrees to ours, but sometimes it does not. practically it doesn't matter.
-var evaluatematrix = function (matrix) {
- // N1+(k-5) points for each consecutive row of k same-colored modules,
- // where k >= 5. no overlapping row counts.
- var PENALTY_CONSECUTIVE = 3;
- // N2 points for each 2x2 block of same-colored modules.
- // overlapping block does count.
- var PENALTY_TWOBYTWO = 3;
- // N3 points for each pattern with >4W:1B:1W:3B:1W:1B or
- // 1B:1W:3B:1W:1B:>4W, or their multiples (e.g. highly unlikely,
- // but 13W:3B:3W:9B:3W:3B counts).
- var PENALTY_FINDERLIKE = 40;
- // N4*k points for every (5*k)% deviation from 50% black density.
- // i.e. k=1 for 55~60% and 40~45%, k=2 for 60~65% and 35~40%, etc.
- var PENALTY_DENSITY = 10;
-
- var evaluategroup = function (groups) { // assumes [W,B,W,B,W,...,B,W]
- var score = 0;
- for (var i = 0; i < groups.length; ++i) {
- if (groups[i] >= 5)
- score += PENALTY_CONSECUTIVE + (groups[i] - 5);
- }
- for (var i = 5; i < groups.length; i += 2) {
- var p = groups[i];
- if (groups[i - 1] == p && groups[i - 2] == 3 * p && groups[i - 3] == p &&
- groups[i - 4] == p && (groups[i - 5] >= 4 * p || groups[i + 1] >= 4 * p)) {
- // this part differs from zxing...
- score += PENALTY_FINDERLIKE;
- }
- }
- return score;
- };
-
- var n = matrix.length;
- var score = 0, nblacks = 0;
- for (var i = 0; i < n; ++i) {
- var row = matrix[i];
- var groups;
-
- // evaluate the current row
- groups = [0]; // the first empty group of white
- for (var j = 0; j < n; ) {
- var k;
- for (k = 0; j < n && row[j]; ++k)
- ++j;
- groups.push(k);
- for (k = 0; j < n && !row[j]; ++k)
- ++j;
- groups.push(k);
- }
- score += evaluategroup(groups);
-
- // evaluate the current column
- groups = [0];
- for (var j = 0; j < n; ) {
- var k;
- for (k = 0; j < n && matrix[j][i]; ++k)
- ++j;
- groups.push(k);
- for (k = 0; j < n && !matrix[j][i]; ++k)
- ++j;
- groups.push(k);
- }
- score += evaluategroup(groups);
-
- // check the 2x2 box and calculate the density
- var nextrow = matrix[i + 1] || [];
- nblacks += row[0];
- for (var j = 1; j < n; ++j) {
- var p = row[j];
- nblacks += p;
- // at least comparison with next row should be strict...
- if (row[j - 1] == p && nextrow[j] === p && nextrow[j - 1] === p) {
- score += PENALTY_TWOBYTWO;
- }
- }
- }
-
- score += PENALTY_DENSITY * ((Math.abs(nblacks / n / n - 0.5) / 0.05) | 0);
- return score;
-};
-
-// returns the fully encoded QR code matrix which contains given data.
-// it also chooses the best mask automatically when mask is -1.
-var generate = function (data, ver, mode, ecclevel, mask) {
- var v = VERSIONS[ver];
- var buf = encode(ver, mode, data, ndatabits(ver, ecclevel) >> 3);
- buf = augumenteccs(buf, v[1][ecclevel], GF256_GENPOLY[v[0][ecclevel]]);
-
- var result = makebasematrix(ver);
- var matrix = result.matrix, reserved = result.reserved;
- putdata(matrix, reserved, buf);
-
- if (mask < 0) {
- // find the best mask
- maskdata(matrix, reserved, 0);
- putformatinfo(matrix, reserved, ecclevel, 0);
- var bestmask = 0, bestscore = evaluatematrix(matrix);
- maskdata(matrix, reserved, 0);
- for (mask = 1; mask < 8; ++mask) {
- maskdata(matrix, reserved, mask);
- putformatinfo(matrix, reserved, ecclevel, mask);
- var score = evaluatematrix(matrix);
- if (bestscore > score) {
- bestscore = score;
- bestmask = mask;
- }
- maskdata(matrix, reserved, mask);
- }
- mask = bestmask;
- }
-
- maskdata(matrix, reserved, mask);
- putformatinfo(matrix, reserved, ecclevel, mask);
- return matrix;
-};
-
-// the public interface is trivial; the options available are as follows:
-//
-// - version: an integer in [1,40]. when omitted (or -1) the smallest possible
-// version is chosen.
-// - mode: one of 'numeric', 'alphanumeric', 'octet'. when omitted the smallest
-// possible mode is chosen.
-// - eccLevel: one of 'L', 'M', 'Q', 'H'. defaults to 'L'.
-// - mask: an integer in [0,7]. when omitted (or -1) the best mask is chosen.
-//
-
-function generateFrame(data, options) {
- var MODES = {'numeric': MODE_NUMERIC, 'alphanumeric': MODE_ALPHANUMERIC,
- 'octet': MODE_OCTET};
- var ECCLEVELS = {'L': ECCLEVEL_L, 'M': ECCLEVEL_M, 'Q': ECCLEVEL_Q,
- 'H': ECCLEVEL_H};
-
- options = options || {};
- var ver = options.version || -1;
- var ecclevel = ECCLEVELS[(options.eccLevel || 'L').toUpperCase()];
- var mode = options.mode ? MODES[options.mode.toLowerCase()] : -1;
- var mask = 'mask' in options ? options.mask : -1;
-
- if (mode < 0) {
- if (typeof data === 'string') {
- if (data.match(NUMERIC_REGEXP)) {
- mode = MODE_NUMERIC;
- } else if (data.match(ALPHANUMERIC_OUT_REGEXP)) {
- // while encode supports case-insensitive encoding, we restrict the data to be uppercased when auto-selecting the mode.
- mode = MODE_ALPHANUMERIC;
- } else {
- mode = MODE_OCTET;
- }
- } else {
- mode = MODE_OCTET;
- }
- } else if (!(mode == MODE_NUMERIC || mode == MODE_ALPHANUMERIC ||
- mode == MODE_OCTET)) {
- throw 'invalid or unsupported mode';
- }
-
- data = validatedata(mode, data);
- if (data === null)
- throw 'invalid data format';
-
- if (ecclevel < 0 || ecclevel > 3)
- throw 'invalid ECC level';
-
- if (ver < 0) {
- for (ver = 1; ver <= 40; ++ver) {
- if (data.length <= getmaxdatalen(ver, mode, ecclevel))
- break;
- }
- if (ver > 40)
- throw 'too large data for the Qr format';
- } else if (ver < 1 || ver > 40) {
- throw 'invalid Qr version! should be between 1 and 40';
- }
-
- if (mask != -1 && (mask < 0 || mask > 8))
- throw 'invalid mask';
- //console.log('version:', ver, 'mode:', mode, 'ECC:', ecclevel, 'mask:', mask )
- return generate(data, ver, mode, ecclevel, mask);
-}
-
-
-// options
-// - modulesize: a number. this is a size of each modules in pixels, and
-// defaults to 5px.
-// - margin: a number. this is a size of margin in *modules*, and defaults to
-// 4 (white modules). the specficiation mandates the margin no less than 4
-// modules, so it is better not to alter this value unless you know what
-// you're doing.
-function buildCanvas(data, options) {
-
- var canvas = [];
- var background = options.background || '#fff';
- var foreground = options.foreground || '#000';
- //var margin = options.margin || 4;
- var matrix = generateFrame(data, options);
- var n = matrix.length;
- var modSize = Math.floor(options.fit ? options.fit / n : 5);
- var size = n * modSize;
-
- canvas.push({
- type: 'rect',
- x: 0, y: 0, w: size, h: size, lineWidth: 0, color: background
- });
-
- for (var i = 0; i < n; ++i) {
- for (var j = 0; j < n; ++j) {
- if (matrix[i][j]) {
- canvas.push({
- type: 'rect',
- x: modSize * j,
- y: modSize * i,
- w: modSize,
- h: modSize,
- lineWidth: 0,
- color: foreground
- });
- }
- }
- }
-
- return {
- canvas: canvas,
- size: size
- };
-
-}
-
-function measure(node) {
- var cd = buildCanvas(node.qr, node);
- node._canvas = cd.canvas;
- node._width = node._height = node._minWidth = node._maxWidth = node._minHeight = node._maxHeight = cd.size;
- return node;
-}
-
-module.exports = {
- measure: measure
+/*eslint no-unused-vars: ["error", {"args": "none"}]*/
+/*eslint no-redeclare: "off"*/
+
+
+/* qr.js -- QR code generator in Javascript (revision 2011-01-19)
+ * Written by Kang Seonghoon .
+ *
+ * This source code is in the public domain; if your jurisdiction does not
+ * recognize the public domain the terms of Creative Commons CC0 license
+ * apply. In the other words, you can always do what you want.
+ */
+
+
+// per-version information (cf. JIS X 0510:2004 pp. 30--36, 71)
+//
+// [0]: the degree of generator polynomial by ECC levels
+// [1]: # of code blocks by ECC levels
+// [2]: left-top positions of alignment patterns
+//
+// the number in this table (in particular, [0]) does not exactly match with
+// the numbers in the specficiation. see augumenteccs below for the reason.
+var VERSIONS = [
+ null,
+ [[10, 7, 17, 13], [1, 1, 1, 1], []],
+ [[16, 10, 28, 22], [1, 1, 1, 1], [4, 16]],
+ [[26, 15, 22, 18], [1, 1, 2, 2], [4, 20]],
+ [[18, 20, 16, 26], [2, 1, 4, 2], [4, 24]],
+ [[24, 26, 22, 18], [2, 1, 4, 4], [4, 28]],
+ [[16, 18, 28, 24], [4, 2, 4, 4], [4, 32]],
+ [[18, 20, 26, 18], [4, 2, 5, 6], [4, 20, 36]],
+ [[22, 24, 26, 22], [4, 2, 6, 6], [4, 22, 40]],
+ [[22, 30, 24, 20], [5, 2, 8, 8], [4, 24, 44]],
+ [[26, 18, 28, 24], [5, 4, 8, 8], [4, 26, 48]],
+ [[30, 20, 24, 28], [5, 4, 11, 8], [4, 28, 52]],
+ [[22, 24, 28, 26], [8, 4, 11, 10], [4, 30, 56]],
+ [[22, 26, 22, 24], [9, 4, 16, 12], [4, 32, 60]],
+ [[24, 30, 24, 20], [9, 4, 16, 16], [4, 24, 44, 64]],
+ [[24, 22, 24, 30], [10, 6, 18, 12], [4, 24, 46, 68]],
+ [[28, 24, 30, 24], [10, 6, 16, 17], [4, 24, 48, 72]],
+ [[28, 28, 28, 28], [11, 6, 19, 16], [4, 28, 52, 76]],
+ [[26, 30, 28, 28], [13, 6, 21, 18], [4, 28, 54, 80]],
+ [[26, 28, 26, 26], [14, 7, 25, 21], [4, 28, 56, 84]],
+ [[26, 28, 28, 30], [16, 8, 25, 20], [4, 32, 60, 88]],
+ [[26, 28, 30, 28], [17, 8, 25, 23], [4, 26, 48, 70, 92]],
+ [[28, 28, 24, 30], [17, 9, 34, 23], [4, 24, 48, 72, 96]],
+ [[28, 30, 30, 30], [18, 9, 30, 25], [4, 28, 52, 76, 100]],
+ [[28, 30, 30, 30], [20, 10, 32, 27], [4, 26, 52, 78, 104]],
+ [[28, 26, 30, 30], [21, 12, 35, 29], [4, 30, 56, 82, 108]],
+ [[28, 28, 30, 28], [23, 12, 37, 34], [4, 28, 56, 84, 112]],
+ [[28, 30, 30, 30], [25, 12, 40, 34], [4, 32, 60, 88, 116]],
+ [[28, 30, 30, 30], [26, 13, 42, 35], [4, 24, 48, 72, 96, 120]],
+ [[28, 30, 30, 30], [28, 14, 45, 38], [4, 28, 52, 76, 100, 124]],
+ [[28, 30, 30, 30], [29, 15, 48, 40], [4, 24, 50, 76, 102, 128]],
+ [[28, 30, 30, 30], [31, 16, 51, 43], [4, 28, 54, 80, 106, 132]],
+ [[28, 30, 30, 30], [33, 17, 54, 45], [4, 32, 58, 84, 110, 136]],
+ [[28, 30, 30, 30], [35, 18, 57, 48], [4, 28, 56, 84, 112, 140]],
+ [[28, 30, 30, 30], [37, 19, 60, 51], [4, 32, 60, 88, 116, 144]],
+ [[28, 30, 30, 30], [38, 19, 63, 53], [4, 28, 52, 76, 100, 124, 148]],
+ [[28, 30, 30, 30], [40, 20, 66, 56], [4, 22, 48, 74, 100, 126, 152]],
+ [[28, 30, 30, 30], [43, 21, 70, 59], [4, 26, 52, 78, 104, 130, 156]],
+ [[28, 30, 30, 30], [45, 22, 74, 62], [4, 30, 56, 82, 108, 134, 160]],
+ [[28, 30, 30, 30], [47, 24, 77, 65], [4, 24, 52, 80, 108, 136, 164]],
+ [[28, 30, 30, 30], [49, 25, 81, 68], [4, 28, 56, 84, 112, 140, 168]]];
+
+// mode constants (cf. Table 2 in JIS X 0510:2004 p. 16)
+var MODE_TERMINATOR = 0;
+var MODE_NUMERIC = 1, MODE_ALPHANUMERIC = 2, MODE_OCTET = 4, MODE_KANJI = 8;
+
+// validation regexps
+var NUMERIC_REGEXP = /^\d*$/;
+var ALPHANUMERIC_REGEXP = /^[A-Za-z0-9 $%*+\-./:]*$/;
+var ALPHANUMERIC_OUT_REGEXP = /^[A-Z0-9 $%*+\-./:]*$/;
+
+// ECC levels (cf. Table 22 in JIS X 0510:2004 p. 45)
+var ECCLEVEL_L = 1, ECCLEVEL_M = 0, ECCLEVEL_Q = 3, ECCLEVEL_H = 2;
+
+// GF(2^8)-to-integer mapping with a reducing polynomial x^8+x^4+x^3+x^2+1
+// invariant: GF256_MAP[GF256_INVMAP[i]] == i for all i in [1,256)
+var GF256_MAP = [], GF256_INVMAP = [-1];
+for (var i = 0, v = 1; i < 255; ++i) {
+ GF256_MAP.push(v);
+ GF256_INVMAP[v] = i;
+ v = (v * 2) ^ (v >= 128 ? 0x11d : 0);
+}
+
+// generator polynomials up to degree 30
+// (should match with polynomials in JIS X 0510:2004 Appendix A)
+//
+// generator polynomial of degree K is product of (x-\alpha^0), (x-\alpha^1),
+// ..., (x-\alpha^(K-1)). by convention, we omit the K-th coefficient (always 1)
+// from the result; also other coefficients are written in terms of the exponent
+// to \alpha to avoid the redundant calculation. (see also calculateecc below.)
+var GF256_GENPOLY = [[]];
+for (var i = 0; i < 30; ++i) {
+ var prevpoly = GF256_GENPOLY[i], poly = [];
+ for (var j = 0; j <= i; ++j) {
+ var a = (j < i ? GF256_MAP[prevpoly[j]] : 0);
+ var b = GF256_MAP[(i + (prevpoly[j - 1] || 0)) % 255];
+ poly.push(GF256_INVMAP[a ^ b]);
+ }
+ GF256_GENPOLY.push(poly);
+}
+
+// alphanumeric character mapping (cf. Table 5 in JIS X 0510:2004 p. 19)
+var ALPHANUMERIC_MAP = {};
+for (var i = 0; i < 45; ++i) {
+ ALPHANUMERIC_MAP['0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:'.charAt(i)] = i;
+}
+
+// mask functions in terms of row # and column #
+// (cf. Table 20 in JIS X 0510:2004 p. 42)
+/*jshint unused: false */
+var MASKFUNCS = [
+ function (i, j) {
+ return (i + j) % 2 === 0;
+ },
+ function (i, j) {
+ return i % 2 === 0;
+ },
+ function (i, j) {
+ return j % 3 === 0;
+ },
+ function (i, j) {
+ return (i + j) % 3 === 0;
+ },
+ function (i, j) {
+ return (((i / 2) | 0) + ((j / 3) | 0)) % 2 === 0;
+ },
+ function (i, j) {
+ return (i * j) % 2 + (i * j) % 3 === 0;
+ },
+ function (i, j) {
+ return ((i * j) % 2 + (i * j) % 3) % 2 === 0;
+ },
+ function (i, j) {
+ return ((i + j) % 2 + (i * j) % 3) % 2 === 0;
+ }];
+
+// returns true when the version information has to be embeded.
+var needsverinfo = function (ver) {
+ return ver > 6;
+};
+
+// returns the size of entire QR code for given version.
+var getsizebyver = function (ver) {
+ return 4 * ver + 17;
+};
+
+// returns the number of bits available for code words in this version.
+var nfullbits = function (ver) {
+ /*
+ * |<--------------- n --------------->|
+ * | |<----- n-17 ---->| |
+ * +-------+ ///+-------+ ----
+ * | | ///| | ^
+ * | 9x9 | @@@@@ ///| 9x8 | |
+ * | | # # # @5x5@ # # # | | |
+ * +-------+ @@@@@ +-------+ |
+ * # ---|
+ * ^ |
+ * # |
+ * @@@@@ @@@@@ @@@@@ | n
+ * @5x5@ @5x5@ @5x5@ n-17
+ * @@@@@ @@@@@ @@@@@ | |
+ * # | |
+ * ////// v |
+ * //////# ---|
+ * +-------+ @@@@@ @@@@@ |
+ * | | @5x5@ @5x5@ |
+ * | 8x9 | @@@@@ @@@@@ |
+ * | | v
+ * +-------+ ----
+ *
+ * when the entire code has n^2 modules and there are m^2-3 alignment
+ * patterns, we have:
+ * - 225 (= 9x9 + 9x8 + 8x9) modules for finder patterns and
+ * format information;
+ * - 2n-34 (= 2(n-17)) modules for timing patterns;
+ * - 36 (= 3x6 + 6x3) modules for version information, if any;
+ * - 25m^2-75 (= (m^2-3)(5x5)) modules for alignment patterns
+ * if any, but 10m-20 (= 2(m-2)x5) of them overlaps with
+ * timing patterns.
+ */
+ var v = VERSIONS[ver];
+ var nbits = 16 * ver * ver + 128 * ver + 64; // finder, timing and format info.
+ if (needsverinfo(ver))
+ nbits -= 36; // version information
+ if (v[2].length) { // alignment patterns
+ nbits -= 25 * v[2].length * v[2].length - 10 * v[2].length - 55;
+ }
+ return nbits;
+};
+
+// returns the number of bits available for data portions (i.e. excludes ECC
+// bits but includes mode and length bits) in this version and ECC level.
+var ndatabits = function (ver, ecclevel) {
+ var nbits = nfullbits(ver) & ~7; // no sub-octet code words
+ var v = VERSIONS[ver];
+ nbits -= 8 * v[0][ecclevel] * v[1][ecclevel]; // ecc bits
+ return nbits;
+};
+
+// returns the number of bits required for the length of data.
+// (cf. Table 3 in JIS X 0510:2004 p. 16)
+var ndatalenbits = function (ver, mode) {
+ switch (mode) {
+ case MODE_NUMERIC:
+ return (ver < 10 ? 10 : ver < 27 ? 12 : 14);
+ case MODE_ALPHANUMERIC:
+ return (ver < 10 ? 9 : ver < 27 ? 11 : 13);
+ case MODE_OCTET:
+ return (ver < 10 ? 8 : 16);
+ case MODE_KANJI:
+ return (ver < 10 ? 8 : ver < 27 ? 10 : 12);
+ }
+};
+
+// returns the maximum length of data possible in given configuration.
+var getmaxdatalen = function (ver, mode, ecclevel) {
+ var nbits = ndatabits(ver, ecclevel) - 4 - ndatalenbits(ver, mode); // 4 for mode bits
+ switch (mode) {
+ case MODE_NUMERIC:
+ return ((nbits / 10) | 0) * 3 + (nbits % 10 < 4 ? 0 : nbits % 10 < 7 ? 1 : 2);
+ case MODE_ALPHANUMERIC:
+ return ((nbits / 11) | 0) * 2 + (nbits % 11 < 6 ? 0 : 1);
+ case MODE_OCTET:
+ return (nbits / 8) | 0;
+ case MODE_KANJI:
+ return (nbits / 13) | 0;
+ }
+};
+
+// checks if the given data can be encoded in given mode, and returns
+// the converted data for the further processing if possible. otherwise
+// returns null.
+//
+// this function does not check the length of data; it is a duty of
+// encode function below (as it depends on the version and ECC level too).
+var validatedata = function (mode, data) {
+ switch (mode) {
+ case MODE_NUMERIC:
+ if (!data.match(NUMERIC_REGEXP))
+ return null;
+ return data;
+
+ case MODE_ALPHANUMERIC:
+ if (!data.match(ALPHANUMERIC_REGEXP))
+ return null;
+ return data.toUpperCase();
+
+ case MODE_OCTET:
+ if (typeof data === 'string') { // encode as utf-8 string
+ var newdata = [];
+ for (var i = 0; i < data.length; ++i) {
+ var ch = data.charCodeAt(i);
+ if (ch < 0x80) {
+ newdata.push(ch);
+ } else if (ch < 0x800) {
+ newdata.push(0xc0 | (ch >> 6),
+ 0x80 | (ch & 0x3f));
+ } else if (ch < 0x10000) {
+ newdata.push(0xe0 | (ch >> 12),
+ 0x80 | ((ch >> 6) & 0x3f),
+ 0x80 | (ch & 0x3f));
+ } else {
+ newdata.push(0xf0 | (ch >> 18),
+ 0x80 | ((ch >> 12) & 0x3f),
+ 0x80 | ((ch >> 6) & 0x3f),
+ 0x80 | (ch & 0x3f));
+ }
+ }
+ return newdata;
+ } else {
+ return data;
+ }
+ }
+};
+
+// returns the code words (sans ECC bits) for given data and configurations.
+// requires data to be preprocessed by validatedata. no length check is
+// performed, and everything has to be checked before calling this function.
+var encode = function (ver, mode, data, maxbuflen) {
+ var buf = [];
+ var bits = 0, remaining = 8;
+ var datalen = data.length;
+
+ // this function is intentionally no-op when n=0.
+ var pack = function (x, n) {
+ if (n >= remaining) {
+ buf.push(bits | (x >> (n -= remaining)));
+ while (n >= 8)
+ buf.push((x >> (n -= 8)) & 255);
+ bits = 0;
+ remaining = 8;
+ }
+ if (n > 0)
+ bits |= (x & ((1 << n) - 1)) << (remaining -= n);
+ };
+
+ var nlenbits = ndatalenbits(ver, mode);
+ pack(mode, 4);
+ pack(datalen, nlenbits);
+
+ switch (mode) {
+ case MODE_NUMERIC:
+ for (var i = 2; i < datalen; i += 3) {
+ pack(parseInt(data.substring(i - 2, i + 1), 10), 10);
+ }
+ pack(parseInt(data.substring(i - 2), 10), [0, 4, 7][datalen % 3]);
+ break;
+
+ case MODE_ALPHANUMERIC:
+ for (var i = 1; i < datalen; i += 2) {
+ pack(ALPHANUMERIC_MAP[data.charAt(i - 1)] * 45 +
+ ALPHANUMERIC_MAP[data.charAt(i)], 11);
+ }
+ if (datalen % 2 == 1) {
+ pack(ALPHANUMERIC_MAP[data.charAt(i - 1)], 6);
+ }
+ break;
+
+ case MODE_OCTET:
+ for (var i = 0; i < datalen; ++i) {
+ pack(data[i], 8);
+ }
+ break;
+ }
+
+ // final bits. it is possible that adding terminator causes the buffer
+ // to overflow, but then the buffer truncated to the maximum size will
+ // be valid as the truncated terminator mode bits and padding is
+ // identical in appearance (cf. JIS X 0510:2004 sec 8.4.8).
+ pack(MODE_TERMINATOR, 4);
+ if (remaining < 8)
+ buf.push(bits);
+
+ // the padding to fill up the remaining space. we should not add any
+ // words when the overflow already occurred.
+ while (buf.length + 1 < maxbuflen)
+ buf.push(0xec, 0x11);
+ if (buf.length < maxbuflen)
+ buf.push(0xec);
+ return buf;
+};
+
+// calculates ECC code words for given code words and generator polynomial.
+//
+// this is quite similar to CRC calculation as both Reed-Solomon and CRC use
+// the certain kind of cyclic codes, which is effectively the division of
+// zero-augumented polynomial by the generator polynomial. the only difference
+// is that Reed-Solomon uses GF(2^8), instead of CRC's GF(2), and Reed-Solomon
+// uses the different generator polynomial than CRC's.
+var calculateecc = function (poly, genpoly) {
+ var modulus = poly.slice(0);
+ var polylen = poly.length, genpolylen = genpoly.length;
+ for (var i = 0; i < genpolylen; ++i)
+ modulus.push(0);
+ for (var i = 0; i < polylen; ) {
+ var quotient = GF256_INVMAP[modulus[i++]];
+ if (quotient >= 0) {
+ for (var j = 0; j < genpolylen; ++j) {
+ modulus[i + j] ^= GF256_MAP[(quotient + genpoly[j]) % 255];
+ }
+ }
+ }
+ return modulus.slice(polylen);
+};
+
+// auguments ECC code words to given code words. the resulting words are
+// ready to be encoded in the matrix.
+//
+// the much of actual augumenting procedure follows JIS X 0510:2004 sec 8.7.
+// the code is simplified using the fact that the size of each code & ECC
+// blocks is almost same; for example, when we have 4 blocks and 46 data words
+// the number of code words in those blocks are 11, 11, 12, 12 respectively.
+var augumenteccs = function (poly, nblocks, genpoly) {
+ var subsizes = [];
+ var subsize = (poly.length / nblocks) | 0, subsize0 = 0;
+ var pivot = nblocks - poly.length % nblocks;
+ for (var i = 0; i < pivot; ++i) {
+ subsizes.push(subsize0);
+ subsize0 += subsize;
+ }
+ for (var i = pivot; i < nblocks; ++i) {
+ subsizes.push(subsize0);
+ subsize0 += subsize + 1;
+ }
+ subsizes.push(subsize0);
+
+ var eccs = [];
+ for (var i = 0; i < nblocks; ++i) {
+ eccs.push(calculateecc(poly.slice(subsizes[i], subsizes[i + 1]), genpoly));
+ }
+
+ var result = [];
+ var nitemsperblock = (poly.length / nblocks) | 0;
+ for (var i = 0; i < nitemsperblock; ++i) {
+ for (var j = 0; j < nblocks; ++j) {
+ result.push(poly[subsizes[j] + i]);
+ }
+ }
+ for (var j = pivot; j < nblocks; ++j) {
+ result.push(poly[subsizes[j + 1] - 1]);
+ }
+ for (var i = 0; i < genpoly.length; ++i) {
+ for (var j = 0; j < nblocks; ++j) {
+ result.push(eccs[j][i]);
+ }
+ }
+ return result;
+};
+
+// auguments BCH(p+q,q) code to the polynomial over GF(2), given the proper
+// genpoly. the both input and output are in binary numbers, and unlike
+// calculateecc genpoly should include the 1 bit for the highest degree.
+//
+// actual polynomials used for this procedure are as follows:
+// - p=10, q=5, genpoly=x^10+x^8+x^5+x^4+x^2+x+1 (JIS X 0510:2004 Appendix C)
+// - p=18, q=6, genpoly=x^12+x^11+x^10+x^9+x^8+x^5+x^2+1 (ibid. Appendix D)
+var augumentbch = function (poly, p, genpoly, q) {
+ var modulus = poly << q;
+ for (var i = p - 1; i >= 0; --i) {
+ if ((modulus >> (q + i)) & 1)
+ modulus ^= genpoly << i;
+ }
+ return (poly << q) | modulus;
+};
+
+// creates the base matrix for given version. it returns two matrices, one of
+// them is the actual one and the another represents the "reserved" portion
+// (e.g. finder and timing patterns) of the matrix.
+//
+// some entries in the matrix may be undefined, rather than 0 or 1. this is
+// intentional (no initialization needed!), and putdata below will fill
+// the remaining ones.
+var makebasematrix = function (ver) {
+ var v = VERSIONS[ver], n = getsizebyver(ver);
+ var matrix = [], reserved = [];
+ for (var i = 0; i < n; ++i) {
+ matrix.push([]);
+ reserved.push([]);
+ }
+
+ var blit = function (y, x, h, w, bits) {
+ for (var i = 0; i < h; ++i) {
+ for (var j = 0; j < w; ++j) {
+ matrix[y + i][x + j] = (bits[i] >> j) & 1;
+ reserved[y + i][x + j] = 1;
+ }
+ }
+ };
+
+ // finder patterns and a part of timing patterns
+ // will also mark the format information area (not yet written) as reserved.
+ blit(0, 0, 9, 9, [0x7f, 0x41, 0x5d, 0x5d, 0x5d, 0x41, 0x17f, 0x00, 0x40]);
+ blit(n - 8, 0, 8, 9, [0x100, 0x7f, 0x41, 0x5d, 0x5d, 0x5d, 0x41, 0x7f]);
+ blit(0, n - 8, 9, 8, [0xfe, 0x82, 0xba, 0xba, 0xba, 0x82, 0xfe, 0x00, 0x00]);
+
+ // the rest of timing patterns
+ for (var i = 9; i < n - 8; ++i) {
+ matrix[6][i] = matrix[i][6] = ~i & 1;
+ reserved[6][i] = reserved[i][6] = 1;
+ }
+
+ // alignment patterns
+ var aligns = v[2], m = aligns.length;
+ for (var i = 0; i < m; ++i) {
+ var minj = (i === 0 || i === m - 1 ? 1 : 0), maxj = (i === 0 ? m - 1 : m);
+ for (var j = minj; j < maxj; ++j) {
+ blit(aligns[i], aligns[j], 5, 5, [0x1f, 0x11, 0x15, 0x11, 0x1f]);
+ }
+ }
+
+ // version information
+ if (needsverinfo(ver)) {
+ var code = augumentbch(ver, 6, 0x1f25, 12);
+ var k = 0;
+ for (var i = 0; i < 6; ++i) {
+ for (var j = 0; j < 3; ++j) {
+ matrix[i][(n - 11) + j] = matrix[(n - 11) + j][i] = (code >> k++) & 1;
+ reserved[i][(n - 11) + j] = reserved[(n - 11) + j][i] = 1;
+ }
+ }
+ }
+
+ return {matrix: matrix, reserved: reserved};
+};
+
+// fills the data portion (i.e. unmarked in reserved) of the matrix with given
+// code words. the size of code words should be no more than available bits,
+// and remaining bits are padded to 0 (cf. JIS X 0510:2004 sec 8.7.3).
+var putdata = function (matrix, reserved, buf) {
+ var n = matrix.length;
+ var k = 0, dir = -1;
+ for (var i = n - 1; i >= 0; i -= 2) {
+ if (i == 6)
+ --i; // skip the entire timing pattern column
+ var jj = (dir < 0 ? n - 1 : 0);
+ for (var j = 0; j < n; ++j) {
+ for (var ii = i; ii > i - 2; --ii) {
+ if (!reserved[jj][ii]) {
+ // may overflow, but (undefined >> x)
+ // is 0 so it will auto-pad to zero.
+ matrix[jj][ii] = (buf[k >> 3] >> (~k & 7)) & 1;
+ ++k;
+ }
+ }
+ jj += dir;
+ }
+ dir = -dir;
+ }
+ return matrix;
+};
+
+// XOR-masks the data portion of the matrix. repeating the call with the same
+// arguments will revert the prior call (convenient in the matrix evaluation).
+var maskdata = function (matrix, reserved, mask) {
+ var maskf = MASKFUNCS[mask];
+ var n = matrix.length;
+ for (var i = 0; i < n; ++i) {
+ for (var j = 0; j < n; ++j) {
+ if (!reserved[i][j])
+ matrix[i][j] ^= maskf(i, j);
+ }
+ }
+ return matrix;
+};
+
+// puts the format information.
+var putformatinfo = function (matrix, reserved, ecclevel, mask) {
+ var n = matrix.length;
+ var code = augumentbch((ecclevel << 3) | mask, 5, 0x537, 10) ^ 0x5412;
+ for (var i = 0; i < 15; ++i) {
+ var r = [0, 1, 2, 3, 4, 5, 7, 8, n - 7, n - 6, n - 5, n - 4, n - 3, n - 2, n - 1][i];
+ var c = [n - 1, n - 2, n - 3, n - 4, n - 5, n - 6, n - 7, n - 8, 7, 5, 4, 3, 2, 1, 0][i];
+ matrix[r][8] = matrix[8][c] = (code >> i) & 1;
+ // we don't have to mark those bits reserved; always done
+ // in makebasematrix above.
+ }
+ return matrix;
+};
+
+// evaluates the resulting matrix and returns the score (lower is better).
+// (cf. JIS X 0510:2004 sec 8.8.2)
+//
+// the evaluation procedure tries to avoid the problematic patterns naturally
+// occuring from the original matrix. for example, it penaltizes the patterns
+// which just look like the finder pattern which will confuse the decoder.
+// we choose the mask which results in the lowest score among 8 possible ones.
+//
+// note: zxing seems to use the same procedure and in many cases its choice
+// agrees to ours, but sometimes it does not. practically it doesn't matter.
+var evaluatematrix = function (matrix) {
+ // N1+(k-5) points for each consecutive row of k same-colored modules,
+ // where k >= 5. no overlapping row counts.
+ var PENALTY_CONSECUTIVE = 3;
+ // N2 points for each 2x2 block of same-colored modules.
+ // overlapping block does count.
+ var PENALTY_TWOBYTWO = 3;
+ // N3 points for each pattern with >4W:1B:1W:3B:1W:1B or
+ // 1B:1W:3B:1W:1B:>4W, or their multiples (e.g. highly unlikely,
+ // but 13W:3B:3W:9B:3W:3B counts).
+ var PENALTY_FINDERLIKE = 40;
+ // N4*k points for every (5*k)% deviation from 50% black density.
+ // i.e. k=1 for 55~60% and 40~45%, k=2 for 60~65% and 35~40%, etc.
+ var PENALTY_DENSITY = 10;
+
+ var evaluategroup = function (groups) { // assumes [W,B,W,B,W,...,B,W]
+ var score = 0;
+ for (var i = 0; i < groups.length; ++i) {
+ if (groups[i] >= 5)
+ score += PENALTY_CONSECUTIVE + (groups[i] - 5);
+ }
+ for (var i = 5; i < groups.length; i += 2) {
+ var p = groups[i];
+ if (groups[i - 1] == p && groups[i - 2] == 3 * p && groups[i - 3] == p &&
+ groups[i - 4] == p && (groups[i - 5] >= 4 * p || groups[i + 1] >= 4 * p)) {
+ // this part differs from zxing...
+ score += PENALTY_FINDERLIKE;
+ }
+ }
+ return score;
+ };
+
+ var n = matrix.length;
+ var score = 0, nblacks = 0;
+ for (var i = 0; i < n; ++i) {
+ var row = matrix[i];
+ var groups;
+
+ // evaluate the current row
+ groups = [0]; // the first empty group of white
+ for (var j = 0; j < n; ) {
+ var k;
+ for (k = 0; j < n && row[j]; ++k)
+ ++j;
+ groups.push(k);
+ for (k = 0; j < n && !row[j]; ++k)
+ ++j;
+ groups.push(k);
+ }
+ score += evaluategroup(groups);
+
+ // evaluate the current column
+ groups = [0];
+ for (var j = 0; j < n; ) {
+ var k;
+ for (k = 0; j < n && matrix[j][i]; ++k)
+ ++j;
+ groups.push(k);
+ for (k = 0; j < n && !matrix[j][i]; ++k)
+ ++j;
+ groups.push(k);
+ }
+ score += evaluategroup(groups);
+
+ // check the 2x2 box and calculate the density
+ var nextrow = matrix[i + 1] || [];
+ nblacks += row[0];
+ for (var j = 1; j < n; ++j) {
+ var p = row[j];
+ nblacks += p;
+ // at least comparison with next row should be strict...
+ if (row[j - 1] == p && nextrow[j] === p && nextrow[j - 1] === p) {
+ score += PENALTY_TWOBYTWO;
+ }
+ }
+ }
+
+ score += PENALTY_DENSITY * ((Math.abs(nblacks / n / n - 0.5) / 0.05) | 0);
+ return score;
+};
+
+// returns the fully encoded QR code matrix which contains given data.
+// it also chooses the best mask automatically when mask is -1.
+var generate = function (data, ver, mode, ecclevel, mask) {
+ var v = VERSIONS[ver];
+ var buf = encode(ver, mode, data, ndatabits(ver, ecclevel) >> 3);
+ buf = augumenteccs(buf, v[1][ecclevel], GF256_GENPOLY[v[0][ecclevel]]);
+
+ var result = makebasematrix(ver);
+ var matrix = result.matrix, reserved = result.reserved;
+ putdata(matrix, reserved, buf);
+
+ if (mask < 0) {
+ // find the best mask
+ maskdata(matrix, reserved, 0);
+ putformatinfo(matrix, reserved, ecclevel, 0);
+ var bestmask = 0, bestscore = evaluatematrix(matrix);
+ maskdata(matrix, reserved, 0);
+ for (mask = 1; mask < 8; ++mask) {
+ maskdata(matrix, reserved, mask);
+ putformatinfo(matrix, reserved, ecclevel, mask);
+ var score = evaluatematrix(matrix);
+ if (bestscore > score) {
+ bestscore = score;
+ bestmask = mask;
+ }
+ maskdata(matrix, reserved, mask);
+ }
+ mask = bestmask;
+ }
+
+ maskdata(matrix, reserved, mask);
+ putformatinfo(matrix, reserved, ecclevel, mask);
+ return matrix;
+};
+
+// the public interface is trivial; the options available are as follows:
+//
+// - version: an integer in [1,40]. when omitted (or -1) the smallest possible
+// version is chosen.
+// - mode: one of 'numeric', 'alphanumeric', 'octet'. when omitted the smallest
+// possible mode is chosen.
+// - eccLevel: one of 'L', 'M', 'Q', 'H'. defaults to 'L'.
+// - mask: an integer in [0,7]. when omitted (or -1) the best mask is chosen.
+//
+
+function generateFrame(data, options) {
+ var MODES = {'numeric': MODE_NUMERIC, 'alphanumeric': MODE_ALPHANUMERIC,
+ 'octet': MODE_OCTET};
+ var ECCLEVELS = {'L': ECCLEVEL_L, 'M': ECCLEVEL_M, 'Q': ECCLEVEL_Q,
+ 'H': ECCLEVEL_H};
+
+ options = options || {};
+ var ver = options.version || -1;
+ var ecclevel = ECCLEVELS[(options.eccLevel || 'L').toUpperCase()];
+ var mode = options.mode ? MODES[options.mode.toLowerCase()] : -1;
+ var mask = 'mask' in options ? options.mask : -1;
+
+ if (mode < 0) {
+ if (typeof data === 'string') {
+ if (data.match(NUMERIC_REGEXP)) {
+ mode = MODE_NUMERIC;
+ } else if (data.match(ALPHANUMERIC_OUT_REGEXP)) {
+ // while encode supports case-insensitive encoding, we restrict the data to be uppercased when auto-selecting the mode.
+ mode = MODE_ALPHANUMERIC;
+ } else {
+ mode = MODE_OCTET;
+ }
+ } else {
+ mode = MODE_OCTET;
+ }
+ } else if (!(mode == MODE_NUMERIC || mode == MODE_ALPHANUMERIC ||
+ mode == MODE_OCTET)) {
+ throw 'invalid or unsupported mode';
+ }
+
+ data = validatedata(mode, data);
+ if (data === null)
+ throw 'invalid data format';
+
+ if (ecclevel < 0 || ecclevel > 3)
+ throw 'invalid ECC level';
+
+ if (ver < 0) {
+ for (ver = 1; ver <= 40; ++ver) {
+ if (data.length <= getmaxdatalen(ver, mode, ecclevel))
+ break;
+ }
+ if (ver > 40)
+ throw 'too large data for the Qr format';
+ } else if (ver < 1 || ver > 40) {
+ throw 'invalid Qr version! should be between 1 and 40';
+ }
+
+ if (mask != -1 && (mask < 0 || mask > 8))
+ throw 'invalid mask';
+ //console.log('version:', ver, 'mode:', mode, 'ECC:', ecclevel, 'mask:', mask )
+ return generate(data, ver, mode, ecclevel, mask);
+}
+
+
+// options
+// - modulesize: a number. this is a size of each modules in pixels, and
+// defaults to 5px.
+// - margin: a number. this is a size of margin in *modules*, and defaults to
+// 4 (white modules). the specficiation mandates the margin no less than 4
+// modules, so it is better not to alter this value unless you know what
+// you're doing.
+function buildCanvas(data, options) {
+
+ var canvas = [];
+ var background = options.background || '#fff';
+ var foreground = options.foreground || '#000';
+ //var margin = options.margin || 4;
+ var matrix = generateFrame(data, options);
+ var n = matrix.length;
+ var modSize = Math.floor(options.fit ? options.fit / n : 5);
+ var size = n * modSize;
+
+ canvas.push({
+ type: 'rect',
+ x: 0, y: 0, w: size, h: size, lineWidth: 0, color: background
+ });
+
+ for (var i = 0; i < n; ++i) {
+ for (var j = 0; j < n; ++j) {
+ if (matrix[i][j]) {
+ canvas.push({
+ type: 'rect',
+ x: modSize * j,
+ y: modSize * i,
+ w: modSize,
+ h: modSize,
+ lineWidth: 0,
+ color: foreground
+ });
+ }
+ }
+ }
+
+ return {
+ canvas: canvas,
+ size: size
+ };
+
+}
+
+function measure(node) {
+ var cd = buildCanvas(node.qr, node);
+ node._canvas = cd.canvas;
+ node._width = node._height = node._minWidth = node._maxWidth = node._minHeight = node._maxHeight = cd.size;
+ return node;
+}
+
+module.exports = {
+ measure: measure
};
/***/ }),
-/* 449 */
+/* 544 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-var isUndefined = __webpack_require__(0).isUndefined;
-var ElementWriter = __webpack_require__(450);
-
-/**
- * Creates an instance of PageElementWriter - an extended ElementWriter
- * which can handle:
- * - page-breaks (it adds new pages when there's not enough space left),
- * - repeatable fragments (like table-headers, which are repeated everytime
- * a page-break occurs)
- * - transactions (used for unbreakable-blocks when we want to make sure
- * whole block will be rendered on the same page)
- */
-function PageElementWriter(context, tracker) {
- this.transactionLevel = 0;
- this.repeatables = [];
- this.tracker = tracker;
- this.writer = new ElementWriter(context, tracker);
-}
-
-function fitOnPage(self, addFct) {
- var position = addFct(self);
- if (!position) {
- self.moveToNextPage();
- position = addFct(self);
- }
- return position;
-}
-
-PageElementWriter.prototype.addLine = function (line, dontUpdateContextPosition, index) {
- return fitOnPage(this, function (self) {
- return self.writer.addLine(line, dontUpdateContextPosition, index);
- });
-};
-
-PageElementWriter.prototype.addImage = function (image, index) {
- return fitOnPage(this, function (self) {
- return self.writer.addImage(image, index);
- });
-};
-
-PageElementWriter.prototype.addSVG = function (image, index) {
- return fitOnPage(this, function (self) {
- return self.writer.addSVG(image, index);
- });
-};
-
-PageElementWriter.prototype.addQr = function (qr, index) {
- return fitOnPage(this, function (self) {
- return self.writer.addQr(qr, index);
- });
-};
-
-PageElementWriter.prototype.addVector = function (vector, ignoreContextX, ignoreContextY, index) {
- return this.writer.addVector(vector, ignoreContextX, ignoreContextY, index);
-};
-
-PageElementWriter.prototype.beginClip = function (width, height) {
- return this.writer.beginClip(width, height);
-};
-
-PageElementWriter.prototype.endClip = function () {
- return this.writer.endClip();
-};
-
-PageElementWriter.prototype.alignCanvas = function (node) {
- this.writer.alignCanvas(node);
-};
-
-PageElementWriter.prototype.addFragment = function (fragment, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition) {
- if (!this.writer.addFragment(fragment, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition)) {
- this.moveToNextPage();
- this.writer.addFragment(fragment, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition);
- }
-};
-
-PageElementWriter.prototype.moveToNextPage = function (pageOrientation) {
-
- var nextPage = this.writer.context.moveToNextPage(pageOrientation);
-
- // moveToNextPage is called multiple times for table, because is called for each column
- // and repeatables are inserted only in the first time. If columns are used, is needed
- // call for table in first column and then for table in the second column (is other repeatables).
- this.repeatables.forEach(function (rep) {
- if (isUndefined(rep.insertedOnPages[this.writer.context.page])) {
- rep.insertedOnPages[this.writer.context.page] = true;
- this.writer.addFragment(rep, true);
- } else {
- this.writer.context.moveDown(rep.height);
- }
- }, this);
-
- this.writer.tracker.emit('pageChanged', {
- prevPage: nextPage.prevPage,
- prevY: nextPage.prevY,
- y: this.writer.context.y
- });
-};
-
-PageElementWriter.prototype.beginUnbreakableBlock = function (width, height) {
- if (this.transactionLevel++ === 0) {
- this.originalX = this.writer.context.x;
- this.writer.pushContext(width, height);
- }
-};
-
-PageElementWriter.prototype.commitUnbreakableBlock = function (forcedX, forcedY) {
- if (--this.transactionLevel === 0) {
- var unbreakableContext = this.writer.context;
- this.writer.popContext();
-
- var nbPages = unbreakableContext.pages.length;
- if (nbPages > 0) {
- // no support for multi-page unbreakableBlocks
- var fragment = unbreakableContext.pages[0];
- fragment.xOffset = forcedX;
- fragment.yOffset = forcedY;
-
- //TODO: vectors can influence height in some situations
- if (nbPages > 1) {
- // on out-of-context blocs (headers, footers, background) height should be the whole DocumentContext height
- if (forcedX !== undefined || forcedY !== undefined) {
- fragment.height = unbreakableContext.getCurrentPage().pageSize.height - unbreakableContext.pageMargins.top - unbreakableContext.pageMargins.bottom;
- } else {
- fragment.height = this.writer.context.getCurrentPage().pageSize.height - this.writer.context.pageMargins.top - this.writer.context.pageMargins.bottom;
- for (var i = 0, l = this.repeatables.length; i < l; i++) {
- fragment.height -= this.repeatables[i].height;
- }
- }
- } else {
- fragment.height = unbreakableContext.y;
- }
-
- if (forcedX !== undefined || forcedY !== undefined) {
- this.writer.addFragment(fragment, true, true, true);
- } else {
- this.addFragment(fragment);
- }
- }
- }
-};
-
-PageElementWriter.prototype.currentBlockToRepeatable = function () {
- var unbreakableContext = this.writer.context;
- var rep = { items: [] };
-
- unbreakableContext.pages[0].items.forEach(function (item) {
- rep.items.push(item);
- });
-
- rep.xOffset = this.originalX;
-
- //TODO: vectors can influence height in some situations
- rep.height = unbreakableContext.y;
-
- rep.insertedOnPages = [];
-
- return rep;
-};
-
-PageElementWriter.prototype.pushToRepeatables = function (rep) {
- this.repeatables.push(rep);
-};
-
-PageElementWriter.prototype.popFromRepeatables = function () {
- this.repeatables.pop();
-};
-
-PageElementWriter.prototype.context = function () {
- return this.writer.context;
-};
-
-module.exports = PageElementWriter;
+
+
+var isUndefined = __webpack_require__(0).isUndefined;
+var ElementWriter = __webpack_require__(545);
+
+/**
+ * Creates an instance of PageElementWriter - an extended ElementWriter
+ * which can handle:
+ * - page-breaks (it adds new pages when there's not enough space left),
+ * - repeatable fragments (like table-headers, which are repeated everytime
+ * a page-break occurs)
+ * - transactions (used for unbreakable-blocks when we want to make sure
+ * whole block will be rendered on the same page)
+ */
+function PageElementWriter(context, tracker) {
+ this.transactionLevel = 0;
+ this.repeatables = [];
+ this.tracker = tracker;
+ this.writer = new ElementWriter(context, tracker);
+}
+
+function fitOnPage(self, addFct) {
+ var position = addFct(self);
+ if (!position) {
+ self.moveToNextPage();
+ position = addFct(self);
+ }
+ return position;
+}
+
+PageElementWriter.prototype.addLine = function (line, dontUpdateContextPosition, index) {
+ return fitOnPage(this, function (self) {
+ return self.writer.addLine(line, dontUpdateContextPosition, index);
+ });
+};
+
+PageElementWriter.prototype.addImage = function (image, index) {
+ return fitOnPage(this, function (self) {
+ return self.writer.addImage(image, index);
+ });
+};
+
+PageElementWriter.prototype.addSVG = function (image, index) {
+ return fitOnPage(this, function (self) {
+ return self.writer.addSVG(image, index);
+ });
+};
+
+PageElementWriter.prototype.addQr = function (qr, index) {
+ return fitOnPage(this, function (self) {
+ return self.writer.addQr(qr, index);
+ });
+};
+
+PageElementWriter.prototype.addVector = function (vector, ignoreContextX, ignoreContextY, index) {
+ return this.writer.addVector(vector, ignoreContextX, ignoreContextY, index);
+};
+
+PageElementWriter.prototype.beginClip = function (width, height) {
+ return this.writer.beginClip(width, height);
+};
+
+PageElementWriter.prototype.endClip = function () {
+ return this.writer.endClip();
+};
+
+PageElementWriter.prototype.alignCanvas = function (node) {
+ this.writer.alignCanvas(node);
+};
+
+PageElementWriter.prototype.addFragment = function (fragment, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition) {
+ if (!this.writer.addFragment(fragment, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition)) {
+ this.moveToNextPage();
+ this.writer.addFragment(fragment, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition);
+ }
+};
+
+PageElementWriter.prototype.moveToNextPage = function (pageOrientation) {
+
+ var nextPage = this.writer.context.moveToNextPage(pageOrientation);
+
+ // moveToNextPage is called multiple times for table, because is called for each column
+ // and repeatables are inserted only in the first time. If columns are used, is needed
+ // call for table in first column and then for table in the second column (is other repeatables).
+ this.repeatables.forEach(function (rep) {
+ if (isUndefined(rep.insertedOnPages[this.writer.context.page])) {
+ rep.insertedOnPages[this.writer.context.page] = true;
+ this.writer.addFragment(rep, true);
+ } else {
+ this.writer.context.moveDown(rep.height);
+ }
+ }, this);
+
+ this.writer.tracker.emit('pageChanged', {
+ prevPage: nextPage.prevPage,
+ prevY: nextPage.prevY,
+ y: this.writer.context.y
+ });
+};
+
+PageElementWriter.prototype.beginUnbreakableBlock = function (width, height) {
+ if (this.transactionLevel++ === 0) {
+ this.originalX = this.writer.context.x;
+ this.writer.pushContext(width, height);
+ }
+};
+
+PageElementWriter.prototype.commitUnbreakableBlock = function (forcedX, forcedY) {
+ if (--this.transactionLevel === 0) {
+ var unbreakableContext = this.writer.context;
+ this.writer.popContext();
+
+ var nbPages = unbreakableContext.pages.length;
+ if (nbPages > 0) {
+ // no support for multi-page unbreakableBlocks
+ var fragment = unbreakableContext.pages[0];
+ fragment.xOffset = forcedX;
+ fragment.yOffset = forcedY;
+
+ //TODO: vectors can influence height in some situations
+ if (nbPages > 1) {
+ // on out-of-context blocs (headers, footers, background) height should be the whole DocumentContext height
+ if (forcedX !== undefined || forcedY !== undefined) {
+ fragment.height = unbreakableContext.getCurrentPage().pageSize.height - unbreakableContext.pageMargins.top - unbreakableContext.pageMargins.bottom;
+ } else {
+ fragment.height = this.writer.context.getCurrentPage().pageSize.height - this.writer.context.pageMargins.top - this.writer.context.pageMargins.bottom;
+ for (var i = 0, l = this.repeatables.length; i < l; i++) {
+ fragment.height -= this.repeatables[i].height;
+ }
+ }
+ } else {
+ fragment.height = unbreakableContext.y;
+ }
+
+ if (forcedX !== undefined || forcedY !== undefined) {
+ this.writer.addFragment(fragment, true, true, true);
+ } else {
+ this.addFragment(fragment);
+ }
+ }
+ }
+};
+
+PageElementWriter.prototype.currentBlockToRepeatable = function () {
+ var unbreakableContext = this.writer.context;
+ var rep = { items: [] };
+
+ unbreakableContext.pages[0].items.forEach(function (item) {
+ rep.items.push(item);
+ });
+
+ rep.xOffset = this.originalX;
+
+ //TODO: vectors can influence height in some situations
+ rep.height = unbreakableContext.y;
+
+ rep.insertedOnPages = [];
+
+ return rep;
+};
+
+PageElementWriter.prototype.pushToRepeatables = function (rep) {
+ this.repeatables.push(rep);
+};
+
+PageElementWriter.prototype.popFromRepeatables = function () {
+ this.repeatables.pop();
+};
+
+PageElementWriter.prototype.context = function () {
+ return this.writer.context;
+};
+
+module.exports = PageElementWriter;
/***/ }),
-/* 450 */
+/* 545 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-var Line = __webpack_require__(213);
-var isNumber = __webpack_require__(0).isNumber;
-var pack = __webpack_require__(0).pack;
-var offsetVector = __webpack_require__(0).offsetVector;
-var DocumentContext = __webpack_require__(212);
-
-/**
- * Creates an instance of ElementWriter - a line/vector writer, which adds
- * elements to current page and sets their positions based on the context
- */
-function ElementWriter(context, tracker) {
- this.context = context;
- this.contextStack = [];
- this.tracker = tracker;
-}
-
-function addPageItem(page, item, index) {
- if (index === null || index === undefined || index < 0 || index > page.items.length) {
- page.items.push(item);
- } else {
- page.items.splice(index, 0, item);
- }
-}
-
-ElementWriter.prototype.addLine = function (line, dontUpdateContextPosition, index) {
- var height = line.getHeight();
- var context = this.context;
- var page = context.getCurrentPage(),
- position = this.getCurrentPositionOnPage();
-
- if (context.availableHeight < height || !page) {
- return false;
- }
-
- line.x = context.x + (line.x || 0);
- line.y = context.y + (line.y || 0);
-
- this.alignLine(line);
-
- addPageItem(page, {
- type: 'line',
- item: line
- }, index);
- this.tracker.emit('lineAdded', line);
-
- if (!dontUpdateContextPosition) {
- context.moveDown(height);
- }
-
- return position;
-};
-
-ElementWriter.prototype.alignLine = function (line) {
- var width = this.context.availableWidth;
- var lineWidth = line.getWidth();
-
- var alignment = line.inlines && line.inlines.length > 0 && line.inlines[0].alignment;
-
- var offset = 0;
- switch (alignment) {
- case 'right':
- offset = width - lineWidth;
- break;
- case 'center':
- offset = (width - lineWidth) / 2;
- break;
- }
-
- if (offset) {
- line.x = (line.x || 0) + offset;
- }
-
- if (alignment === 'justify' &&
- !line.newLineForced &&
- !line.lastLineInParagraph &&
- line.inlines.length > 1) {
- var additionalSpacing = (width - lineWidth) / (line.inlines.length - 1);
-
- for (var i = 1, l = line.inlines.length; i < l; i++) {
- offset = i * additionalSpacing;
-
- line.inlines[i].x += offset;
- line.inlines[i].justifyShift = additionalSpacing;
- }
- }
-};
-
-ElementWriter.prototype.addImage = function (image, index, type) {
- var context = this.context;
- var page = context.getCurrentPage(),
- position = this.getCurrentPositionOnPage();
-
- if (!page || (image.absolutePosition === undefined && context.availableHeight < image._height && page.items.length > 0)) {
- return false;
- }
-
- if (image._x === undefined) {
- image._x = image.x || 0;
- }
-
- image.x = context.x + image._x;
- image.y = context.y;
-
- this.alignImage(image);
-
- addPageItem(page, {
- type: type || 'image',
- item: image
- }, index);
-
- context.moveDown(image._height);
-
- return position;
-};
-
-ElementWriter.prototype.addSVG = function (image, index) {
- return this.addImage(image, index, 'svg')
-};
-
-ElementWriter.prototype.addQr = function (qr, index) {
- var context = this.context;
- var page = context.getCurrentPage(),
- position = this.getCurrentPositionOnPage();
-
- if (!page || (qr.absolutePosition === undefined && context.availableHeight < qr._height)) {
- return false;
- }
-
- if (qr._x === undefined) {
- qr._x = qr.x || 0;
- }
-
- qr.x = context.x + qr._x;
- qr.y = context.y;
-
- this.alignImage(qr);
-
- for (var i = 0, l = qr._canvas.length; i < l; i++) {
- var vector = qr._canvas[i];
- vector.x += qr.x;
- vector.y += qr.y;
- this.addVector(vector, true, true, index);
- }
-
- context.moveDown(qr._height);
-
- return position;
-};
-
-ElementWriter.prototype.alignImage = function (image) {
- var width = this.context.availableWidth;
- var imageWidth = image._minWidth;
- var offset = 0;
- switch (image._alignment) {
- case 'right':
- offset = width - imageWidth;
- break;
- case 'center':
- offset = (width - imageWidth) / 2;
- break;
- }
-
- if (offset) {
- image.x = (image.x || 0) + offset;
- }
-};
-
-ElementWriter.prototype.alignCanvas = function (node) {
- var width = this.context.availableWidth;
- var canvasWidth = node._minWidth;
- var offset = 0;
- switch (node._alignment) {
- case 'right':
- offset = width - canvasWidth;
- break;
- case 'center':
- offset = (width - canvasWidth) / 2;
- break;
- }
- if (offset) {
- node.canvas.forEach(function (vector) {
- offsetVector(vector, offset, 0);
- });
- }
-};
-
-ElementWriter.prototype.addVector = function (vector, ignoreContextX, ignoreContextY, index) {
- var context = this.context;
- var page = context.getCurrentPage(),
- position = this.getCurrentPositionOnPage();
-
- if (page) {
- offsetVector(vector, ignoreContextX ? 0 : context.x, ignoreContextY ? 0 : context.y);
- addPageItem(page, {
- type: 'vector',
- item: vector
- }, index);
- return position;
- }
-};
-
-ElementWriter.prototype.beginClip = function (width, height) {
- var ctx = this.context;
- var page = ctx.getCurrentPage();
- page.items.push({
- type: 'beginClip',
- item: { x: ctx.x, y: ctx.y, width: width, height: height }
- });
- return true;
-};
-
-ElementWriter.prototype.endClip = function () {
- var ctx = this.context;
- var page = ctx.getCurrentPage();
- page.items.push({
- type: 'endClip'
- });
- return true;
-};
-
-function cloneLine(line) {
- var result = new Line(line.maxWidth);
-
- for (var key in line) {
- if (line.hasOwnProperty(key)) {
- result[key] = line[key];
- }
- }
-
- return result;
-}
-
-ElementWriter.prototype.addFragment = function (block, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition) {
- var ctx = this.context;
- var page = ctx.getCurrentPage();
-
- if (!useBlockXOffset && block.height > ctx.availableHeight) {
- return false;
- }
-
- block.items.forEach(function (item) {
- switch (item.type) {
- case 'line':
- var l = cloneLine(item.item);
-
- if (l._node) {
- l._node.positions[0].pageNumber = ctx.page + 1;
- }
- l.x = (l.x || 0) + (useBlockXOffset ? (block.xOffset || 0) : ctx.x);
- l.y = (l.y || 0) + (useBlockYOffset ? (block.yOffset || 0) : ctx.y);
-
- page.items.push({
- type: 'line',
- item: l
- });
- break;
-
- case 'vector':
- var v = pack(item.item);
-
- offsetVector(v, useBlockXOffset ? (block.xOffset || 0) : ctx.x, useBlockYOffset ? (block.yOffset || 0) : ctx.y);
- page.items.push({
- type: 'vector',
- item: v
- });
- break;
-
- case 'image':
- case 'svg':
- var img = pack(item.item);
-
- img.x = (img.x || 0) + (useBlockXOffset ? (block.xOffset || 0) : ctx.x);
- img.y = (img.y || 0) + (useBlockYOffset ? (block.yOffset || 0) : ctx.y);
-
- page.items.push({
- type: item.type,
- item: img
- });
- break;
- }
- });
-
- if (!dontUpdateContextPosition) {
- ctx.moveDown(block.height);
- }
-
- return true;
-};
-
-/**
- * Pushes the provided context onto the stack or creates a new one
- *
- * pushContext(context) - pushes the provided context and makes it current
- * pushContext(width, height) - creates and pushes a new context with the specified width and height
- * pushContext() - creates a new context for unbreakable blocks (with current availableWidth and full-page-height)
- */
-ElementWriter.prototype.pushContext = function (contextOrWidth, height) {
- if (contextOrWidth === undefined) {
- height = this.context.getCurrentPage().height - this.context.pageMargins.top - this.context.pageMargins.bottom;
- contextOrWidth = this.context.availableWidth;
- }
-
- if (isNumber(contextOrWidth)) {
- contextOrWidth = new DocumentContext({ width: contextOrWidth, height: height }, { left: 0, right: 0, top: 0, bottom: 0 });
- }
-
- this.contextStack.push(this.context);
- this.context = contextOrWidth;
-};
-
-ElementWriter.prototype.popContext = function () {
- this.context = this.contextStack.pop();
-};
-
-ElementWriter.prototype.getCurrentPositionOnPage = function () {
- return (this.contextStack[0] || this.context).getCurrentPosition();
-};
-
-
-module.exports = ElementWriter;
+
+
+var Line = __webpack_require__(294);
+var isNumber = __webpack_require__(0).isNumber;
+var pack = __webpack_require__(0).pack;
+var offsetVector = __webpack_require__(0).offsetVector;
+var DocumentContext = __webpack_require__(293);
+
+/**
+ * Creates an instance of ElementWriter - a line/vector writer, which adds
+ * elements to current page and sets their positions based on the context
+ */
+function ElementWriter(context, tracker) {
+ this.context = context;
+ this.contextStack = [];
+ this.tracker = tracker;
+}
+
+function addPageItem(page, item, index) {
+ if (index === null || index === undefined || index < 0 || index > page.items.length) {
+ page.items.push(item);
+ } else {
+ page.items.splice(index, 0, item);
+ }
+}
+
+ElementWriter.prototype.addLine = function (line, dontUpdateContextPosition, index) {
+ var height = line.getHeight();
+ var context = this.context;
+ var page = context.getCurrentPage(),
+ position = this.getCurrentPositionOnPage();
+
+ if (context.availableHeight < height || !page) {
+ return false;
+ }
+
+ line.x = context.x + (line.x || 0);
+ line.y = context.y + (line.y || 0);
+
+ this.alignLine(line);
+
+ addPageItem(page, {
+ type: 'line',
+ item: line
+ }, index);
+ this.tracker.emit('lineAdded', line);
+
+ if (!dontUpdateContextPosition) {
+ context.moveDown(height);
+ }
+
+ return position;
+};
+
+ElementWriter.prototype.alignLine = function (line) {
+ var width = this.context.availableWidth;
+ var lineWidth = line.getWidth();
+
+ var alignment = line.inlines && line.inlines.length > 0 && line.inlines[0].alignment;
+
+ var offset = 0;
+ switch (alignment) {
+ case 'right':
+ offset = width - lineWidth;
+ break;
+ case 'center':
+ offset = (width - lineWidth) / 2;
+ break;
+ }
+
+ if (offset) {
+ line.x = (line.x || 0) + offset;
+ }
+
+ if (alignment === 'justify' &&
+ !line.newLineForced &&
+ !line.lastLineInParagraph &&
+ line.inlines.length > 1) {
+ var additionalSpacing = (width - lineWidth) / (line.inlines.length - 1);
+
+ for (var i = 1, l = line.inlines.length; i < l; i++) {
+ offset = i * additionalSpacing;
+
+ line.inlines[i].x += offset;
+ line.inlines[i].justifyShift = additionalSpacing;
+ }
+ }
+};
+
+ElementWriter.prototype.addImage = function (image, index, type) {
+ var context = this.context;
+ var page = context.getCurrentPage(),
+ position = this.getCurrentPositionOnPage();
+
+ if (!page || (image.absolutePosition === undefined && context.availableHeight < image._height && page.items.length > 0)) {
+ return false;
+ }
+
+ if (image._x === undefined) {
+ image._x = image.x || 0;
+ }
+
+ image.x = context.x + image._x;
+ image.y = context.y;
+
+ this.alignImage(image);
+
+ addPageItem(page, {
+ type: type || 'image',
+ item: image
+ }, index);
+
+ context.moveDown(image._height);
+
+ return position;
+};
+
+ElementWriter.prototype.addSVG = function (image, index) {
+ return this.addImage(image, index, 'svg')
+};
+
+ElementWriter.prototype.addQr = function (qr, index) {
+ var context = this.context;
+ var page = context.getCurrentPage(),
+ position = this.getCurrentPositionOnPage();
+
+ if (!page || (qr.absolutePosition === undefined && context.availableHeight < qr._height)) {
+ return false;
+ }
+
+ if (qr._x === undefined) {
+ qr._x = qr.x || 0;
+ }
+
+ qr.x = context.x + qr._x;
+ qr.y = context.y;
+
+ this.alignImage(qr);
+
+ for (var i = 0, l = qr._canvas.length; i < l; i++) {
+ var vector = qr._canvas[i];
+ vector.x += qr.x;
+ vector.y += qr.y;
+ this.addVector(vector, true, true, index);
+ }
+
+ context.moveDown(qr._height);
+
+ return position;
+};
+
+ElementWriter.prototype.alignImage = function (image) {
+ var width = this.context.availableWidth;
+ var imageWidth = image._minWidth;
+ var offset = 0;
+ switch (image._alignment) {
+ case 'right':
+ offset = width - imageWidth;
+ break;
+ case 'center':
+ offset = (width - imageWidth) / 2;
+ break;
+ }
+
+ if (offset) {
+ image.x = (image.x || 0) + offset;
+ }
+};
+
+ElementWriter.prototype.alignCanvas = function (node) {
+ var width = this.context.availableWidth;
+ var canvasWidth = node._minWidth;
+ var offset = 0;
+ switch (node._alignment) {
+ case 'right':
+ offset = width - canvasWidth;
+ break;
+ case 'center':
+ offset = (width - canvasWidth) / 2;
+ break;
+ }
+ if (offset) {
+ node.canvas.forEach(function (vector) {
+ offsetVector(vector, offset, 0);
+ });
+ }
+};
+
+ElementWriter.prototype.addVector = function (vector, ignoreContextX, ignoreContextY, index) {
+ var context = this.context;
+ var page = context.getCurrentPage(),
+ position = this.getCurrentPositionOnPage();
+
+ if (page) {
+ offsetVector(vector, ignoreContextX ? 0 : context.x, ignoreContextY ? 0 : context.y);
+ addPageItem(page, {
+ type: 'vector',
+ item: vector
+ }, index);
+ return position;
+ }
+};
+
+ElementWriter.prototype.beginClip = function (width, height) {
+ var ctx = this.context;
+ var page = ctx.getCurrentPage();
+ page.items.push({
+ type: 'beginClip',
+ item: { x: ctx.x, y: ctx.y, width: width, height: height }
+ });
+ return true;
+};
+
+ElementWriter.prototype.endClip = function () {
+ var ctx = this.context;
+ var page = ctx.getCurrentPage();
+ page.items.push({
+ type: 'endClip'
+ });
+ return true;
+};
+
+function cloneLine(line) {
+ var result = new Line(line.maxWidth);
+
+ for (var key in line) {
+ if (line.hasOwnProperty(key)) {
+ result[key] = line[key];
+ }
+ }
+
+ return result;
+}
+
+ElementWriter.prototype.addFragment = function (block, useBlockXOffset, useBlockYOffset, dontUpdateContextPosition) {
+ var ctx = this.context;
+ var page = ctx.getCurrentPage();
+
+ if (!useBlockXOffset && block.height > ctx.availableHeight) {
+ return false;
+ }
+
+ block.items.forEach(function (item) {
+ switch (item.type) {
+ case 'line':
+ var l = cloneLine(item.item);
+
+ if (l._node) {
+ l._node.positions[0].pageNumber = ctx.page + 1;
+ }
+ l.x = (l.x || 0) + (useBlockXOffset ? (block.xOffset || 0) : ctx.x);
+ l.y = (l.y || 0) + (useBlockYOffset ? (block.yOffset || 0) : ctx.y);
+
+ page.items.push({
+ type: 'line',
+ item: l
+ });
+ break;
+
+ case 'vector':
+ var v = pack(item.item);
+
+ offsetVector(v, useBlockXOffset ? (block.xOffset || 0) : ctx.x, useBlockYOffset ? (block.yOffset || 0) : ctx.y);
+ page.items.push({
+ type: 'vector',
+ item: v
+ });
+ break;
+
+ case 'image':
+ case 'svg':
+ var img = pack(item.item);
+
+ img.x = (img.x || 0) + (useBlockXOffset ? (block.xOffset || 0) : ctx.x);
+ img.y = (img.y || 0) + (useBlockYOffset ? (block.yOffset || 0) : ctx.y);
+
+ page.items.push({
+ type: item.type,
+ item: img
+ });
+ break;
+ }
+ });
+
+ if (!dontUpdateContextPosition) {
+ ctx.moveDown(block.height);
+ }
+
+ return true;
+};
+
+/**
+ * Pushes the provided context onto the stack or creates a new one
+ *
+ * pushContext(context) - pushes the provided context and makes it current
+ * pushContext(width, height) - creates and pushes a new context with the specified width and height
+ * pushContext() - creates a new context for unbreakable blocks (with current availableWidth and full-page-height)
+ */
+ElementWriter.prototype.pushContext = function (contextOrWidth, height) {
+ if (contextOrWidth === undefined) {
+ height = this.context.getCurrentPage().height - this.context.pageMargins.top - this.context.pageMargins.bottom;
+ contextOrWidth = this.context.availableWidth;
+ }
+
+ if (isNumber(contextOrWidth)) {
+ contextOrWidth = new DocumentContext({ width: contextOrWidth, height: height }, { left: 0, right: 0, top: 0, bottom: 0 });
+ }
+
+ this.contextStack.push(this.context);
+ this.context = contextOrWidth;
+};
+
+ElementWriter.prototype.popContext = function () {
+ this.context = this.contextStack.pop();
+};
+
+ElementWriter.prototype.getCurrentPositionOnPage = function () {
+ return (this.contextStack[0] || this.context).getCurrentPosition();
+};
+
+
+module.exports = ElementWriter;
/***/ }),
-/* 451 */
+/* 546 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-var ColumnCalculator = __webpack_require__(131);
-var isFunction = __webpack_require__(0).isFunction;
-var isNumber = __webpack_require__(0).isNumber;
-
-function TableProcessor(tableNode) {
- this.tableNode = tableNode;
-}
-
-TableProcessor.prototype.beginTable = function (writer) {
- var tableNode;
- var availableWidth;
- var self = this;
-
- tableNode = this.tableNode;
- this.offsets = tableNode._offsets;
- this.layout = tableNode._layout;
-
- availableWidth = writer.context().availableWidth - this.offsets.total;
- ColumnCalculator.buildColumnWidths(tableNode.table.widths, availableWidth);
-
- this.tableWidth = tableNode._offsets.total + getTableInnerContentWidth();
- this.rowSpanData = prepareRowSpanData();
- this.cleanUpRepeatables = false;
-
- this.headerRows = tableNode.table.headerRows || 0;
- this.rowsWithoutPageBreak = this.headerRows + (tableNode.table.keepWithHeaderRows || 0);
- this.dontBreakRows = tableNode.table.dontBreakRows || false;
-
- if (this.rowsWithoutPageBreak) {
- writer.beginUnbreakableBlock();
- }
-
- // update the border properties of all cells before drawing any lines
- prepareCellBorders(this.tableNode.table.body);
-
- this.drawHorizontalLine(0, writer);
-
- function getTableInnerContentWidth() {
- var width = 0;
-
- tableNode.table.widths.forEach(function (w) {
- width += w._calcWidth;
- });
-
- return width;
- }
-
- function prepareRowSpanData() {
- var rsd = [];
- var x = 0;
- var lastWidth = 0;
-
- rsd.push({ left: 0, rowSpan: 0 });
-
- for (var i = 0, l = self.tableNode.table.body[0].length; i < l; i++) {
- var paddings = self.layout.paddingLeft(i, self.tableNode) + self.layout.paddingRight(i, self.tableNode);
- var lBorder = self.layout.vLineWidth(i, self.tableNode);
- lastWidth = paddings + lBorder + self.tableNode.table.widths[i]._calcWidth;
- rsd[rsd.length - 1].width = lastWidth;
- x += lastWidth;
- rsd.push({ left: x, rowSpan: 0, width: 0 });
- }
-
- return rsd;
- }
-
- // Iterate through all cells. If the current cell is the start of a
- // rowSpan/colSpan, update the border property of the cells on its
- // bottom/right accordingly. This is needed since each iteration of the
- // line-drawing loops draws lines for a single cell, not for an entire
- // rowSpan/colSpan.
- function prepareCellBorders(body) {
- for (var rowIndex = 0; rowIndex < body.length; rowIndex++) {
- var row = body[rowIndex];
-
- for (var colIndex = 0; colIndex < row.length; colIndex++) {
- var cell = row[colIndex];
-
- if (cell.border) {
- var rowSpan = cell.rowSpan || 1;
- var colSpan = cell.colSpan || 1;
-
- for (var rowOffset = 0; rowOffset < rowSpan; rowOffset++) {
- // set left border
- if (cell.border[0] !== undefined && rowOffset > 0) {
- setBorder(rowIndex + rowOffset, colIndex, 0, cell.border[0]);
- }
-
- // set right border
- if (cell.border[2] !== undefined) {
- setBorder(rowIndex + rowOffset, colIndex + colSpan - 1, 2, cell.border[2]);
- }
- }
-
- for (var colOffset = 0; colOffset < colSpan; colOffset++) {
- // set top border
- if (cell.border[1] !== undefined && colOffset > 0) {
- setBorder(rowIndex, colIndex + colOffset, 1, cell.border[1]);
- }
-
- // set bottom border
- if (cell.border[3] !== undefined) {
- setBorder(rowIndex + rowSpan - 1, colIndex + colOffset, 3, cell.border[3]);
- }
- }
- }
- }
- }
-
- // helper function to set the border for a given cell
- function setBorder(rowIndex, colIndex, borderIndex, borderValue) {
- var cell = body[rowIndex][colIndex];
- cell.border = cell.border || {};
- cell.border[borderIndex] = borderValue;
- }
- }
-};
-
-TableProcessor.prototype.onRowBreak = function (rowIndex, writer) {
- var self = this;
- return function () {
- var offset = self.rowPaddingTop + (!self.headerRows ? self.topLineWidth : 0);
- writer.context().availableHeight -= self.reservedAtBottom;
- writer.context().moveDown(offset);
- };
-};
-
-TableProcessor.prototype.beginRow = function (rowIndex, writer) {
- this.topLineWidth = this.layout.hLineWidth(rowIndex, this.tableNode);
- this.rowPaddingTop = this.layout.paddingTop(rowIndex, this.tableNode);
- this.bottomLineWidth = this.layout.hLineWidth(rowIndex + 1, this.tableNode);
- this.rowPaddingBottom = this.layout.paddingBottom(rowIndex, this.tableNode);
-
- this.rowCallback = this.onRowBreak(rowIndex, writer);
- writer.tracker.startTracking('pageChanged', this.rowCallback);
- if (this.dontBreakRows) {
- writer.beginUnbreakableBlock();
- }
- this.rowTopY = writer.context().y;
- this.reservedAtBottom = this.bottomLineWidth + this.rowPaddingBottom;
-
- writer.context().availableHeight -= this.reservedAtBottom;
-
- writer.context().moveDown(this.rowPaddingTop);
-};
-
-TableProcessor.prototype.drawHorizontalLine = function (lineIndex, writer, overrideY) {
- var lineWidth = this.layout.hLineWidth(lineIndex, this.tableNode);
- if (lineWidth) {
- var style = this.layout.hLineStyle(lineIndex, this.tableNode);
- var dash;
- if (style && style.dash) {
- dash = style.dash;
- }
-
- var offset = lineWidth / 2;
- var currentLine = null;
- var body = this.tableNode.table.body;
- var cellAbove;
- var currentCell;
- var rowCellAbove;
-
- for (var i = 0, l = this.rowSpanData.length; i < l; i++) {
- var data = this.rowSpanData[i];
- var shouldDrawLine = !data.rowSpan;
- var borderColor = null;
-
- // draw only if the current cell requires a top border or the cell in the
- // row above requires a bottom border
- if (shouldDrawLine && i < l - 1) {
- var topBorder = false, bottomBorder = false, rowBottomBorder = false;
-
- // the cell in the row above
- if (lineIndex > 0) {
- cellAbove = body[lineIndex - 1][i];
- bottomBorder = cellAbove.border ? cellAbove.border[3] : this.layout.defaultBorder;
- if (bottomBorder && cellAbove.borderColor) {
- borderColor = cellAbove.borderColor[3];
- }
- }
-
- // the current cell
- if (lineIndex < body.length) {
- currentCell = body[lineIndex][i];
- topBorder = currentCell.border ? currentCell.border[1] : this.layout.defaultBorder;
- if (topBorder && borderColor == null && currentCell.borderColor) {
- borderColor = currentCell.borderColor[1];
- }
- }
-
- shouldDrawLine = topBorder || bottomBorder;
- }
-
- if (cellAbove && cellAbove._rowSpanCurrentOffset) {
- rowCellAbove = body[lineIndex - 1 - cellAbove._rowSpanCurrentOffset][i];
- rowBottomBorder = rowCellAbove && rowCellAbove.border ? rowCellAbove.border[3] : this.layout.defaultBorder;
- if (rowBottomBorder && rowCellAbove && rowCellAbove.borderColor) {
- borderColor = rowCellAbove.borderColor[3];
- }
- }
-
- if (borderColor == null) {
- borderColor = isFunction(this.layout.hLineColor) ? this.layout.hLineColor(lineIndex, this.tableNode, i) : this.layout.hLineColor;
- }
-
- if (!currentLine && shouldDrawLine) {
- currentLine = { left: data.left, width: 0 };
- }
-
- if (shouldDrawLine) {
- var colSpanIndex = 0;
- if (rowCellAbove && rowCellAbove.colSpan && rowBottomBorder) {
- while (rowCellAbove.colSpan > colSpanIndex) {
- currentLine.width += (this.rowSpanData[i + colSpanIndex++].width || 0);
- }
- i += colSpanIndex - 1;
- } else if (cellAbove && cellAbove.colSpan && bottomBorder) {
- while (cellAbove.colSpan > colSpanIndex) {
- currentLine.width += (this.rowSpanData[i + colSpanIndex++].width || 0);
- }
- i += colSpanIndex - 1;
- } else if (currentCell && currentCell.colSpan && topBorder) {
- while (currentCell.colSpan > colSpanIndex) {
- currentLine.width += (this.rowSpanData[i + colSpanIndex++].width || 0);
- }
- i += colSpanIndex - 1;
- } else {
- currentLine.width += (this.rowSpanData[i].width || 0);
- }
- }
-
- var y = (overrideY || 0) + offset;
-
-
- if (shouldDrawLine) {
- if (currentLine && currentLine.width) {
- writer.addVector({
- type: 'line',
- x1: currentLine.left,
- x2: currentLine.left + currentLine.width,
- y1: y,
- y2: y,
- lineWidth: lineWidth,
- dash: dash,
- lineColor: borderColor
- }, false, overrideY);
- currentLine = null;
- borderColor = null;
- cellAbove = null;
- currentCell = null;
- rowCellAbove = null;
- }
- }
- }
-
- writer.context().moveDown(lineWidth);
- }
-};
-
-TableProcessor.prototype.drawVerticalLine = function (x, y0, y1, vLineColIndex, writer, vLineRowIndex, beforeVLineColIndex) {
- var width = this.layout.vLineWidth(vLineColIndex, this.tableNode);
- if (width === 0) {
- return;
- }
- var style = this.layout.vLineStyle(vLineColIndex, this.tableNode);
- var dash;
- if (style && style.dash) {
- dash = style.dash;
- }
-
- var body = this.tableNode.table.body;
- var cellBefore;
- var currentCell;
- var borderColor;
-
- // the cell in the col before
- if (vLineColIndex > 0) {
- cellBefore = body[vLineRowIndex][beforeVLineColIndex];
- if (cellBefore && cellBefore.borderColor) {
- if (cellBefore.border ? cellBefore.border[2] : this.layout.defaultBorder) {
- borderColor = cellBefore.borderColor[2];
- }
- }
- }
-
- // the current cell
- if (borderColor == null && vLineColIndex < body.length) {
- currentCell = body[vLineRowIndex][vLineColIndex];
- if (currentCell && currentCell.borderColor) {
- if (currentCell.border ? currentCell.border[0] : this.layout.defaultBorder) {
- borderColor = currentCell.borderColor[0];
- }
- }
- }
-
- if (borderColor == null && cellBefore && cellBefore._rowSpanCurrentOffset) {
- var rowCellBeforeAbove = body[vLineRowIndex - cellBefore._rowSpanCurrentOffset][beforeVLineColIndex];
- if (rowCellBeforeAbove.borderColor) {
- if (rowCellBeforeAbove.border ? rowCellBeforeAbove.border[2] : this.layout.defaultBorder) {
- borderColor = rowCellBeforeAbove.borderColor[2];
- }
- }
- }
-
- if (borderColor == null && currentCell && currentCell._rowSpanCurrentOffset) {
- var rowCurrentCellAbove = body[vLineRowIndex - currentCell._rowSpanCurrentOffset][vLineColIndex];
- if (rowCurrentCellAbove.borderColor) {
- if (rowCurrentCellAbove.border ? rowCurrentCellAbove.border[2] : this.layout.defaultBorder) {
- borderColor = rowCurrentCellAbove.borderColor[2];
- }
- }
- }
-
- if (borderColor == null) {
- borderColor = isFunction(this.layout.vLineColor) ? this.layout.vLineColor(vLineColIndex, this.tableNode, vLineRowIndex) : this.layout.vLineColor;
- }
- writer.addVector({
- type: 'line',
- x1: x + width / 2,
- x2: x + width / 2,
- y1: y0,
- y2: y1,
- lineWidth: width,
- dash: dash,
- lineColor: borderColor
- }, false, true);
- cellBefore = null;
- currentCell = null;
- borderColor = null;
-};
-
-TableProcessor.prototype.endTable = function (writer) {
- if (this.cleanUpRepeatables) {
- writer.popFromRepeatables();
- }
-};
-
-TableProcessor.prototype.endRow = function (rowIndex, writer, pageBreaks) {
- var l, i;
- var self = this;
- writer.tracker.stopTracking('pageChanged', this.rowCallback);
- writer.context().moveDown(this.layout.paddingBottom(rowIndex, this.tableNode));
- writer.context().availableHeight += this.reservedAtBottom;
-
- var endingPage = writer.context().page;
- var endingY = writer.context().y;
-
- var xs = getLineXs();
-
- var ys = [];
-
- var hasBreaks = pageBreaks && pageBreaks.length > 0;
- var body = this.tableNode.table.body;
-
- ys.push({
- y0: this.rowTopY,
- page: hasBreaks ? pageBreaks[0].prevPage : endingPage
- });
-
- if (hasBreaks) {
- for (i = 0, l = pageBreaks.length; i < l; i++) {
- var pageBreak = pageBreaks[i];
- ys[ys.length - 1].y1 = pageBreak.prevY;
-
- ys.push({ y0: pageBreak.y, page: pageBreak.prevPage + 1 });
- }
- }
-
- ys[ys.length - 1].y1 = endingY;
-
- var skipOrphanePadding = (ys[0].y1 - ys[0].y0 === this.rowPaddingTop);
- for (var yi = (skipOrphanePadding ? 1 : 0), yl = ys.length; yi < yl; yi++) {
- var willBreak = yi < ys.length - 1;
- var rowBreakWithoutHeader = (yi > 0 && !this.headerRows);
- var hzLineOffset = rowBreakWithoutHeader ? 0 : this.topLineWidth;
- var y1 = ys[yi].y0;
- var y2 = ys[yi].y1;
-
- if (willBreak) {
- y2 = y2 + this.rowPaddingBottom;
- }
-
- if (writer.context().page != ys[yi].page) {
- writer.context().page = ys[yi].page;
-
- //TODO: buggy, availableHeight should be updated on every pageChanged event
- // TableProcessor should be pageChanged listener, instead of processRow
- this.reservedAtBottom = 0;
- }
-
- for (i = 0, l = xs.length; i < l; i++) {
- var leftCellBorder = false;
- var rightCellBorder = false;
- var colIndex = xs[i].index;
-
- // current cell
- if (colIndex < body[rowIndex].length) {
- var cell = body[rowIndex][colIndex];
- leftCellBorder = cell.border ? cell.border[0] : this.layout.defaultBorder;
- rightCellBorder = cell.border ? cell.border[2] : this.layout.defaultBorder;
- }
-
- // before cell
- if (colIndex > 0 && !leftCellBorder) {
- var cell = body[rowIndex][colIndex - 1];
- leftCellBorder = cell.border ? cell.border[2] : this.layout.defaultBorder;
- }
-
- // after cell
- if (colIndex + 1 < body[rowIndex].length && !rightCellBorder) {
- var cell = body[rowIndex][colIndex + 1];
- rightCellBorder = cell.border ? cell.border[0] : this.layout.defaultBorder;
- }
-
- if (leftCellBorder) {
- this.drawVerticalLine(xs[i].x, y1 - hzLineOffset, y2 + this.bottomLineWidth, xs[i].index, writer, rowIndex, xs[i - 1] ? xs[i - 1].index : null);
- }
-
- if (i < l - 1) {
- var fillColor = body[rowIndex][colIndex].fillColor;
- var fillOpacity = body[rowIndex][colIndex].fillOpacity;
- if (!fillColor) {
- fillColor = isFunction(this.layout.fillColor) ? this.layout.fillColor(rowIndex, this.tableNode, colIndex) : this.layout.fillColor;
- }
- if (!isNumber(fillOpacity)) {
- fillOpacity = isFunction(this.layout.fillOpacity) ? this.layout.fillOpacity(rowIndex, this.tableNode, colIndex) : this.layout.fillOpacity;
- }
- if (fillColor) {
- var widthLeftBorder = leftCellBorder ? this.layout.vLineWidth(colIndex, this.tableNode) : 0;
- var widthRightBorder;
- if ((colIndex === 0 || colIndex + 1 == body[rowIndex].length) && !rightCellBorder) {
- widthRightBorder = this.layout.vLineWidth(colIndex + 1, this.tableNode);
- } else if (rightCellBorder) {
- widthRightBorder = this.layout.vLineWidth(colIndex + 1, this.tableNode) / 2;
- } else {
- widthRightBorder = 0;
- }
-
- var x1f = this.dontBreakRows ? xs[i].x + widthLeftBorder : xs[i].x + (widthLeftBorder / 2);
- var y1f = this.dontBreakRows ? y1 : y1 - (hzLineOffset / 2);
- var x2f = xs[i + 1].x + widthRightBorder;
- var y2f = this.dontBreakRows ? y2 + this.bottomLineWidth : y2 + (this.bottomLineWidth / 2);
- writer.addVector({
- type: 'rect',
- x: x1f,
- y: y1f,
- w: x2f - x1f,
- h: y2f - y1f,
- lineWidth: 0,
- color: fillColor,
- fillOpacity: fillOpacity
- }, false, true, writer.context().backgroundLength[writer.context().page]);
- }
- }
- }
-
- if (willBreak && this.layout.hLineWhenBroken !== false) {
- this.drawHorizontalLine(rowIndex + 1, writer, y2);
- }
- if (rowBreakWithoutHeader && this.layout.hLineWhenBroken !== false) {
- this.drawHorizontalLine(rowIndex, writer, y1);
- }
- }
-
- writer.context().page = endingPage;
- writer.context().y = endingY;
-
- var row = this.tableNode.table.body[rowIndex];
- for (i = 0, l = row.length; i < l; i++) {
- if (row[i].rowSpan) {
- this.rowSpanData[i].rowSpan = row[i].rowSpan;
-
- // fix colSpans
- if (row[i].colSpan && row[i].colSpan > 1) {
- for (var j = 1; j < row[i].rowSpan; j++) {
- this.tableNode.table.body[rowIndex + j][i]._colSpan = row[i].colSpan;
- }
- }
- // fix rowSpans
- if (row[i].rowSpan && row[i].rowSpan > 1) {
- for (var j = 1; j < row[i].rowSpan; j++) {
- this.tableNode.table.body[rowIndex + j][i]._rowSpanCurrentOffset = j;
- }
- }
- }
-
- if (this.rowSpanData[i].rowSpan > 0) {
- this.rowSpanData[i].rowSpan--;
- }
- }
-
- this.drawHorizontalLine(rowIndex + 1, writer);
-
- if (this.headerRows && rowIndex === this.headerRows - 1) {
- this.headerRepeatable = writer.currentBlockToRepeatable();
- }
-
- if (this.dontBreakRows) {
- writer.tracker.auto('pageChanged',
- function () {
- if (!self.headerRows && self.layout.hLineWhenBroken !== false) {
- self.drawHorizontalLine(rowIndex, writer);
- }
- },
- function () {
- writer.commitUnbreakableBlock();
- }
- );
- }
-
- if (this.headerRepeatable && (rowIndex === (this.rowsWithoutPageBreak - 1) || rowIndex === this.tableNode.table.body.length - 1)) {
- writer.commitUnbreakableBlock();
- writer.pushToRepeatables(this.headerRepeatable);
- this.cleanUpRepeatables = true;
- this.headerRepeatable = null;
- }
-
- function getLineXs() {
- var result = [];
- var cols = 0;
-
- for (var i = 0, l = self.tableNode.table.body[rowIndex].length; i < l; i++) {
- if (!cols) {
- result.push({ x: self.rowSpanData[i].left, index: i });
-
- var item = self.tableNode.table.body[rowIndex][i];
- cols = (item._colSpan || item.colSpan || 0);
- }
- if (cols > 0) {
- cols--;
- }
- }
-
- result.push({ x: self.rowSpanData[self.rowSpanData.length - 1].left, index: self.rowSpanData.length - 1 });
-
- return result;
- }
-};
-
-module.exports = TableProcessor;
+
+
+var ColumnCalculator = __webpack_require__(198);
+var isFunction = __webpack_require__(0).isFunction;
+var isNumber = __webpack_require__(0).isNumber;
+
+function TableProcessor(tableNode) {
+ this.tableNode = tableNode;
+}
+
+TableProcessor.prototype.beginTable = function (writer) {
+ var tableNode;
+ var availableWidth;
+ var self = this;
+
+ tableNode = this.tableNode;
+ this.offsets = tableNode._offsets;
+ this.layout = tableNode._layout;
+
+ availableWidth = writer.context().availableWidth - this.offsets.total;
+ ColumnCalculator.buildColumnWidths(tableNode.table.widths, availableWidth);
+
+ this.tableWidth = tableNode._offsets.total + getTableInnerContentWidth();
+ this.rowSpanData = prepareRowSpanData();
+ this.cleanUpRepeatables = false;
+
+ this.headerRows = tableNode.table.headerRows || 0;
+ this.rowsWithoutPageBreak = this.headerRows + (tableNode.table.keepWithHeaderRows || 0);
+ this.dontBreakRows = tableNode.table.dontBreakRows || false;
+
+ if (this.rowsWithoutPageBreak) {
+ writer.beginUnbreakableBlock();
+ }
+
+ // update the border properties of all cells before drawing any lines
+ prepareCellBorders(this.tableNode.table.body);
+
+ this.drawHorizontalLine(0, writer);
+
+ function getTableInnerContentWidth() {
+ var width = 0;
+
+ tableNode.table.widths.forEach(function (w) {
+ width += w._calcWidth;
+ });
+
+ return width;
+ }
+
+ function prepareRowSpanData() {
+ var rsd = [];
+ var x = 0;
+ var lastWidth = 0;
+
+ rsd.push({ left: 0, rowSpan: 0 });
+
+ for (var i = 0, l = self.tableNode.table.body[0].length; i < l; i++) {
+ var paddings = self.layout.paddingLeft(i, self.tableNode) + self.layout.paddingRight(i, self.tableNode);
+ var lBorder = self.layout.vLineWidth(i, self.tableNode);
+ lastWidth = paddings + lBorder + self.tableNode.table.widths[i]._calcWidth;
+ rsd[rsd.length - 1].width = lastWidth;
+ x += lastWidth;
+ rsd.push({ left: x, rowSpan: 0, width: 0 });
+ }
+
+ return rsd;
+ }
+
+ // Iterate through all cells. If the current cell is the start of a
+ // rowSpan/colSpan, update the border property of the cells on its
+ // bottom/right accordingly. This is needed since each iteration of the
+ // line-drawing loops draws lines for a single cell, not for an entire
+ // rowSpan/colSpan.
+ function prepareCellBorders(body) {
+ for (var rowIndex = 0; rowIndex < body.length; rowIndex++) {
+ var row = body[rowIndex];
+
+ for (var colIndex = 0; colIndex < row.length; colIndex++) {
+ var cell = row[colIndex];
+
+ if (cell.border) {
+ var rowSpan = cell.rowSpan || 1;
+ var colSpan = cell.colSpan || 1;
+
+ for (var rowOffset = 0; rowOffset < rowSpan; rowOffset++) {
+ // set left border
+ if (cell.border[0] !== undefined && rowOffset > 0) {
+ setBorder(rowIndex + rowOffset, colIndex, 0, cell.border[0]);
+ }
+
+ // set right border
+ if (cell.border[2] !== undefined) {
+ setBorder(rowIndex + rowOffset, colIndex + colSpan - 1, 2, cell.border[2]);
+ }
+ }
+
+ for (var colOffset = 0; colOffset < colSpan; colOffset++) {
+ // set top border
+ if (cell.border[1] !== undefined && colOffset > 0) {
+ setBorder(rowIndex, colIndex + colOffset, 1, cell.border[1]);
+ }
+
+ // set bottom border
+ if (cell.border[3] !== undefined) {
+ setBorder(rowIndex + rowSpan - 1, colIndex + colOffset, 3, cell.border[3]);
+ }
+ }
+ }
+ }
+ }
+
+ // helper function to set the border for a given cell
+ function setBorder(rowIndex, colIndex, borderIndex, borderValue) {
+ var cell = body[rowIndex][colIndex];
+ cell.border = cell.border || {};
+ cell.border[borderIndex] = borderValue;
+ }
+ }
+};
+
+TableProcessor.prototype.onRowBreak = function (rowIndex, writer) {
+ var self = this;
+ return function () {
+ var offset = self.rowPaddingTop + (!self.headerRows ? self.topLineWidth : 0);
+ writer.context().availableHeight -= self.reservedAtBottom;
+ writer.context().moveDown(offset);
+ };
+};
+
+TableProcessor.prototype.beginRow = function (rowIndex, writer) {
+ this.topLineWidth = this.layout.hLineWidth(rowIndex, this.tableNode);
+ this.rowPaddingTop = this.layout.paddingTop(rowIndex, this.tableNode);
+ this.bottomLineWidth = this.layout.hLineWidth(rowIndex + 1, this.tableNode);
+ this.rowPaddingBottom = this.layout.paddingBottom(rowIndex, this.tableNode);
+
+ this.rowCallback = this.onRowBreak(rowIndex, writer);
+ writer.tracker.startTracking('pageChanged', this.rowCallback);
+ if (this.dontBreakRows) {
+ writer.beginUnbreakableBlock();
+ }
+ this.rowTopY = writer.context().y;
+ this.reservedAtBottom = this.bottomLineWidth + this.rowPaddingBottom;
+
+ writer.context().availableHeight -= this.reservedAtBottom;
+
+ writer.context().moveDown(this.rowPaddingTop);
+};
+
+TableProcessor.prototype.drawHorizontalLine = function (lineIndex, writer, overrideY) {
+ var lineWidth = this.layout.hLineWidth(lineIndex, this.tableNode);
+ if (lineWidth) {
+ var style = this.layout.hLineStyle(lineIndex, this.tableNode);
+ var dash;
+ if (style && style.dash) {
+ dash = style.dash;
+ }
+
+ var offset = lineWidth / 2;
+ var currentLine = null;
+ var body = this.tableNode.table.body;
+ var cellAbove;
+ var currentCell;
+ var rowCellAbove;
+
+ for (var i = 0, l = this.rowSpanData.length; i < l; i++) {
+ var data = this.rowSpanData[i];
+ var shouldDrawLine = !data.rowSpan;
+ var borderColor = null;
+
+ // draw only if the current cell requires a top border or the cell in the
+ // row above requires a bottom border
+ if (shouldDrawLine && i < l - 1) {
+ var topBorder = false, bottomBorder = false, rowBottomBorder = false;
+
+ // the cell in the row above
+ if (lineIndex > 0) {
+ cellAbove = body[lineIndex - 1][i];
+ bottomBorder = cellAbove.border ? cellAbove.border[3] : this.layout.defaultBorder;
+ if (bottomBorder && cellAbove.borderColor) {
+ borderColor = cellAbove.borderColor[3];
+ }
+ }
+
+ // the current cell
+ if (lineIndex < body.length) {
+ currentCell = body[lineIndex][i];
+ topBorder = currentCell.border ? currentCell.border[1] : this.layout.defaultBorder;
+ if (topBorder && borderColor == null && currentCell.borderColor) {
+ borderColor = currentCell.borderColor[1];
+ }
+ }
+
+ shouldDrawLine = topBorder || bottomBorder;
+ }
+
+ if (cellAbove && cellAbove._rowSpanCurrentOffset) {
+ rowCellAbove = body[lineIndex - 1 - cellAbove._rowSpanCurrentOffset][i];
+ rowBottomBorder = rowCellAbove && rowCellAbove.border ? rowCellAbove.border[3] : this.layout.defaultBorder;
+ if (rowBottomBorder && rowCellAbove && rowCellAbove.borderColor) {
+ borderColor = rowCellAbove.borderColor[3];
+ }
+ }
+
+ if (borderColor == null) {
+ borderColor = isFunction(this.layout.hLineColor) ? this.layout.hLineColor(lineIndex, this.tableNode, i) : this.layout.hLineColor;
+ }
+
+ if (!currentLine && shouldDrawLine) {
+ currentLine = { left: data.left, width: 0 };
+ }
+
+ if (shouldDrawLine) {
+ var colSpanIndex = 0;
+ if (rowCellAbove && rowCellAbove.colSpan && rowBottomBorder) {
+ while (rowCellAbove.colSpan > colSpanIndex) {
+ currentLine.width += (this.rowSpanData[i + colSpanIndex++].width || 0);
+ }
+ i += colSpanIndex - 1;
+ } else if (cellAbove && cellAbove.colSpan && bottomBorder) {
+ while (cellAbove.colSpan > colSpanIndex) {
+ currentLine.width += (this.rowSpanData[i + colSpanIndex++].width || 0);
+ }
+ i += colSpanIndex - 1;
+ } else if (currentCell && currentCell.colSpan && topBorder) {
+ while (currentCell.colSpan > colSpanIndex) {
+ currentLine.width += (this.rowSpanData[i + colSpanIndex++].width || 0);
+ }
+ i += colSpanIndex - 1;
+ } else {
+ currentLine.width += (this.rowSpanData[i].width || 0);
+ }
+ }
+
+ var y = (overrideY || 0) + offset;
+
+
+ if (shouldDrawLine) {
+ if (currentLine && currentLine.width) {
+ writer.addVector({
+ type: 'line',
+ x1: currentLine.left,
+ x2: currentLine.left + currentLine.width,
+ y1: y,
+ y2: y,
+ lineWidth: lineWidth,
+ dash: dash,
+ lineColor: borderColor
+ }, false, overrideY);
+ currentLine = null;
+ borderColor = null;
+ cellAbove = null;
+ currentCell = null;
+ rowCellAbove = null;
+ }
+ }
+ }
+
+ writer.context().moveDown(lineWidth);
+ }
+};
+
+TableProcessor.prototype.drawVerticalLine = function (x, y0, y1, vLineColIndex, writer, vLineRowIndex, beforeVLineColIndex) {
+ var width = this.layout.vLineWidth(vLineColIndex, this.tableNode);
+ if (width === 0) {
+ return;
+ }
+ var style = this.layout.vLineStyle(vLineColIndex, this.tableNode);
+ var dash;
+ if (style && style.dash) {
+ dash = style.dash;
+ }
+
+ var body = this.tableNode.table.body;
+ var cellBefore;
+ var currentCell;
+ var borderColor;
+
+ // the cell in the col before
+ if (vLineColIndex > 0) {
+ cellBefore = body[vLineRowIndex][beforeVLineColIndex];
+ if (cellBefore && cellBefore.borderColor) {
+ if (cellBefore.border ? cellBefore.border[2] : this.layout.defaultBorder) {
+ borderColor = cellBefore.borderColor[2];
+ }
+ }
+ }
+
+ // the current cell
+ if (borderColor == null && vLineColIndex < body.length) {
+ currentCell = body[vLineRowIndex][vLineColIndex];
+ if (currentCell && currentCell.borderColor) {
+ if (currentCell.border ? currentCell.border[0] : this.layout.defaultBorder) {
+ borderColor = currentCell.borderColor[0];
+ }
+ }
+ }
+
+ if (borderColor == null && cellBefore && cellBefore._rowSpanCurrentOffset) {
+ var rowCellBeforeAbove = body[vLineRowIndex - cellBefore._rowSpanCurrentOffset][beforeVLineColIndex];
+ if (rowCellBeforeAbove.borderColor) {
+ if (rowCellBeforeAbove.border ? rowCellBeforeAbove.border[2] : this.layout.defaultBorder) {
+ borderColor = rowCellBeforeAbove.borderColor[2];
+ }
+ }
+ }
+
+ if (borderColor == null && currentCell && currentCell._rowSpanCurrentOffset) {
+ var rowCurrentCellAbove = body[vLineRowIndex - currentCell._rowSpanCurrentOffset][vLineColIndex];
+ if (rowCurrentCellAbove.borderColor) {
+ if (rowCurrentCellAbove.border ? rowCurrentCellAbove.border[2] : this.layout.defaultBorder) {
+ borderColor = rowCurrentCellAbove.borderColor[2];
+ }
+ }
+ }
+
+ if (borderColor == null) {
+ borderColor = isFunction(this.layout.vLineColor) ? this.layout.vLineColor(vLineColIndex, this.tableNode, vLineRowIndex) : this.layout.vLineColor;
+ }
+ writer.addVector({
+ type: 'line',
+ x1: x + width / 2,
+ x2: x + width / 2,
+ y1: y0,
+ y2: y1,
+ lineWidth: width,
+ dash: dash,
+ lineColor: borderColor
+ }, false, true);
+ cellBefore = null;
+ currentCell = null;
+ borderColor = null;
+};
+
+TableProcessor.prototype.endTable = function (writer) {
+ if (this.cleanUpRepeatables) {
+ writer.popFromRepeatables();
+ }
+};
+
+TableProcessor.prototype.endRow = function (rowIndex, writer, pageBreaks) {
+ var l, i;
+ var self = this;
+ writer.tracker.stopTracking('pageChanged', this.rowCallback);
+ writer.context().moveDown(this.layout.paddingBottom(rowIndex, this.tableNode));
+ writer.context().availableHeight += this.reservedAtBottom;
+
+ var endingPage = writer.context().page;
+ var endingY = writer.context().y;
+
+ var xs = getLineXs();
+
+ var ys = [];
+
+ var hasBreaks = pageBreaks && pageBreaks.length > 0;
+ var body = this.tableNode.table.body;
+
+ ys.push({
+ y0: this.rowTopY,
+ page: hasBreaks ? pageBreaks[0].prevPage : endingPage
+ });
+
+ if (hasBreaks) {
+ for (i = 0, l = pageBreaks.length; i < l; i++) {
+ var pageBreak = pageBreaks[i];
+ ys[ys.length - 1].y1 = pageBreak.prevY;
+
+ ys.push({ y0: pageBreak.y, page: pageBreak.prevPage + 1 });
+ }
+ }
+
+ ys[ys.length - 1].y1 = endingY;
+
+ var skipOrphanePadding = (ys[0].y1 - ys[0].y0 === this.rowPaddingTop);
+ for (var yi = (skipOrphanePadding ? 1 : 0), yl = ys.length; yi < yl; yi++) {
+ var willBreak = yi < ys.length - 1;
+ var rowBreakWithoutHeader = (yi > 0 && !this.headerRows);
+ var hzLineOffset = rowBreakWithoutHeader ? 0 : this.topLineWidth;
+ var y1 = ys[yi].y0;
+ var y2 = ys[yi].y1;
+
+ if (willBreak) {
+ y2 = y2 + this.rowPaddingBottom;
+ }
+
+ if (writer.context().page != ys[yi].page) {
+ writer.context().page = ys[yi].page;
+
+ //TODO: buggy, availableHeight should be updated on every pageChanged event
+ // TableProcessor should be pageChanged listener, instead of processRow
+ this.reservedAtBottom = 0;
+ }
+
+ for (i = 0, l = xs.length; i < l; i++) {
+ var leftCellBorder = false;
+ var rightCellBorder = false;
+ var colIndex = xs[i].index;
+
+ // current cell
+ if (colIndex < body[rowIndex].length) {
+ var cell = body[rowIndex][colIndex];
+ leftCellBorder = cell.border ? cell.border[0] : this.layout.defaultBorder;
+ rightCellBorder = cell.border ? cell.border[2] : this.layout.defaultBorder;
+ }
+
+ // before cell
+ if (colIndex > 0 && !leftCellBorder) {
+ var cell = body[rowIndex][colIndex - 1];
+ leftCellBorder = cell.border ? cell.border[2] : this.layout.defaultBorder;
+ }
+
+ // after cell
+ if (colIndex + 1 < body[rowIndex].length && !rightCellBorder) {
+ var cell = body[rowIndex][colIndex + 1];
+ rightCellBorder = cell.border ? cell.border[0] : this.layout.defaultBorder;
+ }
+
+ if (leftCellBorder) {
+ this.drawVerticalLine(xs[i].x, y1 - hzLineOffset, y2 + this.bottomLineWidth, xs[i].index, writer, rowIndex, xs[i - 1] ? xs[i - 1].index : null);
+ }
+
+ if (i < l - 1) {
+ var fillColor = body[rowIndex][colIndex].fillColor;
+ var fillOpacity = body[rowIndex][colIndex].fillOpacity;
+ if (!fillColor) {
+ fillColor = isFunction(this.layout.fillColor) ? this.layout.fillColor(rowIndex, this.tableNode, colIndex) : this.layout.fillColor;
+ }
+ if (!isNumber(fillOpacity)) {
+ fillOpacity = isFunction(this.layout.fillOpacity) ? this.layout.fillOpacity(rowIndex, this.tableNode, colIndex) : this.layout.fillOpacity;
+ }
+ if (fillColor) {
+ var widthLeftBorder = leftCellBorder ? this.layout.vLineWidth(colIndex, this.tableNode) : 0;
+ var widthRightBorder;
+ if ((colIndex === 0 || colIndex + 1 == body[rowIndex].length) && !rightCellBorder) {
+ widthRightBorder = this.layout.vLineWidth(colIndex + 1, this.tableNode);
+ } else if (rightCellBorder) {
+ widthRightBorder = this.layout.vLineWidth(colIndex + 1, this.tableNode) / 2;
+ } else {
+ widthRightBorder = 0;
+ }
+
+ var x1f = this.dontBreakRows ? xs[i].x + widthLeftBorder : xs[i].x + (widthLeftBorder / 2);
+ var y1f = this.dontBreakRows ? y1 : y1 - (hzLineOffset / 2);
+ var x2f = xs[i + 1].x + widthRightBorder;
+ var y2f = this.dontBreakRows ? y2 + this.bottomLineWidth : y2 + (this.bottomLineWidth / 2);
+ writer.addVector({
+ type: 'rect',
+ x: x1f,
+ y: y1f,
+ w: x2f - x1f,
+ h: y2f - y1f,
+ lineWidth: 0,
+ color: fillColor,
+ fillOpacity: fillOpacity
+ }, false, true, writer.context().backgroundLength[writer.context().page]);
+ }
+ }
+ }
+
+ if (willBreak && this.layout.hLineWhenBroken !== false) {
+ this.drawHorizontalLine(rowIndex + 1, writer, y2);
+ }
+ if (rowBreakWithoutHeader && this.layout.hLineWhenBroken !== false) {
+ this.drawHorizontalLine(rowIndex, writer, y1);
+ }
+ }
+
+ writer.context().page = endingPage;
+ writer.context().y = endingY;
+
+ var row = this.tableNode.table.body[rowIndex];
+ for (i = 0, l = row.length; i < l; i++) {
+ if (row[i].rowSpan) {
+ this.rowSpanData[i].rowSpan = row[i].rowSpan;
+
+ // fix colSpans
+ if (row[i].colSpan && row[i].colSpan > 1) {
+ for (var j = 1; j < row[i].rowSpan; j++) {
+ this.tableNode.table.body[rowIndex + j][i]._colSpan = row[i].colSpan;
+ }
+ }
+ // fix rowSpans
+ if (row[i].rowSpan && row[i].rowSpan > 1) {
+ for (var j = 1; j < row[i].rowSpan; j++) {
+ this.tableNode.table.body[rowIndex + j][i]._rowSpanCurrentOffset = j;
+ }
+ }
+ }
+
+ if (this.rowSpanData[i].rowSpan > 0) {
+ this.rowSpanData[i].rowSpan--;
+ }
+ }
+
+ this.drawHorizontalLine(rowIndex + 1, writer);
+
+ if (this.headerRows && rowIndex === this.headerRows - 1) {
+ this.headerRepeatable = writer.currentBlockToRepeatable();
+ }
+
+ if (this.dontBreakRows) {
+ writer.tracker.auto('pageChanged',
+ function () {
+ if (!self.headerRows && self.layout.hLineWhenBroken !== false) {
+ self.drawHorizontalLine(rowIndex, writer);
+ }
+ },
+ function () {
+ writer.commitUnbreakableBlock();
+ }
+ );
+ }
+
+ if (this.headerRepeatable && (rowIndex === (this.rowsWithoutPageBreak - 1) || rowIndex === this.tableNode.table.body.length - 1)) {
+ writer.commitUnbreakableBlock();
+ writer.pushToRepeatables(this.headerRepeatable);
+ this.cleanUpRepeatables = true;
+ this.headerRepeatable = null;
+ }
+
+ function getLineXs() {
+ var result = [];
+ var cols = 0;
+
+ for (var i = 0, l = self.tableNode.table.body[rowIndex].length; i < l; i++) {
+ if (!cols) {
+ result.push({ x: self.rowSpanData[i].left, index: i });
+
+ var item = self.tableNode.table.body[rowIndex][i];
+ cols = (item._colSpan || item.colSpan || 0);
+ }
+ if (cols > 0) {
+ cols--;
+ }
+ }
+
+ result.push({ x: self.rowSpanData[self.rowSpanData.length - 1].left, index: self.rowSpanData.length - 1 });
+
+ return result;
+ }
+};
+
+module.exports = TableProcessor;
/***/ }),
-/* 452 */
+/* 547 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-module.exports = {
- '4A0': [4767.87, 6740.79],
- '2A0': [3370.39, 4767.87],
- A0: [2383.94, 3370.39],
- A1: [1683.78, 2383.94],
- A2: [1190.55, 1683.78],
- A3: [841.89, 1190.55],
- A4: [595.28, 841.89],
- A5: [419.53, 595.28],
- A6: [297.64, 419.53],
- A7: [209.76, 297.64],
- A8: [147.40, 209.76],
- A9: [104.88, 147.40],
- A10: [73.70, 104.88],
- B0: [2834.65, 4008.19],
- B1: [2004.09, 2834.65],
- B2: [1417.32, 2004.09],
- B3: [1000.63, 1417.32],
- B4: [708.66, 1000.63],
- B5: [498.90, 708.66],
- B6: [354.33, 498.90],
- B7: [249.45, 354.33],
- B8: [175.75, 249.45],
- B9: [124.72, 175.75],
- B10: [87.87, 124.72],
- C0: [2599.37, 3676.54],
- C1: [1836.85, 2599.37],
- C2: [1298.27, 1836.85],
- C3: [918.43, 1298.27],
- C4: [649.13, 918.43],
- C5: [459.21, 649.13],
- C6: [323.15, 459.21],
- C7: [229.61, 323.15],
- C8: [161.57, 229.61],
- C9: [113.39, 161.57],
- C10: [79.37, 113.39],
- RA0: [2437.80, 3458.27],
- RA1: [1729.13, 2437.80],
- RA2: [1218.90, 1729.13],
- RA3: [864.57, 1218.90],
- RA4: [609.45, 864.57],
- SRA0: [2551.18, 3628.35],
- SRA1: [1814.17, 2551.18],
- SRA2: [1275.59, 1814.17],
- SRA3: [907.09, 1275.59],
- SRA4: [637.80, 907.09],
- EXECUTIVE: [521.86, 756.00],
- FOLIO: [612.00, 936.00],
- LEGAL: [612.00, 1008.00],
- LETTER: [612.00, 792.00],
- TABLOID: [792.00, 1224.00]
-};
+
+
+module.exports = {
+ '4A0': [4767.87, 6740.79],
+ '2A0': [3370.39, 4767.87],
+ A0: [2383.94, 3370.39],
+ A1: [1683.78, 2383.94],
+ A2: [1190.55, 1683.78],
+ A3: [841.89, 1190.55],
+ A4: [595.28, 841.89],
+ A5: [419.53, 595.28],
+ A6: [297.64, 419.53],
+ A7: [209.76, 297.64],
+ A8: [147.40, 209.76],
+ A9: [104.88, 147.40],
+ A10: [73.70, 104.88],
+ B0: [2834.65, 4008.19],
+ B1: [2004.09, 2834.65],
+ B2: [1417.32, 2004.09],
+ B3: [1000.63, 1417.32],
+ B4: [708.66, 1000.63],
+ B5: [498.90, 708.66],
+ B6: [354.33, 498.90],
+ B7: [249.45, 354.33],
+ B8: [175.75, 249.45],
+ B9: [124.72, 175.75],
+ B10: [87.87, 124.72],
+ C0: [2599.37, 3676.54],
+ C1: [1836.85, 2599.37],
+ C2: [1298.27, 1836.85],
+ C3: [918.43, 1298.27],
+ C4: [649.13, 918.43],
+ C5: [459.21, 649.13],
+ C6: [323.15, 459.21],
+ C7: [229.61, 323.15],
+ C8: [161.57, 229.61],
+ C9: [113.39, 161.57],
+ C10: [79.37, 113.39],
+ RA0: [2437.80, 3458.27],
+ RA1: [1729.13, 2437.80],
+ RA2: [1218.90, 1729.13],
+ RA3: [864.57, 1218.90],
+ RA4: [609.45, 864.57],
+ SRA0: [2551.18, 3628.35],
+ SRA1: [1814.17, 2551.18],
+ SRA2: [1275.59, 1814.17],
+ SRA3: [907.09, 1275.59],
+ SRA4: [637.80, 907.09],
+ EXECUTIVE: [521.86, 756.00],
+ FOLIO: [612.00, 936.00],
+ LEGAL: [612.00, 1008.00],
+ LETTER: [612.00, 792.00],
+ TABLOID: [792.00, 1224.00]
+};
/***/ }),
-/* 453 */
+/* 548 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-/* WEBPACK VAR INJECTION */(function(Buffer) {
-
-function ImageMeasure(pdfKitDoc, imageDictionary) {
- this.pdfKitDoc = pdfKitDoc;
- this.imageDictionary = imageDictionary || {};
-}
-
-ImageMeasure.prototype.measureImage = function (src) {
- var image;
- var that = this;
-
- if (!this.pdfKitDoc._imageRegistry[src]) {
- try {
- image = this.pdfKitDoc.openImage(realImageSrc(src));
- if (!image) {
- throw 'No image';
- }
- } catch (error) {
- throw 'Invalid image: ' + error.toString() + '\nImages dictionary should contain dataURL entries (or local file paths in node.js)';
- }
- image.embed(this.pdfKitDoc);
- this.pdfKitDoc._imageRegistry[src] = image;
- } else {
- image = this.pdfKitDoc._imageRegistry[src];
- }
-
- return { width: image.width, height: image.height };
-
- function realImageSrc(src) {
- var img = that.imageDictionary[src];
-
- if (!img) {
- return src;
- }
-
- var index = img.indexOf('base64,');
- if (index < 0) {
- return that.imageDictionary[src];
- }
-
- return Buffer.from(img.substring(index + 7), 'base64');
- }
-};
-
-module.exports = ImageMeasure;
+/* WEBPACK VAR INJECTION */(function(Buffer) {
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(4).Buffer))
+var fs = __webpack_require__(53);
+
+function ImageMeasure(pdfKitDoc, imageDictionary) {
+ this.pdfKitDoc = pdfKitDoc;
+ this.imageDictionary = imageDictionary || {};
+}
+
+ImageMeasure.prototype.measureImage = function (src) {
+ var image;
+ var that = this;
+
+ if (!this.pdfKitDoc._imageRegistry[src]) {
+ try {
+ image = this.pdfKitDoc.openImage(realImageSrc(src));
+ if (!image) {
+ throw 'No image';
+ }
+ } catch (error) {
+ throw 'Invalid image: ' + error.toString() + '\nImages dictionary should contain dataURL entries (or local file paths in node.js)';
+ }
+ image.embed(this.pdfKitDoc);
+ this.pdfKitDoc._imageRegistry[src] = image;
+ } else {
+ image = this.pdfKitDoc._imageRegistry[src];
+ }
+
+ return { width: image.width, height: image.height };
+
+ function realImageSrc(src) {
+ var img = that.imageDictionary[src];
+
+ if (!img) {
+ return src;
+ }
+
+ if (fs.existsSync(img)) {
+ return fs.readFileSync(img);
+ }
+
+ var index = img.indexOf('base64,');
+ if (index < 0) {
+ return that.imageDictionary[src];
+ }
+
+ return Buffer.from(img.substring(index + 7), 'base64');
+ }
+};
+
+module.exports = ImageMeasure;
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10).Buffer))
/***/ }),
-/* 454 */
+/* 549 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-
-
-function SVGMeasure() {
-}
-
-SVGMeasure.prototype.getSVGNode = function (svgString) {
- // remove newlines
- svgString = svgString.replace(/\r?\n|\r/g, "");
-
- var svgNodeMatches = svgString.match(/