scratch-paint 4.1.50 → 4.1.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = 108);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 110);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ([
@@ -129,7 +129,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
129
129
 
130
130
  var paper = function(self, undefined) {
131
131
 
132
- self = self || __webpack_require__(84);
132
+ self = self || __webpack_require__(85);
133
133
  var window = self.window ? self.window : self,
134
134
  document = self.document;
135
135
 
@@ -15869,7 +15869,7 @@ Base.exports.PaperScript = function() {
15869
15869
  var global = this,
15870
15870
  acorn = global.acorn;
15871
15871
  if (!acorn && "function" !== 'undefined') {
15872
- try { acorn = __webpack_require__(85); } catch(e) {}
15872
+ try { acorn = __webpack_require__(86); } catch(e) {}
15873
15873
  }
15874
15874
  if (!acorn) {
15875
15875
  var exports, module;
@@ -17647,7 +17647,7 @@ var paper = new (PaperScope.inject(Base.exports, {
17647
17647
  }))();
17648
17648
 
17649
17649
  if (paper.agent.node) {
17650
- __webpack_require__(86)(paper);
17650
+ __webpack_require__(87)(paper);
17651
17651
  }
17652
17652
 
17653
17653
  if (true) {
@@ -19278,7 +19278,7 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
19278
19278
  /***/ (function(module, exports, __webpack_require__) {
19279
19279
 
19280
19280
  var api = __webpack_require__(11);
19281
- var content = __webpack_require__(98);
19281
+ var content = __webpack_require__(99);
19282
19282
 
19283
19283
  content = content.__esModule ? content.default : content;
19284
19284
 
@@ -19302,7 +19302,7 @@ module.exports = content.locals || {};
19302
19302
  /***/ (function(module, exports, __webpack_require__) {
19303
19303
 
19304
19304
  var api = __webpack_require__(11);
19305
- var content = __webpack_require__(107);
19305
+ var content = __webpack_require__(109);
19306
19306
 
19307
19307
  content = content.__esModule ? content.default : content;
19308
19308
 
@@ -19326,7 +19326,7 @@ module.exports = content.locals || {};
19326
19326
  /***/ (function(module, exports, __webpack_require__) {
19327
19327
 
19328
19328
  var api = __webpack_require__(11);
19329
- var content = __webpack_require__(105);
19329
+ var content = __webpack_require__(107);
19330
19330
 
19331
19331
  content = content.__esModule ? content.default : content;
19332
19332
 
@@ -19356,7 +19356,7 @@ module.exports = require("react-intl");
19356
19356
  /***/ (function(module, exports, __webpack_require__) {
19357
19357
 
19358
19358
  var api = __webpack_require__(11);
19359
- var content = __webpack_require__(104);
19359
+ var content = __webpack_require__(105);
19360
19360
 
19361
19361
  content = content.__esModule ? content.default : content;
19362
19362
 
@@ -19755,7 +19755,7 @@ function toComment(sourceMap) {
19755
19755
  /***/ (function(module, exports, __webpack_require__) {
19756
19756
 
19757
19757
  var api = __webpack_require__(11);
19758
- var content = __webpack_require__(106);
19758
+ var content = __webpack_require__(108);
19759
19759
 
19760
19760
  content = content.__esModule ? content.default : content;
19761
19761
 
@@ -19838,7 +19838,7 @@ module.exports = keyMirror;
19838
19838
  /* 15 */
19839
19839
  /***/ (function(module, exports, __webpack_require__) {
19840
19840
 
19841
- var convert = __webpack_require__(93);
19841
+ var convert = __webpack_require__(94);
19842
19842
 
19843
19843
  module.exports = function (cstr) {
19844
19844
  var m, conv, parts, alpha;
@@ -19927,10 +19927,10 @@ module.exports = function (cstr) {
19927
19927
  /* 16 */
19928
19928
  /***/ (function(module, exports, __webpack_require__) {
19929
19929
 
19930
- /* WEBPACK VAR INJECTION */(function(global) {/**
19931
- * lodash (Custom Build) <https://lodash.com/>
19930
+ /* WEBPACK VAR INJECTION */(function(global, module) {/**
19931
+ * Lodash (Custom Build) <https://lodash.com/>
19932
19932
  * Build: `lodash modularize exports="npm" -o ./`
19933
- * Copyright jQuery Foundation and other contributors <https://jquery.org/>
19933
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
19934
19934
  * Released under MIT license <https://lodash.com/license>
19935
19935
  * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
19936
19936
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
@@ -19939,18 +19939,66 @@ module.exports = function (cstr) {
19939
19939
  /** Used as the size to enable large array optimizations. */
19940
19940
  var LARGE_ARRAY_SIZE = 200;
19941
19941
 
19942
+ /** Error message constants. */
19943
+ var FUNC_ERROR_TEXT = 'Expected a function';
19944
+
19942
19945
  /** Used to stand-in for `undefined` hash values. */
19943
19946
  var HASH_UNDEFINED = '__lodash_hash_undefined__';
19944
19947
 
19948
+ /** Used as the maximum memoize cache size. */
19949
+ var MAX_MEMOIZE_SIZE = 500;
19950
+
19951
+ /** Used to compose bitmasks for cloning. */
19952
+ var CLONE_DEEP_FLAG = 1,
19953
+ CLONE_FLAT_FLAG = 2,
19954
+ CLONE_SYMBOLS_FLAG = 4;
19955
+
19956
+ /** Used to detect hot functions by number of calls within a span of milliseconds. */
19957
+ var HOT_COUNT = 800,
19958
+ HOT_SPAN = 16;
19959
+
19945
19960
  /** Used as references for various `Number` constants. */
19946
19961
  var INFINITY = 1 / 0,
19947
19962
  MAX_SAFE_INTEGER = 9007199254740991;
19948
19963
 
19949
19964
  /** `Object#toString` result references. */
19950
19965
  var argsTag = '[object Arguments]',
19966
+ arrayTag = '[object Array]',
19967
+ asyncTag = '[object AsyncFunction]',
19968
+ boolTag = '[object Boolean]',
19969
+ dateTag = '[object Date]',
19970
+ errorTag = '[object Error]',
19951
19971
  funcTag = '[object Function]',
19952
19972
  genTag = '[object GeneratorFunction]',
19953
- symbolTag = '[object Symbol]';
19973
+ mapTag = '[object Map]',
19974
+ numberTag = '[object Number]',
19975
+ nullTag = '[object Null]',
19976
+ objectTag = '[object Object]',
19977
+ promiseTag = '[object Promise]',
19978
+ proxyTag = '[object Proxy]',
19979
+ regexpTag = '[object RegExp]',
19980
+ setTag = '[object Set]',
19981
+ stringTag = '[object String]',
19982
+ symbolTag = '[object Symbol]',
19983
+ undefinedTag = '[object Undefined]',
19984
+ weakMapTag = '[object WeakMap]';
19985
+
19986
+ var arrayBufferTag = '[object ArrayBuffer]',
19987
+ dataViewTag = '[object DataView]',
19988
+ float32Tag = '[object Float32Array]',
19989
+ float64Tag = '[object Float64Array]',
19990
+ int8Tag = '[object Int8Array]',
19991
+ int16Tag = '[object Int16Array]',
19992
+ int32Tag = '[object Int32Array]',
19993
+ uint8Tag = '[object Uint8Array]',
19994
+ uint8ClampedTag = '[object Uint8ClampedArray]',
19995
+ uint16Tag = '[object Uint16Array]',
19996
+ uint32Tag = '[object Uint32Array]';
19997
+
19998
+ /** Used to match property names within property paths. */
19999
+ var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
20000
+ reIsPlainProp = /^\w*$/,
20001
+ rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
19954
20002
 
19955
20003
  /**
19956
20004
  * Used to match `RegExp`
@@ -19958,12 +20006,50 @@ var argsTag = '[object Arguments]',
19958
20006
  */
19959
20007
  var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
19960
20008
 
20009
+ /** Used to match backslashes in property paths. */
20010
+ var reEscapeChar = /\\(\\)?/g;
20011
+
20012
+ /** Used to match `RegExp` flags from their coerced string values. */
20013
+ var reFlags = /\w*$/;
20014
+
19961
20015
  /** Used to detect host constructors (Safari). */
19962
20016
  var reIsHostCtor = /^\[object .+?Constructor\]$/;
19963
20017
 
19964
20018
  /** Used to detect unsigned integer values. */
19965
20019
  var reIsUint = /^(?:0|[1-9]\d*)$/;
19966
20020
 
20021
+ /** Used to identify `toStringTag` values of typed arrays. */
20022
+ var typedArrayTags = {};
20023
+ typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
20024
+ typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
20025
+ typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
20026
+ typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
20027
+ typedArrayTags[uint32Tag] = true;
20028
+ typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
20029
+ typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
20030
+ typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
20031
+ typedArrayTags[errorTag] = typedArrayTags[funcTag] =
20032
+ typedArrayTags[mapTag] = typedArrayTags[numberTag] =
20033
+ typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
20034
+ typedArrayTags[setTag] = typedArrayTags[stringTag] =
20035
+ typedArrayTags[weakMapTag] = false;
20036
+
20037
+ /** Used to identify `toStringTag` values supported by `_.clone`. */
20038
+ var cloneableTags = {};
20039
+ cloneableTags[argsTag] = cloneableTags[arrayTag] =
20040
+ cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =
20041
+ cloneableTags[boolTag] = cloneableTags[dateTag] =
20042
+ cloneableTags[float32Tag] = cloneableTags[float64Tag] =
20043
+ cloneableTags[int8Tag] = cloneableTags[int16Tag] =
20044
+ cloneableTags[int32Tag] = cloneableTags[mapTag] =
20045
+ cloneableTags[numberTag] = cloneableTags[objectTag] =
20046
+ cloneableTags[regexpTag] = cloneableTags[setTag] =
20047
+ cloneableTags[stringTag] = cloneableTags[symbolTag] =
20048
+ cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
20049
+ cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
20050
+ cloneableTags[errorTag] = cloneableTags[funcTag] =
20051
+ cloneableTags[weakMapTag] = false;
20052
+
19967
20053
  /** Detect free variable `global` from Node.js. */
19968
20054
  var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
19969
20055
 
@@ -19973,6 +20059,38 @@ var freeSelf = typeof self == 'object' && self && self.Object === Object && self
19973
20059
  /** Used as a reference to the global object. */
19974
20060
  var root = freeGlobal || freeSelf || Function('return this')();
19975
20061
 
20062
+ /** Detect free variable `exports`. */
20063
+ var freeExports = true && exports && !exports.nodeType && exports;
20064
+
20065
+ /** Detect free variable `module`. */
20066
+ var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
20067
+
20068
+ /** Detect the popular CommonJS extension `module.exports`. */
20069
+ var moduleExports = freeModule && freeModule.exports === freeExports;
20070
+
20071
+ /** Detect free variable `process` from Node.js. */
20072
+ var freeProcess = moduleExports && freeGlobal.process;
20073
+
20074
+ /** Used to access faster Node.js helpers. */
20075
+ var nodeUtil = (function() {
20076
+ try {
20077
+ // Use `util.types` for Node.js 10+.
20078
+ var types = freeModule && freeModule.require && freeModule.require('util').types;
20079
+
20080
+ if (types) {
20081
+ return types;
20082
+ }
20083
+
20084
+ // Legacy `process.binding('util')` for Node.js < 10.
20085
+ return freeProcess && freeProcess.binding && freeProcess.binding('util');
20086
+ } catch (e) {}
20087
+ }());
20088
+
20089
+ /* Node.js helper references. */
20090
+ var nodeIsMap = nodeUtil && nodeUtil.isMap,
20091
+ nodeIsSet = nodeUtil && nodeUtil.isSet,
20092
+ nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
20093
+
19976
20094
  /**
19977
20095
  * A faster alternative to `Function#apply`, this function invokes `func`
19978
20096
  * with the `this` binding of `thisArg` and the arguments of `args`.
@@ -19994,38 +20112,48 @@ function apply(func, thisArg, args) {
19994
20112
  }
19995
20113
 
19996
20114
  /**
19997
- * A specialized version of `_.includes` for arrays without support for
19998
- * specifying an index to search from.
20115
+ * A specialized version of `_.forEach` for arrays without support for
20116
+ * iteratee shorthands.
19999
20117
  *
20000
20118
  * @private
20001
- * @param {Array} [array] The array to inspect.
20002
- * @param {*} target The value to search for.
20003
- * @returns {boolean} Returns `true` if `target` is found, else `false`.
20119
+ * @param {Array} [array] The array to iterate over.
20120
+ * @param {Function} iteratee The function invoked per iteration.
20121
+ * @returns {Array} Returns `array`.
20004
20122
  */
20005
- function arrayIncludes(array, value) {
20006
- var length = array ? array.length : 0;
20007
- return !!length && baseIndexOf(array, value, 0) > -1;
20123
+ function arrayEach(array, iteratee) {
20124
+ var index = -1,
20125
+ length = array == null ? 0 : array.length;
20126
+
20127
+ while (++index < length) {
20128
+ if (iteratee(array[index], index, array) === false) {
20129
+ break;
20130
+ }
20131
+ }
20132
+ return array;
20008
20133
  }
20009
20134
 
20010
20135
  /**
20011
- * This function is like `arrayIncludes` except that it accepts a comparator.
20136
+ * A specialized version of `_.filter` for arrays without support for
20137
+ * iteratee shorthands.
20012
20138
  *
20013
20139
  * @private
20014
- * @param {Array} [array] The array to inspect.
20015
- * @param {*} target The value to search for.
20016
- * @param {Function} comparator The comparator invoked per element.
20017
- * @returns {boolean} Returns `true` if `target` is found, else `false`.
20140
+ * @param {Array} [array] The array to iterate over.
20141
+ * @param {Function} predicate The function invoked per iteration.
20142
+ * @returns {Array} Returns the new filtered array.
20018
20143
  */
20019
- function arrayIncludesWith(array, value, comparator) {
20144
+ function arrayFilter(array, predicate) {
20020
20145
  var index = -1,
20021
- length = array ? array.length : 0;
20146
+ length = array == null ? 0 : array.length,
20147
+ resIndex = 0,
20148
+ result = [];
20022
20149
 
20023
20150
  while (++index < length) {
20024
- if (comparator(value, array[index])) {
20025
- return true;
20151
+ var value = array[index];
20152
+ if (predicate(value, index, array)) {
20153
+ result[resIndex++] = value;
20026
20154
  }
20027
20155
  }
20028
- return false;
20156
+ return result;
20029
20157
  }
20030
20158
 
20031
20159
  /**
@@ -20039,7 +20167,7 @@ function arrayIncludesWith(array, value, comparator) {
20039
20167
  */
20040
20168
  function arrayMap(array, iteratee) {
20041
20169
  var index = -1,
20042
- length = array ? array.length : 0,
20170
+ length = array == null ? 0 : array.length,
20043
20171
  result = Array(length);
20044
20172
 
20045
20173
  while (++index < length) {
@@ -20067,64 +20195,6 @@ function arrayPush(array, values) {
20067
20195
  return array;
20068
20196
  }
20069
20197
 
20070
- /**
20071
- * The base implementation of `_.findIndex` and `_.findLastIndex` without
20072
- * support for iteratee shorthands.
20073
- *
20074
- * @private
20075
- * @param {Array} array The array to inspect.
20076
- * @param {Function} predicate The function invoked per iteration.
20077
- * @param {number} fromIndex The index to search from.
20078
- * @param {boolean} [fromRight] Specify iterating from right to left.
20079
- * @returns {number} Returns the index of the matched value, else `-1`.
20080
- */
20081
- function baseFindIndex(array, predicate, fromIndex, fromRight) {
20082
- var length = array.length,
20083
- index = fromIndex + (fromRight ? 1 : -1);
20084
-
20085
- while ((fromRight ? index-- : ++index < length)) {
20086
- if (predicate(array[index], index, array)) {
20087
- return index;
20088
- }
20089
- }
20090
- return -1;
20091
- }
20092
-
20093
- /**
20094
- * The base implementation of `_.indexOf` without `fromIndex` bounds checks.
20095
- *
20096
- * @private
20097
- * @param {Array} array The array to inspect.
20098
- * @param {*} value The value to search for.
20099
- * @param {number} fromIndex The index to search from.
20100
- * @returns {number} Returns the index of the matched value, else `-1`.
20101
- */
20102
- function baseIndexOf(array, value, fromIndex) {
20103
- if (value !== value) {
20104
- return baseFindIndex(array, baseIsNaN, fromIndex);
20105
- }
20106
- var index = fromIndex - 1,
20107
- length = array.length;
20108
-
20109
- while (++index < length) {
20110
- if (array[index] === value) {
20111
- return index;
20112
- }
20113
- }
20114
- return -1;
20115
- }
20116
-
20117
- /**
20118
- * The base implementation of `_.isNaN` without support for number objects.
20119
- *
20120
- * @private
20121
- * @param {*} value The value to check.
20122
- * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
20123
- */
20124
- function baseIsNaN(value) {
20125
- return value !== value;
20126
- }
20127
-
20128
20198
  /**
20129
20199
  * The base implementation of `_.times` without support for iteratee shorthands
20130
20200
  * or max array length checks.
@@ -20157,18 +20227,6 @@ function baseUnary(func) {
20157
20227
  };
20158
20228
  }
20159
20229
 
20160
- /**
20161
- * Checks if a cache value for `key` exists.
20162
- *
20163
- * @private
20164
- * @param {Object} cache The cache to query.
20165
- * @param {string} key The key of the entry to check.
20166
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
20167
- */
20168
- function cacheHas(cache, key) {
20169
- return cache.has(key);
20170
- }
20171
-
20172
20230
  /**
20173
20231
  * Gets the value at `key` of `object`.
20174
20232
  *
@@ -20181,25 +20239,6 @@ function getValue(object, key) {
20181
20239
  return object == null ? undefined : object[key];
20182
20240
  }
20183
20241
 
20184
- /**
20185
- * Checks if `value` is a host object in IE < 9.
20186
- *
20187
- * @private
20188
- * @param {*} value The value to check.
20189
- * @returns {boolean} Returns `true` if `value` is a host object, else `false`.
20190
- */
20191
- function isHostObject(value) {
20192
- // Many host objects are `Object` objects that can coerce to strings
20193
- // despite having improperly defined `toString` methods.
20194
- var result = false;
20195
- if (value != null && typeof value.toString != 'function') {
20196
- try {
20197
- result = !!(value + '');
20198
- } catch (e) {}
20199
- }
20200
- return result;
20201
- }
20202
-
20203
20242
  /**
20204
20243
  * Creates a unary function that invokes `func` with its argument transformed.
20205
20244
  *
@@ -20222,24 +20261,27 @@ var arrayProto = Array.prototype,
20222
20261
  /** Used to detect overreaching core-js shims. */
20223
20262
  var coreJsData = root['__core-js_shared__'];
20224
20263
 
20225
- /** Used to detect methods masquerading as native. */
20226
- var maskSrcKey = (function() {
20227
- var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
20228
- return uid ? ('Symbol(src)_1.' + uid) : '';
20229
- }());
20230
-
20231
20264
  /** Used to resolve the decompiled source of functions. */
20232
20265
  var funcToString = funcProto.toString;
20233
20266
 
20234
20267
  /** Used to check objects for own properties. */
20235
20268
  var hasOwnProperty = objectProto.hasOwnProperty;
20236
20269
 
20270
+ /** Used to detect methods masquerading as native. */
20271
+ var maskSrcKey = (function() {
20272
+ var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
20273
+ return uid ? ('Symbol(src)_1.' + uid) : '';
20274
+ }());
20275
+
20237
20276
  /**
20238
20277
  * Used to resolve the
20239
20278
  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
20240
20279
  * of values.
20241
20280
  */
20242
- var objectToString = objectProto.toString;
20281
+ var nativeObjectToString = objectProto.toString;
20282
+
20283
+ /** Used to infer the `Object` constructor. */
20284
+ var objectCtorString = funcToString.call(Object);
20243
20285
 
20244
20286
  /** Used to detect if a method is native. */
20245
20287
  var reIsNative = RegExp('^' +
@@ -20248,20 +20290,76 @@ var reIsNative = RegExp('^' +
20248
20290
  );
20249
20291
 
20250
20292
  /** Built-in value references. */
20251
- var Symbol = root.Symbol,
20293
+ var Buffer = moduleExports ? root.Buffer : undefined,
20294
+ Symbol = root.Symbol,
20295
+ Uint8Array = root.Uint8Array,
20296
+ allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,
20252
20297
  getPrototype = overArg(Object.getPrototypeOf, Object),
20298
+ objectCreate = Object.create,
20253
20299
  propertyIsEnumerable = objectProto.propertyIsEnumerable,
20254
20300
  splice = arrayProto.splice,
20255
- spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;
20301
+ spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,
20302
+ symToStringTag = Symbol ? Symbol.toStringTag : undefined;
20303
+
20304
+ var defineProperty = (function() {
20305
+ try {
20306
+ var func = getNative(Object, 'defineProperty');
20307
+ func({}, '', {});
20308
+ return func;
20309
+ } catch (e) {}
20310
+ }());
20256
20311
 
20257
20312
  /* Built-in method references for those with the same name as other `lodash` methods. */
20258
20313
  var nativeGetSymbols = Object.getOwnPropertySymbols,
20259
- nativeMax = Math.max;
20314
+ nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,
20315
+ nativeKeys = overArg(Object.keys, Object),
20316
+ nativeMax = Math.max,
20317
+ nativeNow = Date.now;
20260
20318
 
20261
20319
  /* Built-in method references that are verified to be native. */
20262
- var Map = getNative(root, 'Map'),
20320
+ var DataView = getNative(root, 'DataView'),
20321
+ Map = getNative(root, 'Map'),
20322
+ Promise = getNative(root, 'Promise'),
20323
+ Set = getNative(root, 'Set'),
20324
+ WeakMap = getNative(root, 'WeakMap'),
20263
20325
  nativeCreate = getNative(Object, 'create');
20264
20326
 
20327
+ /** Used to detect maps, sets, and weakmaps. */
20328
+ var dataViewCtorString = toSource(DataView),
20329
+ mapCtorString = toSource(Map),
20330
+ promiseCtorString = toSource(Promise),
20331
+ setCtorString = toSource(Set),
20332
+ weakMapCtorString = toSource(WeakMap);
20333
+
20334
+ /** Used to convert symbols to primitives and strings. */
20335
+ var symbolProto = Symbol ? Symbol.prototype : undefined,
20336
+ symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,
20337
+ symbolToString = symbolProto ? symbolProto.toString : undefined;
20338
+
20339
+ /**
20340
+ * The base implementation of `_.create` without support for assigning
20341
+ * properties to the created object.
20342
+ *
20343
+ * @private
20344
+ * @param {Object} proto The object to inherit from.
20345
+ * @returns {Object} Returns the new object.
20346
+ */
20347
+ var baseCreate = (function() {
20348
+ function object() {}
20349
+ return function(proto) {
20350
+ if (!isObject(proto)) {
20351
+ return {};
20352
+ }
20353
+ if (objectCreate) {
20354
+ return objectCreate(proto);
20355
+ }
20356
+ object.prototype = proto;
20357
+ var result = new object;
20358
+ object.prototype = undefined;
20359
+ return result;
20360
+ };
20361
+ }());
20362
+
20265
20363
  /**
20266
20364
  * Creates a hash object.
20267
20365
  *
@@ -20271,7 +20369,7 @@ var Map = getNative(root, 'Map'),
20271
20369
  */
20272
20370
  function Hash(entries) {
20273
20371
  var index = -1,
20274
- length = entries ? entries.length : 0;
20372
+ length = entries == null ? 0 : entries.length;
20275
20373
 
20276
20374
  this.clear();
20277
20375
  while (++index < length) {
@@ -20289,6 +20387,7 @@ function Hash(entries) {
20289
20387
  */
20290
20388
  function hashClear() {
20291
20389
  this.__data__ = nativeCreate ? nativeCreate(null) : {};
20390
+ this.size = 0;
20292
20391
  }
20293
20392
 
20294
20393
  /**
@@ -20302,7 +20401,9 @@ function hashClear() {
20302
20401
  * @returns {boolean} Returns `true` if the entry was removed, else `false`.
20303
20402
  */
20304
20403
  function hashDelete(key) {
20305
- return this.has(key) && delete this.__data__[key];
20404
+ var result = this.has(key) && delete this.__data__[key];
20405
+ this.size -= result ? 1 : 0;
20406
+ return result;
20306
20407
  }
20307
20408
 
20308
20409
  /**
@@ -20334,7 +20435,7 @@ function hashGet(key) {
20334
20435
  */
20335
20436
  function hashHas(key) {
20336
20437
  var data = this.__data__;
20337
- return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key);
20438
+ return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
20338
20439
  }
20339
20440
 
20340
20441
  /**
@@ -20349,6 +20450,7 @@ function hashHas(key) {
20349
20450
  */
20350
20451
  function hashSet(key, value) {
20351
20452
  var data = this.__data__;
20453
+ this.size += this.has(key) ? 0 : 1;
20352
20454
  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
20353
20455
  return this;
20354
20456
  }
@@ -20369,7 +20471,7 @@ Hash.prototype.set = hashSet;
20369
20471
  */
20370
20472
  function ListCache(entries) {
20371
20473
  var index = -1,
20372
- length = entries ? entries.length : 0;
20474
+ length = entries == null ? 0 : entries.length;
20373
20475
 
20374
20476
  this.clear();
20375
20477
  while (++index < length) {
@@ -20387,6 +20489,7 @@ function ListCache(entries) {
20387
20489
  */
20388
20490
  function listCacheClear() {
20389
20491
  this.__data__ = [];
20492
+ this.size = 0;
20390
20493
  }
20391
20494
 
20392
20495
  /**
@@ -20411,6 +20514,7 @@ function listCacheDelete(key) {
20411
20514
  } else {
20412
20515
  splice.call(data, index, 1);
20413
20516
  }
20517
+ --this.size;
20414
20518
  return true;
20415
20519
  }
20416
20520
 
@@ -20458,6 +20562,7 @@ function listCacheSet(key, value) {
20458
20562
  index = assocIndexOf(data, key);
20459
20563
 
20460
20564
  if (index < 0) {
20565
+ ++this.size;
20461
20566
  data.push([key, value]);
20462
20567
  } else {
20463
20568
  data[index][1] = value;
@@ -20481,7 +20586,7 @@ ListCache.prototype.set = listCacheSet;
20481
20586
  */
20482
20587
  function MapCache(entries) {
20483
20588
  var index = -1,
20484
- length = entries ? entries.length : 0;
20589
+ length = entries == null ? 0 : entries.length;
20485
20590
 
20486
20591
  this.clear();
20487
20592
  while (++index < length) {
@@ -20498,6 +20603,7 @@ function MapCache(entries) {
20498
20603
  * @memberOf MapCache
20499
20604
  */
20500
20605
  function mapCacheClear() {
20606
+ this.size = 0;
20501
20607
  this.__data__ = {
20502
20608
  'hash': new Hash,
20503
20609
  'map': new (Map || ListCache),
@@ -20515,7 +20621,9 @@ function mapCacheClear() {
20515
20621
  * @returns {boolean} Returns `true` if the entry was removed, else `false`.
20516
20622
  */
20517
20623
  function mapCacheDelete(key) {
20518
- return getMapData(this, key)['delete'](key);
20624
+ var result = getMapData(this, key)['delete'](key);
20625
+ this.size -= result ? 1 : 0;
20626
+ return result;
20519
20627
  }
20520
20628
 
20521
20629
  /**
@@ -20555,7 +20663,11 @@ function mapCacheHas(key) {
20555
20663
  * @returns {Object} Returns the map cache instance.
20556
20664
  */
20557
20665
  function mapCacheSet(key, value) {
20558
- getMapData(this, key).set(key, value);
20666
+ var data = getMapData(this, key),
20667
+ size = data.size;
20668
+
20669
+ data.set(key, value);
20670
+ this.size += data.size == size ? 0 : 1;
20559
20671
  return this;
20560
20672
  }
20561
20673
 
@@ -20567,54 +20679,104 @@ MapCache.prototype.has = mapCacheHas;
20567
20679
  MapCache.prototype.set = mapCacheSet;
20568
20680
 
20569
20681
  /**
20570
- *
20571
- * Creates an array cache object to store unique values.
20682
+ * Creates a stack cache object to store key-value pairs.
20572
20683
  *
20573
20684
  * @private
20574
20685
  * @constructor
20575
- * @param {Array} [values] The values to cache.
20686
+ * @param {Array} [entries] The key-value pairs to cache.
20576
20687
  */
20577
- function SetCache(values) {
20578
- var index = -1,
20579
- length = values ? values.length : 0;
20688
+ function Stack(entries) {
20689
+ var data = this.__data__ = new ListCache(entries);
20690
+ this.size = data.size;
20691
+ }
20580
20692
 
20581
- this.__data__ = new MapCache;
20582
- while (++index < length) {
20583
- this.add(values[index]);
20584
- }
20693
+ /**
20694
+ * Removes all key-value entries from the stack.
20695
+ *
20696
+ * @private
20697
+ * @name clear
20698
+ * @memberOf Stack
20699
+ */
20700
+ function stackClear() {
20701
+ this.__data__ = new ListCache;
20702
+ this.size = 0;
20585
20703
  }
20586
20704
 
20587
20705
  /**
20588
- * Adds `value` to the array cache.
20706
+ * Removes `key` and its value from the stack.
20589
20707
  *
20590
20708
  * @private
20591
- * @name add
20592
- * @memberOf SetCache
20593
- * @alias push
20594
- * @param {*} value The value to cache.
20595
- * @returns {Object} Returns the cache instance.
20596
- */
20597
- function setCacheAdd(value) {
20598
- this.__data__.set(value, HASH_UNDEFINED);
20599
- return this;
20709
+ * @name delete
20710
+ * @memberOf Stack
20711
+ * @param {string} key The key of the value to remove.
20712
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
20713
+ */
20714
+ function stackDelete(key) {
20715
+ var data = this.__data__,
20716
+ result = data['delete'](key);
20717
+
20718
+ this.size = data.size;
20719
+ return result;
20720
+ }
20721
+
20722
+ /**
20723
+ * Gets the stack value for `key`.
20724
+ *
20725
+ * @private
20726
+ * @name get
20727
+ * @memberOf Stack
20728
+ * @param {string} key The key of the value to get.
20729
+ * @returns {*} Returns the entry value.
20730
+ */
20731
+ function stackGet(key) {
20732
+ return this.__data__.get(key);
20600
20733
  }
20601
20734
 
20602
20735
  /**
20603
- * Checks if `value` is in the array cache.
20736
+ * Checks if a stack value for `key` exists.
20604
20737
  *
20605
20738
  * @private
20606
20739
  * @name has
20607
- * @memberOf SetCache
20608
- * @param {*} value The value to search for.
20609
- * @returns {number} Returns `true` if `value` is found, else `false`.
20740
+ * @memberOf Stack
20741
+ * @param {string} key The key of the entry to check.
20742
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
20743
+ */
20744
+ function stackHas(key) {
20745
+ return this.__data__.has(key);
20746
+ }
20747
+
20748
+ /**
20749
+ * Sets the stack `key` to `value`.
20750
+ *
20751
+ * @private
20752
+ * @name set
20753
+ * @memberOf Stack
20754
+ * @param {string} key The key of the value to set.
20755
+ * @param {*} value The value to set.
20756
+ * @returns {Object} Returns the stack cache instance.
20610
20757
  */
20611
- function setCacheHas(value) {
20612
- return this.__data__.has(value);
20758
+ function stackSet(key, value) {
20759
+ var data = this.__data__;
20760
+ if (data instanceof ListCache) {
20761
+ var pairs = data.__data__;
20762
+ if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
20763
+ pairs.push([key, value]);
20764
+ this.size = ++data.size;
20765
+ return this;
20766
+ }
20767
+ data = this.__data__ = new MapCache(pairs);
20768
+ }
20769
+ data.set(key, value);
20770
+ this.size = data.size;
20771
+ return this;
20613
20772
  }
20614
20773
 
20615
- // Add methods to `SetCache`.
20616
- SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;
20617
- SetCache.prototype.has = setCacheHas;
20774
+ // Add methods to `Stack`.
20775
+ Stack.prototype.clear = stackClear;
20776
+ Stack.prototype['delete'] = stackDelete;
20777
+ Stack.prototype.get = stackGet;
20778
+ Stack.prototype.has = stackHas;
20779
+ Stack.prototype.set = stackSet;
20618
20780
 
20619
20781
  /**
20620
20782
  * Creates an array of the enumerable property names of the array-like `value`.
@@ -20625,24 +20787,50 @@ SetCache.prototype.has = setCacheHas;
20625
20787
  * @returns {Array} Returns the array of property names.
20626
20788
  */
20627
20789
  function arrayLikeKeys(value, inherited) {
20628
- // Safari 8.1 makes `arguments.callee` enumerable in strict mode.
20629
- // Safari 9 makes `arguments.length` enumerable in strict mode.
20630
- var result = (isArray(value) || isArguments(value))
20631
- ? baseTimes(value.length, String)
20632
- : [];
20633
-
20634
- var length = result.length,
20635
- skipIndexes = !!length;
20790
+ var isArr = isArray(value),
20791
+ isArg = !isArr && isArguments(value),
20792
+ isBuff = !isArr && !isArg && isBuffer(value),
20793
+ isType = !isArr && !isArg && !isBuff && isTypedArray(value),
20794
+ skipIndexes = isArr || isArg || isBuff || isType,
20795
+ result = skipIndexes ? baseTimes(value.length, String) : [],
20796
+ length = result.length;
20636
20797
 
20637
20798
  for (var key in value) {
20638
20799
  if ((inherited || hasOwnProperty.call(value, key)) &&
20639
- !(skipIndexes && (key == 'length' || isIndex(key, length)))) {
20800
+ !(skipIndexes && (
20801
+ // Safari 9 has enumerable `arguments.length` in strict mode.
20802
+ key == 'length' ||
20803
+ // Node.js 0.10 has enumerable non-index properties on buffers.
20804
+ (isBuff && (key == 'offset' || key == 'parent')) ||
20805
+ // PhantomJS 2 has enumerable non-index properties on typed arrays.
20806
+ (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
20807
+ // Skip index properties.
20808
+ isIndex(key, length)
20809
+ ))) {
20640
20810
  result.push(key);
20641
20811
  }
20642
20812
  }
20643
20813
  return result;
20644
20814
  }
20645
20815
 
20816
+ /**
20817
+ * Assigns `value` to `key` of `object` if the existing value is not equivalent
20818
+ * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
20819
+ * for equality comparisons.
20820
+ *
20821
+ * @private
20822
+ * @param {Object} object The object to modify.
20823
+ * @param {string} key The key of the property to assign.
20824
+ * @param {*} value The value to assign.
20825
+ */
20826
+ function assignValue(object, key, value) {
20827
+ var objValue = object[key];
20828
+ if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
20829
+ (value === undefined && !(key in object))) {
20830
+ baseAssignValue(object, key, value);
20831
+ }
20832
+ }
20833
+
20646
20834
  /**
20647
20835
  * Gets the index at which the `key` is found in `array` of key-value pairs.
20648
20836
  *
@@ -20662,58 +20850,142 @@ function assocIndexOf(array, key) {
20662
20850
  }
20663
20851
 
20664
20852
  /**
20665
- * The base implementation of methods like `_.difference` without support
20666
- * for excluding multiple arrays or iteratee shorthands.
20853
+ * The base implementation of `_.assign` without support for multiple sources
20854
+ * or `customizer` functions.
20667
20855
  *
20668
20856
  * @private
20669
- * @param {Array} array The array to inspect.
20670
- * @param {Array} values The values to exclude.
20671
- * @param {Function} [iteratee] The iteratee invoked per element.
20672
- * @param {Function} [comparator] The comparator invoked per element.
20673
- * @returns {Array} Returns the new array of filtered values.
20857
+ * @param {Object} object The destination object.
20858
+ * @param {Object} source The source object.
20859
+ * @returns {Object} Returns `object`.
20674
20860
  */
20675
- function baseDifference(array, values, iteratee, comparator) {
20676
- var index = -1,
20677
- includes = arrayIncludes,
20678
- isCommon = true,
20679
- length = array.length,
20680
- result = [],
20681
- valuesLength = values.length;
20861
+ function baseAssign(object, source) {
20862
+ return object && copyObject(source, keys(source), object);
20863
+ }
20682
20864
 
20683
- if (!length) {
20684
- return result;
20865
+ /**
20866
+ * The base implementation of `_.assignIn` without support for multiple sources
20867
+ * or `customizer` functions.
20868
+ *
20869
+ * @private
20870
+ * @param {Object} object The destination object.
20871
+ * @param {Object} source The source object.
20872
+ * @returns {Object} Returns `object`.
20873
+ */
20874
+ function baseAssignIn(object, source) {
20875
+ return object && copyObject(source, keysIn(source), object);
20876
+ }
20877
+
20878
+ /**
20879
+ * The base implementation of `assignValue` and `assignMergeValue` without
20880
+ * value checks.
20881
+ *
20882
+ * @private
20883
+ * @param {Object} object The object to modify.
20884
+ * @param {string} key The key of the property to assign.
20885
+ * @param {*} value The value to assign.
20886
+ */
20887
+ function baseAssignValue(object, key, value) {
20888
+ if (key == '__proto__' && defineProperty) {
20889
+ defineProperty(object, key, {
20890
+ 'configurable': true,
20891
+ 'enumerable': true,
20892
+ 'value': value,
20893
+ 'writable': true
20894
+ });
20895
+ } else {
20896
+ object[key] = value;
20685
20897
  }
20686
- if (iteratee) {
20687
- values = arrayMap(values, baseUnary(iteratee));
20898
+ }
20899
+
20900
+ /**
20901
+ * The base implementation of `_.clone` and `_.cloneDeep` which tracks
20902
+ * traversed objects.
20903
+ *
20904
+ * @private
20905
+ * @param {*} value The value to clone.
20906
+ * @param {boolean} bitmask The bitmask flags.
20907
+ * 1 - Deep clone
20908
+ * 2 - Flatten inherited properties
20909
+ * 4 - Clone symbols
20910
+ * @param {Function} [customizer] The function to customize cloning.
20911
+ * @param {string} [key] The key of `value`.
20912
+ * @param {Object} [object] The parent object of `value`.
20913
+ * @param {Object} [stack] Tracks traversed objects and their clone counterparts.
20914
+ * @returns {*} Returns the cloned value.
20915
+ */
20916
+ function baseClone(value, bitmask, customizer, key, object, stack) {
20917
+ var result,
20918
+ isDeep = bitmask & CLONE_DEEP_FLAG,
20919
+ isFlat = bitmask & CLONE_FLAT_FLAG,
20920
+ isFull = bitmask & CLONE_SYMBOLS_FLAG;
20921
+
20922
+ if (customizer) {
20923
+ result = object ? customizer(value, key, object, stack) : customizer(value);
20688
20924
  }
20689
- if (comparator) {
20690
- includes = arrayIncludesWith;
20691
- isCommon = false;
20925
+ if (result !== undefined) {
20926
+ return result;
20692
20927
  }
20693
- else if (values.length >= LARGE_ARRAY_SIZE) {
20694
- includes = cacheHas;
20695
- isCommon = false;
20696
- values = new SetCache(values);
20928
+ if (!isObject(value)) {
20929
+ return value;
20697
20930
  }
20698
- outer:
20699
- while (++index < length) {
20700
- var value = array[index],
20701
- computed = iteratee ? iteratee(value) : value;
20702
-
20703
- value = (comparator || value !== 0) ? value : 0;
20704
- if (isCommon && computed === computed) {
20705
- var valuesIndex = valuesLength;
20706
- while (valuesIndex--) {
20707
- if (values[valuesIndex] === computed) {
20708
- continue outer;
20709
- }
20710
- }
20711
- result.push(value);
20931
+ var isArr = isArray(value);
20932
+ if (isArr) {
20933
+ result = initCloneArray(value);
20934
+ if (!isDeep) {
20935
+ return copyArray(value, result);
20712
20936
  }
20713
- else if (!includes(values, computed, comparator)) {
20714
- result.push(value);
20937
+ } else {
20938
+ var tag = getTag(value),
20939
+ isFunc = tag == funcTag || tag == genTag;
20940
+
20941
+ if (isBuffer(value)) {
20942
+ return cloneBuffer(value, isDeep);
20715
20943
  }
20944
+ if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
20945
+ result = (isFlat || isFunc) ? {} : initCloneObject(value);
20946
+ if (!isDeep) {
20947
+ return isFlat
20948
+ ? copySymbolsIn(value, baseAssignIn(result, value))
20949
+ : copySymbols(value, baseAssign(result, value));
20950
+ }
20951
+ } else {
20952
+ if (!cloneableTags[tag]) {
20953
+ return object ? value : {};
20954
+ }
20955
+ result = initCloneByTag(value, tag, isDeep);
20956
+ }
20957
+ }
20958
+ // Check for circular references and return its corresponding clone.
20959
+ stack || (stack = new Stack);
20960
+ var stacked = stack.get(value);
20961
+ if (stacked) {
20962
+ return stacked;
20716
20963
  }
20964
+ stack.set(value, result);
20965
+
20966
+ if (isSet(value)) {
20967
+ value.forEach(function(subValue) {
20968
+ result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
20969
+ });
20970
+ } else if (isMap(value)) {
20971
+ value.forEach(function(subValue, key) {
20972
+ result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));
20973
+ });
20974
+ }
20975
+
20976
+ var keysFunc = isFull
20977
+ ? (isFlat ? getAllKeysIn : getAllKeys)
20978
+ : (isFlat ? keysIn : keys);
20979
+
20980
+ var props = isArr ? undefined : keysFunc(value);
20981
+ arrayEach(props || value, function(subValue, key) {
20982
+ if (props) {
20983
+ key = subValue;
20984
+ subValue = value[key];
20985
+ }
20986
+ // Recursively populate clone (susceptible to call stack limits).
20987
+ assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));
20988
+ });
20717
20989
  return result;
20718
20990
  }
20719
20991
 
@@ -20751,6 +21023,26 @@ function baseFlatten(array, depth, predicate, isStrict, result) {
20751
21023
  return result;
20752
21024
  }
20753
21025
 
21026
+ /**
21027
+ * The base implementation of `_.get` without support for default values.
21028
+ *
21029
+ * @private
21030
+ * @param {Object} object The object to query.
21031
+ * @param {Array|string} path The path of the property to get.
21032
+ * @returns {*} Returns the resolved value.
21033
+ */
21034
+ function baseGet(object, path) {
21035
+ path = castPath(path, object);
21036
+
21037
+ var index = 0,
21038
+ length = path.length;
21039
+
21040
+ while (object != null && index < length) {
21041
+ object = object[toKey(path[index++])];
21042
+ }
21043
+ return (index && index == length) ? object : undefined;
21044
+ }
21045
+
20754
21046
  /**
20755
21047
  * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
20756
21048
  * `keysFunc` and `symbolsFunc` to get the enumerable property names and
@@ -20767,6 +21059,44 @@ function baseGetAllKeys(object, keysFunc, symbolsFunc) {
20767
21059
  return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
20768
21060
  }
20769
21061
 
21062
+ /**
21063
+ * The base implementation of `getTag` without fallbacks for buggy environments.
21064
+ *
21065
+ * @private
21066
+ * @param {*} value The value to query.
21067
+ * @returns {string} Returns the `toStringTag`.
21068
+ */
21069
+ function baseGetTag(value) {
21070
+ if (value == null) {
21071
+ return value === undefined ? undefinedTag : nullTag;
21072
+ }
21073
+ return (symToStringTag && symToStringTag in Object(value))
21074
+ ? getRawTag(value)
21075
+ : objectToString(value);
21076
+ }
21077
+
21078
+ /**
21079
+ * The base implementation of `_.isArguments`.
21080
+ *
21081
+ * @private
21082
+ * @param {*} value The value to check.
21083
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
21084
+ */
21085
+ function baseIsArguments(value) {
21086
+ return isObjectLike(value) && baseGetTag(value) == argsTag;
21087
+ }
21088
+
21089
+ /**
21090
+ * The base implementation of `_.isMap` without Node.js optimizations.
21091
+ *
21092
+ * @private
21093
+ * @param {*} value The value to check.
21094
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
21095
+ */
21096
+ function baseIsMap(value) {
21097
+ return isObjectLike(value) && getTag(value) == mapTag;
21098
+ }
21099
+
20770
21100
  /**
20771
21101
  * The base implementation of `_.isNative` without bad shim checks.
20772
21102
  *
@@ -20779,10 +21109,53 @@ function baseIsNative(value) {
20779
21109
  if (!isObject(value) || isMasked(value)) {
20780
21110
  return false;
20781
21111
  }
20782
- var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;
21112
+ var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
20783
21113
  return pattern.test(toSource(value));
20784
21114
  }
20785
21115
 
21116
+ /**
21117
+ * The base implementation of `_.isSet` without Node.js optimizations.
21118
+ *
21119
+ * @private
21120
+ * @param {*} value The value to check.
21121
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
21122
+ */
21123
+ function baseIsSet(value) {
21124
+ return isObjectLike(value) && getTag(value) == setTag;
21125
+ }
21126
+
21127
+ /**
21128
+ * The base implementation of `_.isTypedArray` without Node.js optimizations.
21129
+ *
21130
+ * @private
21131
+ * @param {*} value The value to check.
21132
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
21133
+ */
21134
+ function baseIsTypedArray(value) {
21135
+ return isObjectLike(value) &&
21136
+ isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
21137
+ }
21138
+
21139
+ /**
21140
+ * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
21141
+ *
21142
+ * @private
21143
+ * @param {Object} object The object to query.
21144
+ * @returns {Array} Returns the array of property names.
21145
+ */
21146
+ function baseKeys(object) {
21147
+ if (!isPrototype(object)) {
21148
+ return nativeKeys(object);
21149
+ }
21150
+ var result = [];
21151
+ for (var key in Object(object)) {
21152
+ if (hasOwnProperty.call(object, key) && key != 'constructor') {
21153
+ result.push(key);
21154
+ }
21155
+ }
21156
+ return result;
21157
+ }
21158
+
20786
21159
  /**
20787
21160
  * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
20788
21161
  *
@@ -20806,73 +21179,326 @@ function baseKeysIn(object) {
20806
21179
  }
20807
21180
 
20808
21181
  /**
20809
- * The base implementation of `_.pick` without support for individual
20810
- * property identifiers.
21182
+ * The base implementation of `setToString` without support for hot loop shorting.
20811
21183
  *
20812
21184
  * @private
20813
- * @param {Object} object The source object.
20814
- * @param {string[]} props The property identifiers to pick.
20815
- * @returns {Object} Returns the new object.
21185
+ * @param {Function} func The function to modify.
21186
+ * @param {Function} string The `toString` result.
21187
+ * @returns {Function} Returns `func`.
20816
21188
  */
20817
- function basePick(object, props) {
20818
- object = Object(object);
20819
- return basePickBy(object, props, function(value, key) {
20820
- return key in object;
21189
+ var baseSetToString = !defineProperty ? identity : function(func, string) {
21190
+ return defineProperty(func, 'toString', {
21191
+ 'configurable': true,
21192
+ 'enumerable': false,
21193
+ 'value': constant(string),
21194
+ 'writable': true
20821
21195
  });
21196
+ };
21197
+
21198
+ /**
21199
+ * The base implementation of `_.slice` without an iteratee call guard.
21200
+ *
21201
+ * @private
21202
+ * @param {Array} array The array to slice.
21203
+ * @param {number} [start=0] The start position.
21204
+ * @param {number} [end=array.length] The end position.
21205
+ * @returns {Array} Returns the slice of `array`.
21206
+ */
21207
+ function baseSlice(array, start, end) {
21208
+ var index = -1,
21209
+ length = array.length;
21210
+
21211
+ if (start < 0) {
21212
+ start = -start > length ? 0 : (length + start);
21213
+ }
21214
+ end = end > length ? length : end;
21215
+ if (end < 0) {
21216
+ end += length;
21217
+ }
21218
+ length = start > end ? 0 : ((end - start) >>> 0);
21219
+ start >>>= 0;
21220
+
21221
+ var result = Array(length);
21222
+ while (++index < length) {
21223
+ result[index] = array[index + start];
21224
+ }
21225
+ return result;
20822
21226
  }
20823
21227
 
20824
21228
  /**
20825
- * The base implementation of `_.pickBy` without support for iteratee shorthands.
21229
+ * The base implementation of `_.toString` which doesn't convert nullish
21230
+ * values to empty strings.
20826
21231
  *
20827
21232
  * @private
20828
- * @param {Object} object The source object.
20829
- * @param {string[]} props The property identifiers to pick from.
20830
- * @param {Function} predicate The function invoked per property.
20831
- * @returns {Object} Returns the new object.
21233
+ * @param {*} value The value to process.
21234
+ * @returns {string} Returns the string.
20832
21235
  */
20833
- function basePickBy(object, props, predicate) {
21236
+ function baseToString(value) {
21237
+ // Exit early for strings to avoid a performance hit in some environments.
21238
+ if (typeof value == 'string') {
21239
+ return value;
21240
+ }
21241
+ if (isArray(value)) {
21242
+ // Recursively convert values (susceptible to call stack limits).
21243
+ return arrayMap(value, baseToString) + '';
21244
+ }
21245
+ if (isSymbol(value)) {
21246
+ return symbolToString ? symbolToString.call(value) : '';
21247
+ }
21248
+ var result = (value + '');
21249
+ return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
21250
+ }
21251
+
21252
+ /**
21253
+ * The base implementation of `_.unset`.
21254
+ *
21255
+ * @private
21256
+ * @param {Object} object The object to modify.
21257
+ * @param {Array|string} path The property path to unset.
21258
+ * @returns {boolean} Returns `true` if the property is deleted, else `false`.
21259
+ */
21260
+ function baseUnset(object, path) {
21261
+ path = castPath(path, object);
21262
+
21263
+ // Prevent prototype pollution:
21264
+ // https://github.com/lodash/lodash/security/advisories/GHSA-xxjr-mmjv-4gpg
21265
+ // https://github.com/lodash/lodash/security/advisories/GHSA-f23m-r3pf-42rh
21266
+ // https://github.com/lodash/lodash/security/advisories/GHSA-w36w-cm3g-pc62
20834
21267
  var index = -1,
20835
- length = props.length,
20836
- result = {};
21268
+ length = path.length;
21269
+
21270
+ if (!length) {
21271
+ return true;
21272
+ }
20837
21273
 
20838
21274
  while (++index < length) {
20839
- var key = props[index],
20840
- value = object[key];
21275
+ var key = toKey(path[index]);
20841
21276
 
20842
- if (predicate(value, key)) {
20843
- result[key] = value;
21277
+ // Always block "__proto__" anywhere in the path if it's not expected
21278
+ if (key === '__proto__' && !hasOwnProperty.call(object, '__proto__')) {
21279
+ return false;
20844
21280
  }
21281
+
21282
+ // Block constructor/prototype as non-terminal traversal keys to prevent
21283
+ // escaping the object graph into built-in constructors and prototypes.
21284
+ if ((key === 'constructor' || key === 'prototype') && index < length - 1) {
21285
+ return false;
21286
+ }
21287
+ }
21288
+
21289
+ var obj = parent(object, path);
21290
+ return obj == null || delete obj[toKey(last(path))];
21291
+ }
21292
+
21293
+ /**
21294
+ * Casts `value` to a path array if it's not one.
21295
+ *
21296
+ * @private
21297
+ * @param {*} value The value to inspect.
21298
+ * @param {Object} [object] The object to query keys on.
21299
+ * @returns {Array} Returns the cast property path array.
21300
+ */
21301
+ function castPath(value, object) {
21302
+ if (isArray(value)) {
21303
+ return value;
20845
21304
  }
21305
+ return isKey(value, object) ? [value] : stringToPath(toString(value));
21306
+ }
21307
+
21308
+ /**
21309
+ * Creates a clone of `buffer`.
21310
+ *
21311
+ * @private
21312
+ * @param {Buffer} buffer The buffer to clone.
21313
+ * @param {boolean} [isDeep] Specify a deep clone.
21314
+ * @returns {Buffer} Returns the cloned buffer.
21315
+ */
21316
+ function cloneBuffer(buffer, isDeep) {
21317
+ if (isDeep) {
21318
+ return buffer.slice();
21319
+ }
21320
+ var length = buffer.length,
21321
+ result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
21322
+
21323
+ buffer.copy(result);
20846
21324
  return result;
20847
21325
  }
20848
21326
 
20849
21327
  /**
20850
- * The base implementation of `_.rest` which doesn't validate or coerce arguments.
21328
+ * Creates a clone of `arrayBuffer`.
20851
21329
  *
20852
21330
  * @private
20853
- * @param {Function} func The function to apply a rest parameter to.
20854
- * @param {number} [start=func.length-1] The start position of the rest parameter.
20855
- * @returns {Function} Returns the new function.
21331
+ * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
21332
+ * @returns {ArrayBuffer} Returns the cloned array buffer.
20856
21333
  */
20857
- function baseRest(func, start) {
20858
- start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
20859
- return function() {
20860
- var args = arguments,
20861
- index = -1,
20862
- length = nativeMax(args.length - start, 0),
20863
- array = Array(length);
21334
+ function cloneArrayBuffer(arrayBuffer) {
21335
+ var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
21336
+ new Uint8Array(result).set(new Uint8Array(arrayBuffer));
21337
+ return result;
21338
+ }
20864
21339
 
20865
- while (++index < length) {
20866
- array[index] = args[start + index];
21340
+ /**
21341
+ * Creates a clone of `dataView`.
21342
+ *
21343
+ * @private
21344
+ * @param {Object} dataView The data view to clone.
21345
+ * @param {boolean} [isDeep] Specify a deep clone.
21346
+ * @returns {Object} Returns the cloned data view.
21347
+ */
21348
+ function cloneDataView(dataView, isDeep) {
21349
+ var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;
21350
+ return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
21351
+ }
21352
+
21353
+ /**
21354
+ * Creates a clone of `regexp`.
21355
+ *
21356
+ * @private
21357
+ * @param {Object} regexp The regexp to clone.
21358
+ * @returns {Object} Returns the cloned regexp.
21359
+ */
21360
+ function cloneRegExp(regexp) {
21361
+ var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
21362
+ result.lastIndex = regexp.lastIndex;
21363
+ return result;
21364
+ }
21365
+
21366
+ /**
21367
+ * Creates a clone of the `symbol` object.
21368
+ *
21369
+ * @private
21370
+ * @param {Object} symbol The symbol object to clone.
21371
+ * @returns {Object} Returns the cloned symbol object.
21372
+ */
21373
+ function cloneSymbol(symbol) {
21374
+ return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
21375
+ }
21376
+
21377
+ /**
21378
+ * Creates a clone of `typedArray`.
21379
+ *
21380
+ * @private
21381
+ * @param {Object} typedArray The typed array to clone.
21382
+ * @param {boolean} [isDeep] Specify a deep clone.
21383
+ * @returns {Object} Returns the cloned typed array.
21384
+ */
21385
+ function cloneTypedArray(typedArray, isDeep) {
21386
+ var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
21387
+ return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
21388
+ }
21389
+
21390
+ /**
21391
+ * Copies the values of `source` to `array`.
21392
+ *
21393
+ * @private
21394
+ * @param {Array} source The array to copy values from.
21395
+ * @param {Array} [array=[]] The array to copy values to.
21396
+ * @returns {Array} Returns `array`.
21397
+ */
21398
+ function copyArray(source, array) {
21399
+ var index = -1,
21400
+ length = source.length;
21401
+
21402
+ array || (array = Array(length));
21403
+ while (++index < length) {
21404
+ array[index] = source[index];
21405
+ }
21406
+ return array;
21407
+ }
21408
+
21409
+ /**
21410
+ * Copies properties of `source` to `object`.
21411
+ *
21412
+ * @private
21413
+ * @param {Object} source The object to copy properties from.
21414
+ * @param {Array} props The property identifiers to copy.
21415
+ * @param {Object} [object={}] The object to copy properties to.
21416
+ * @param {Function} [customizer] The function to customize copied values.
21417
+ * @returns {Object} Returns `object`.
21418
+ */
21419
+ function copyObject(source, props, object, customizer) {
21420
+ var isNew = !object;
21421
+ object || (object = {});
21422
+
21423
+ var index = -1,
21424
+ length = props.length;
21425
+
21426
+ while (++index < length) {
21427
+ var key = props[index];
21428
+
21429
+ var newValue = customizer
21430
+ ? customizer(object[key], source[key], key, object, source)
21431
+ : undefined;
21432
+
21433
+ if (newValue === undefined) {
21434
+ newValue = source[key];
20867
21435
  }
20868
- index = -1;
20869
- var otherArgs = Array(start + 1);
20870
- while (++index < start) {
20871
- otherArgs[index] = args[index];
21436
+ if (isNew) {
21437
+ baseAssignValue(object, key, newValue);
21438
+ } else {
21439
+ assignValue(object, key, newValue);
20872
21440
  }
20873
- otherArgs[start] = array;
20874
- return apply(func, this, otherArgs);
20875
- };
21441
+ }
21442
+ return object;
21443
+ }
21444
+
21445
+ /**
21446
+ * Copies own symbols of `source` to `object`.
21447
+ *
21448
+ * @private
21449
+ * @param {Object} source The object to copy symbols from.
21450
+ * @param {Object} [object={}] The object to copy symbols to.
21451
+ * @returns {Object} Returns `object`.
21452
+ */
21453
+ function copySymbols(source, object) {
21454
+ return copyObject(source, getSymbols(source), object);
21455
+ }
21456
+
21457
+ /**
21458
+ * Copies own and inherited symbols of `source` to `object`.
21459
+ *
21460
+ * @private
21461
+ * @param {Object} source The object to copy symbols from.
21462
+ * @param {Object} [object={}] The object to copy symbols to.
21463
+ * @returns {Object} Returns `object`.
21464
+ */
21465
+ function copySymbolsIn(source, object) {
21466
+ return copyObject(source, getSymbolsIn(source), object);
21467
+ }
21468
+
21469
+ /**
21470
+ * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain
21471
+ * objects.
21472
+ *
21473
+ * @private
21474
+ * @param {*} value The value to inspect.
21475
+ * @param {string} key The key of the property to inspect.
21476
+ * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.
21477
+ */
21478
+ function customOmitClone(value) {
21479
+ return isPlainObject(value) ? undefined : value;
21480
+ }
21481
+
21482
+ /**
21483
+ * A specialized version of `baseRest` which flattens the rest array.
21484
+ *
21485
+ * @private
21486
+ * @param {Function} func The function to apply a rest parameter to.
21487
+ * @returns {Function} Returns the new function.
21488
+ */
21489
+ function flatRest(func) {
21490
+ return setToString(overRest(func, undefined, flatten), func + '');
21491
+ }
21492
+
21493
+ /**
21494
+ * Creates an array of own enumerable property names and symbols of `object`.
21495
+ *
21496
+ * @private
21497
+ * @param {Object} object The object to query.
21498
+ * @returns {Array} Returns the array of property names and symbols.
21499
+ */
21500
+ function getAllKeys(object) {
21501
+ return baseGetAllKeys(object, keys, getSymbols);
20876
21502
  }
20877
21503
 
20878
21504
  /**
@@ -20916,17 +21542,51 @@ function getNative(object, key) {
20916
21542
  }
20917
21543
 
20918
21544
  /**
20919
- * Creates an array of the own enumerable symbol properties of `object`.
21545
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
21546
+ *
21547
+ * @private
21548
+ * @param {*} value The value to query.
21549
+ * @returns {string} Returns the raw `toStringTag`.
21550
+ */
21551
+ function getRawTag(value) {
21552
+ var isOwn = hasOwnProperty.call(value, symToStringTag),
21553
+ tag = value[symToStringTag];
21554
+
21555
+ try {
21556
+ value[symToStringTag] = undefined;
21557
+ var unmasked = true;
21558
+ } catch (e) {}
21559
+
21560
+ var result = nativeObjectToString.call(value);
21561
+ if (unmasked) {
21562
+ if (isOwn) {
21563
+ value[symToStringTag] = tag;
21564
+ } else {
21565
+ delete value[symToStringTag];
21566
+ }
21567
+ }
21568
+ return result;
21569
+ }
21570
+
21571
+ /**
21572
+ * Creates an array of the own enumerable symbols of `object`.
20920
21573
  *
20921
21574
  * @private
20922
21575
  * @param {Object} object The object to query.
20923
21576
  * @returns {Array} Returns the array of symbols.
20924
21577
  */
20925
- var getSymbols = nativeGetSymbols ? overArg(nativeGetSymbols, Object) : stubArray;
21578
+ var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
21579
+ if (object == null) {
21580
+ return [];
21581
+ }
21582
+ object = Object(object);
21583
+ return arrayFilter(nativeGetSymbols(object), function(symbol) {
21584
+ return propertyIsEnumerable.call(object, symbol);
21585
+ });
21586
+ };
20926
21587
 
20927
21588
  /**
20928
- * Creates an array of the own and inherited enumerable symbol properties
20929
- * of `object`.
21589
+ * Creates an array of the own and inherited enumerable symbols of `object`.
20930
21590
  *
20931
21591
  * @private
20932
21592
  * @param {Object} object The object to query.
@@ -20941,6 +21601,119 @@ var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {
20941
21601
  return result;
20942
21602
  };
20943
21603
 
21604
+ /**
21605
+ * Gets the `toStringTag` of `value`.
21606
+ *
21607
+ * @private
21608
+ * @param {*} value The value to query.
21609
+ * @returns {string} Returns the `toStringTag`.
21610
+ */
21611
+ var getTag = baseGetTag;
21612
+
21613
+ // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
21614
+ if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
21615
+ (Map && getTag(new Map) != mapTag) ||
21616
+ (Promise && getTag(Promise.resolve()) != promiseTag) ||
21617
+ (Set && getTag(new Set) != setTag) ||
21618
+ (WeakMap && getTag(new WeakMap) != weakMapTag)) {
21619
+ getTag = function(value) {
21620
+ var result = baseGetTag(value),
21621
+ Ctor = result == objectTag ? value.constructor : undefined,
21622
+ ctorString = Ctor ? toSource(Ctor) : '';
21623
+
21624
+ if (ctorString) {
21625
+ switch (ctorString) {
21626
+ case dataViewCtorString: return dataViewTag;
21627
+ case mapCtorString: return mapTag;
21628
+ case promiseCtorString: return promiseTag;
21629
+ case setCtorString: return setTag;
21630
+ case weakMapCtorString: return weakMapTag;
21631
+ }
21632
+ }
21633
+ return result;
21634
+ };
21635
+ }
21636
+
21637
+ /**
21638
+ * Initializes an array clone.
21639
+ *
21640
+ * @private
21641
+ * @param {Array} array The array to clone.
21642
+ * @returns {Array} Returns the initialized clone.
21643
+ */
21644
+ function initCloneArray(array) {
21645
+ var length = array.length,
21646
+ result = new array.constructor(length);
21647
+
21648
+ // Add properties assigned by `RegExp#exec`.
21649
+ if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
21650
+ result.index = array.index;
21651
+ result.input = array.input;
21652
+ }
21653
+ return result;
21654
+ }
21655
+
21656
+ /**
21657
+ * Initializes an object clone.
21658
+ *
21659
+ * @private
21660
+ * @param {Object} object The object to clone.
21661
+ * @returns {Object} Returns the initialized clone.
21662
+ */
21663
+ function initCloneObject(object) {
21664
+ return (typeof object.constructor == 'function' && !isPrototype(object))
21665
+ ? baseCreate(getPrototype(object))
21666
+ : {};
21667
+ }
21668
+
21669
+ /**
21670
+ * Initializes an object clone based on its `toStringTag`.
21671
+ *
21672
+ * **Note:** This function only supports cloning values with tags of
21673
+ * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.
21674
+ *
21675
+ * @private
21676
+ * @param {Object} object The object to clone.
21677
+ * @param {string} tag The `toStringTag` of the object to clone.
21678
+ * @param {boolean} [isDeep] Specify a deep clone.
21679
+ * @returns {Object} Returns the initialized clone.
21680
+ */
21681
+ function initCloneByTag(object, tag, isDeep) {
21682
+ var Ctor = object.constructor;
21683
+ switch (tag) {
21684
+ case arrayBufferTag:
21685
+ return cloneArrayBuffer(object);
21686
+
21687
+ case boolTag:
21688
+ case dateTag:
21689
+ return new Ctor(+object);
21690
+
21691
+ case dataViewTag:
21692
+ return cloneDataView(object, isDeep);
21693
+
21694
+ case float32Tag: case float64Tag:
21695
+ case int8Tag: case int16Tag: case int32Tag:
21696
+ case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
21697
+ return cloneTypedArray(object, isDeep);
21698
+
21699
+ case mapTag:
21700
+ return new Ctor;
21701
+
21702
+ case numberTag:
21703
+ case stringTag:
21704
+ return new Ctor(object);
21705
+
21706
+ case regexpTag:
21707
+ return cloneRegExp(object);
21708
+
21709
+ case setTag:
21710
+ return new Ctor;
21711
+
21712
+ case symbolTag:
21713
+ return cloneSymbol(object);
21714
+ }
21715
+ }
21716
+
20944
21717
  /**
20945
21718
  * Checks if `value` is a flattenable `arguments` object or array.
20946
21719
  *
@@ -20962,10 +21735,34 @@ function isFlattenable(value) {
20962
21735
  * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
20963
21736
  */
20964
21737
  function isIndex(value, length) {
21738
+ var type = typeof value;
20965
21739
  length = length == null ? MAX_SAFE_INTEGER : length;
21740
+
20966
21741
  return !!length &&
20967
- (typeof value == 'number' || reIsUint.test(value)) &&
20968
- (value > -1 && value % 1 == 0 && value < length);
21742
+ (type == 'number' ||
21743
+ (type != 'symbol' && reIsUint.test(value))) &&
21744
+ (value > -1 && value % 1 == 0 && value < length);
21745
+ }
21746
+
21747
+ /**
21748
+ * Checks if `value` is a property name and not a property path.
21749
+ *
21750
+ * @private
21751
+ * @param {*} value The value to check.
21752
+ * @param {Object} [object] The object to query keys on.
21753
+ * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
21754
+ */
21755
+ function isKey(value, object) {
21756
+ if (isArray(value)) {
21757
+ return false;
21758
+ }
21759
+ var type = typeof value;
21760
+ if (type == 'number' || type == 'symbol' || type == 'boolean' ||
21761
+ value == null || isSymbol(value)) {
21762
+ return true;
21763
+ }
21764
+ return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
21765
+ (object != null && value in Object(object));
20969
21766
  }
20970
21767
 
20971
21768
  /**
@@ -21007,6 +21804,26 @@ function isPrototype(value) {
21007
21804
  return value === proto;
21008
21805
  }
21009
21806
 
21807
+ /**
21808
+ * A specialized version of `_.memoize` which clears the memoized function's
21809
+ * cache when it exceeds `MAX_MEMOIZE_SIZE`.
21810
+ *
21811
+ * @private
21812
+ * @param {Function} func The function to have its output memoized.
21813
+ * @returns {Function} Returns the new memoized function.
21814
+ */
21815
+ function memoizeCapped(func) {
21816
+ var result = memoize(func, function(key) {
21817
+ if (cache.size === MAX_MEMOIZE_SIZE) {
21818
+ cache.clear();
21819
+ }
21820
+ return key;
21821
+ });
21822
+
21823
+ var cache = result.cache;
21824
+ return result;
21825
+ }
21826
+
21010
21827
  /**
21011
21828
  * This function is like
21012
21829
  * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
@@ -21026,6 +21843,116 @@ function nativeKeysIn(object) {
21026
21843
  return result;
21027
21844
  }
21028
21845
 
21846
+ /**
21847
+ * Converts `value` to a string using `Object.prototype.toString`.
21848
+ *
21849
+ * @private
21850
+ * @param {*} value The value to convert.
21851
+ * @returns {string} Returns the converted string.
21852
+ */
21853
+ function objectToString(value) {
21854
+ return nativeObjectToString.call(value);
21855
+ }
21856
+
21857
+ /**
21858
+ * A specialized version of `baseRest` which transforms the rest array.
21859
+ *
21860
+ * @private
21861
+ * @param {Function} func The function to apply a rest parameter to.
21862
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
21863
+ * @param {Function} transform The rest array transform.
21864
+ * @returns {Function} Returns the new function.
21865
+ */
21866
+ function overRest(func, start, transform) {
21867
+ start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
21868
+ return function() {
21869
+ var args = arguments,
21870
+ index = -1,
21871
+ length = nativeMax(args.length - start, 0),
21872
+ array = Array(length);
21873
+
21874
+ while (++index < length) {
21875
+ array[index] = args[start + index];
21876
+ }
21877
+ index = -1;
21878
+ var otherArgs = Array(start + 1);
21879
+ while (++index < start) {
21880
+ otherArgs[index] = args[index];
21881
+ }
21882
+ otherArgs[start] = transform(array);
21883
+ return apply(func, this, otherArgs);
21884
+ };
21885
+ }
21886
+
21887
+ /**
21888
+ * Gets the parent value at `path` of `object`.
21889
+ *
21890
+ * @private
21891
+ * @param {Object} object The object to query.
21892
+ * @param {Array} path The path to get the parent value of.
21893
+ * @returns {*} Returns the parent value.
21894
+ */
21895
+ function parent(object, path) {
21896
+ return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));
21897
+ }
21898
+
21899
+ /**
21900
+ * Sets the `toString` method of `func` to return `string`.
21901
+ *
21902
+ * @private
21903
+ * @param {Function} func The function to modify.
21904
+ * @param {Function} string The `toString` result.
21905
+ * @returns {Function} Returns `func`.
21906
+ */
21907
+ var setToString = shortOut(baseSetToString);
21908
+
21909
+ /**
21910
+ * Creates a function that'll short out and invoke `identity` instead
21911
+ * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
21912
+ * milliseconds.
21913
+ *
21914
+ * @private
21915
+ * @param {Function} func The function to restrict.
21916
+ * @returns {Function} Returns the new shortable function.
21917
+ */
21918
+ function shortOut(func) {
21919
+ var count = 0,
21920
+ lastCalled = 0;
21921
+
21922
+ return function() {
21923
+ var stamp = nativeNow(),
21924
+ remaining = HOT_SPAN - (stamp - lastCalled);
21925
+
21926
+ lastCalled = stamp;
21927
+ if (remaining > 0) {
21928
+ if (++count >= HOT_COUNT) {
21929
+ return arguments[0];
21930
+ }
21931
+ } else {
21932
+ count = 0;
21933
+ }
21934
+ return func.apply(undefined, arguments);
21935
+ };
21936
+ }
21937
+
21938
+ /**
21939
+ * Converts `string` to a property path array.
21940
+ *
21941
+ * @private
21942
+ * @param {string} string The string to convert.
21943
+ * @returns {Array} Returns the property path array.
21944
+ */
21945
+ var stringToPath = memoizeCapped(function(string) {
21946
+ var result = [];
21947
+ if (string.charCodeAt(0) === 46 /* . */) {
21948
+ result.push('');
21949
+ }
21950
+ string.replace(rePropName, function(match, number, quote, subString) {
21951
+ result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
21952
+ });
21953
+ return result;
21954
+ });
21955
+
21029
21956
  /**
21030
21957
  * Converts `value` to a string key if it's not a string or symbol.
21031
21958
  *
@@ -21045,7 +21972,7 @@ function toKey(value) {
21045
21972
  * Converts `func` to its source code.
21046
21973
  *
21047
21974
  * @private
21048
- * @param {Function} func The function to process.
21975
+ * @param {Function} func The function to convert.
21049
21976
  * @returns {string} Returns the source code.
21050
21977
  */
21051
21978
  function toSource(func) {
@@ -21060,6 +21987,111 @@ function toSource(func) {
21060
21987
  return '';
21061
21988
  }
21062
21989
 
21990
+ /**
21991
+ * Flattens `array` a single level deep.
21992
+ *
21993
+ * @static
21994
+ * @memberOf _
21995
+ * @since 0.1.0
21996
+ * @category Array
21997
+ * @param {Array} array The array to flatten.
21998
+ * @returns {Array} Returns the new flattened array.
21999
+ * @example
22000
+ *
22001
+ * _.flatten([1, [2, [3, [4]], 5]]);
22002
+ * // => [1, 2, [3, [4]], 5]
22003
+ */
22004
+ function flatten(array) {
22005
+ var length = array == null ? 0 : array.length;
22006
+ return length ? baseFlatten(array, 1) : [];
22007
+ }
22008
+
22009
+ /**
22010
+ * Gets the last element of `array`.
22011
+ *
22012
+ * @static
22013
+ * @memberOf _
22014
+ * @since 0.1.0
22015
+ * @category Array
22016
+ * @param {Array} array The array to query.
22017
+ * @returns {*} Returns the last element of `array`.
22018
+ * @example
22019
+ *
22020
+ * _.last([1, 2, 3]);
22021
+ * // => 3
22022
+ */
22023
+ function last(array) {
22024
+ var length = array == null ? 0 : array.length;
22025
+ return length ? array[length - 1] : undefined;
22026
+ }
22027
+
22028
+ /**
22029
+ * Creates a function that memoizes the result of `func`. If `resolver` is
22030
+ * provided, it determines the cache key for storing the result based on the
22031
+ * arguments provided to the memoized function. By default, the first argument
22032
+ * provided to the memoized function is used as the map cache key. The `func`
22033
+ * is invoked with the `this` binding of the memoized function.
22034
+ *
22035
+ * **Note:** The cache is exposed as the `cache` property on the memoized
22036
+ * function. Its creation may be customized by replacing the `_.memoize.Cache`
22037
+ * constructor with one whose instances implement the
22038
+ * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
22039
+ * method interface of `clear`, `delete`, `get`, `has`, and `set`.
22040
+ *
22041
+ * @static
22042
+ * @memberOf _
22043
+ * @since 0.1.0
22044
+ * @category Function
22045
+ * @param {Function} func The function to have its output memoized.
22046
+ * @param {Function} [resolver] The function to resolve the cache key.
22047
+ * @returns {Function} Returns the new memoized function.
22048
+ * @example
22049
+ *
22050
+ * var object = { 'a': 1, 'b': 2 };
22051
+ * var other = { 'c': 3, 'd': 4 };
22052
+ *
22053
+ * var values = _.memoize(_.values);
22054
+ * values(object);
22055
+ * // => [1, 2]
22056
+ *
22057
+ * values(other);
22058
+ * // => [3, 4]
22059
+ *
22060
+ * object.a = 2;
22061
+ * values(object);
22062
+ * // => [1, 2]
22063
+ *
22064
+ * // Modify the result cache.
22065
+ * values.cache.set(object, ['a', 'b']);
22066
+ * values(object);
22067
+ * // => ['a', 'b']
22068
+ *
22069
+ * // Replace `_.memoize.Cache`.
22070
+ * _.memoize.Cache = WeakMap;
22071
+ */
22072
+ function memoize(func, resolver) {
22073
+ if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
22074
+ throw new TypeError(FUNC_ERROR_TEXT);
22075
+ }
22076
+ var memoized = function() {
22077
+ var args = arguments,
22078
+ key = resolver ? resolver.apply(this, args) : args[0],
22079
+ cache = memoized.cache;
22080
+
22081
+ if (cache.has(key)) {
22082
+ return cache.get(key);
22083
+ }
22084
+ var result = func.apply(this, args);
22085
+ memoized.cache = cache.set(key, result) || cache;
22086
+ return result;
22087
+ };
22088
+ memoized.cache = new (memoize.Cache || MapCache);
22089
+ return memoized;
22090
+ }
22091
+
22092
+ // Expose `MapCache`.
22093
+ memoize.Cache = MapCache;
22094
+
21063
22095
  /**
21064
22096
  * Performs a
21065
22097
  * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -21114,11 +22146,10 @@ function eq(value, other) {
21114
22146
  * _.isArguments([1, 2, 3]);
21115
22147
  * // => false
21116
22148
  */
21117
- function isArguments(value) {
21118
- // Safari 8.1 makes `arguments.callee` enumerable in strict mode.
21119
- return isArrayLikeObject(value) && hasOwnProperty.call(value, 'callee') &&
21120
- (!propertyIsEnumerable.call(value, 'callee') || objectToString.call(value) == argsTag);
21121
- }
22149
+ var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
22150
+ return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
22151
+ !propertyIsEnumerable.call(value, 'callee');
22152
+ };
21122
22153
 
21123
22154
  /**
21124
22155
  * Checks if `value` is classified as an `Array` object.
@@ -21175,33 +22206,23 @@ function isArrayLike(value) {
21175
22206
  }
21176
22207
 
21177
22208
  /**
21178
- * This method is like `_.isArrayLike` except that it also checks if `value`
21179
- * is an object.
22209
+ * Checks if `value` is a buffer.
21180
22210
  *
21181
22211
  * @static
21182
22212
  * @memberOf _
21183
- * @since 4.0.0
22213
+ * @since 4.3.0
21184
22214
  * @category Lang
21185
22215
  * @param {*} value The value to check.
21186
- * @returns {boolean} Returns `true` if `value` is an array-like object,
21187
- * else `false`.
22216
+ * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
21188
22217
  * @example
21189
22218
  *
21190
- * _.isArrayLikeObject([1, 2, 3]);
22219
+ * _.isBuffer(new Buffer(2));
21191
22220
  * // => true
21192
22221
  *
21193
- * _.isArrayLikeObject(document.body.children);
21194
- * // => true
21195
- *
21196
- * _.isArrayLikeObject('abc');
21197
- * // => false
21198
- *
21199
- * _.isArrayLikeObject(_.noop);
22222
+ * _.isBuffer(new Uint8Array(2));
21200
22223
  * // => false
21201
22224
  */
21202
- function isArrayLikeObject(value) {
21203
- return isObjectLike(value) && isArrayLike(value);
21204
- }
22225
+ var isBuffer = nativeIsBuffer || stubFalse;
21205
22226
 
21206
22227
  /**
21207
22228
  * Checks if `value` is classified as a `Function` object.
@@ -21221,10 +22242,13 @@ function isArrayLikeObject(value) {
21221
22242
  * // => false
21222
22243
  */
21223
22244
  function isFunction(value) {
22245
+ if (!isObject(value)) {
22246
+ return false;
22247
+ }
21224
22248
  // The use of `Object#toString` avoids issues with the `typeof` operator
21225
- // in Safari 8-9 which returns 'object' for typed array and other constructors.
21226
- var tag = isObject(value) ? objectToString.call(value) : '';
21227
- return tag == funcTag || tag == genTag;
22249
+ // in Safari 9 which returns 'object' for typed arrays and other constructors.
22250
+ var tag = baseGetTag(value);
22251
+ return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
21228
22252
  }
21229
22253
 
21230
22254
  /**
@@ -21285,7 +22309,7 @@ function isLength(value) {
21285
22309
  */
21286
22310
  function isObject(value) {
21287
22311
  var type = typeof value;
21288
- return !!value && (type == 'object' || type == 'function');
22312
+ return value != null && (type == 'object' || type == 'function');
21289
22313
  }
21290
22314
 
21291
22315
  /**
@@ -21313,9 +22337,88 @@ function isObject(value) {
21313
22337
  * // => false
21314
22338
  */
21315
22339
  function isObjectLike(value) {
21316
- return !!value && typeof value == 'object';
22340
+ return value != null && typeof value == 'object';
22341
+ }
22342
+
22343
+ /**
22344
+ * Checks if `value` is classified as a `Map` object.
22345
+ *
22346
+ * @static
22347
+ * @memberOf _
22348
+ * @since 4.3.0
22349
+ * @category Lang
22350
+ * @param {*} value The value to check.
22351
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
22352
+ * @example
22353
+ *
22354
+ * _.isMap(new Map);
22355
+ * // => true
22356
+ *
22357
+ * _.isMap(new WeakMap);
22358
+ * // => false
22359
+ */
22360
+ var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;
22361
+
22362
+ /**
22363
+ * Checks if `value` is a plain object, that is, an object created by the
22364
+ * `Object` constructor or one with a `[[Prototype]]` of `null`.
22365
+ *
22366
+ * @static
22367
+ * @memberOf _
22368
+ * @since 0.8.0
22369
+ * @category Lang
22370
+ * @param {*} value The value to check.
22371
+ * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
22372
+ * @example
22373
+ *
22374
+ * function Foo() {
22375
+ * this.a = 1;
22376
+ * }
22377
+ *
22378
+ * _.isPlainObject(new Foo);
22379
+ * // => false
22380
+ *
22381
+ * _.isPlainObject([1, 2, 3]);
22382
+ * // => false
22383
+ *
22384
+ * _.isPlainObject({ 'x': 0, 'y': 0 });
22385
+ * // => true
22386
+ *
22387
+ * _.isPlainObject(Object.create(null));
22388
+ * // => true
22389
+ */
22390
+ function isPlainObject(value) {
22391
+ if (!isObjectLike(value) || baseGetTag(value) != objectTag) {
22392
+ return false;
22393
+ }
22394
+ var proto = getPrototype(value);
22395
+ if (proto === null) {
22396
+ return true;
22397
+ }
22398
+ var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
22399
+ return typeof Ctor == 'function' && Ctor instanceof Ctor &&
22400
+ funcToString.call(Ctor) == objectCtorString;
21317
22401
  }
21318
22402
 
22403
+ /**
22404
+ * Checks if `value` is classified as a `Set` object.
22405
+ *
22406
+ * @static
22407
+ * @memberOf _
22408
+ * @since 4.3.0
22409
+ * @category Lang
22410
+ * @param {*} value The value to check.
22411
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
22412
+ * @example
22413
+ *
22414
+ * _.isSet(new Set);
22415
+ * // => true
22416
+ *
22417
+ * _.isSet(new WeakSet);
22418
+ * // => false
22419
+ */
22420
+ var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
22421
+
21319
22422
  /**
21320
22423
  * Checks if `value` is classified as a `Symbol` primitive or object.
21321
22424
  *
@@ -21335,7 +22438,83 @@ function isObjectLike(value) {
21335
22438
  */
21336
22439
  function isSymbol(value) {
21337
22440
  return typeof value == 'symbol' ||
21338
- (isObjectLike(value) && objectToString.call(value) == symbolTag);
22441
+ (isObjectLike(value) && baseGetTag(value) == symbolTag);
22442
+ }
22443
+
22444
+ /**
22445
+ * Checks if `value` is classified as a typed array.
22446
+ *
22447
+ * @static
22448
+ * @memberOf _
22449
+ * @since 3.0.0
22450
+ * @category Lang
22451
+ * @param {*} value The value to check.
22452
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
22453
+ * @example
22454
+ *
22455
+ * _.isTypedArray(new Uint8Array);
22456
+ * // => true
22457
+ *
22458
+ * _.isTypedArray([]);
22459
+ * // => false
22460
+ */
22461
+ var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
22462
+
22463
+ /**
22464
+ * Converts `value` to a string. An empty string is returned for `null`
22465
+ * and `undefined` values. The sign of `-0` is preserved.
22466
+ *
22467
+ * @static
22468
+ * @memberOf _
22469
+ * @since 4.0.0
22470
+ * @category Lang
22471
+ * @param {*} value The value to convert.
22472
+ * @returns {string} Returns the converted string.
22473
+ * @example
22474
+ *
22475
+ * _.toString(null);
22476
+ * // => ''
22477
+ *
22478
+ * _.toString(-0);
22479
+ * // => '-0'
22480
+ *
22481
+ * _.toString([1, 2, 3]);
22482
+ * // => '1,2,3'
22483
+ */
22484
+ function toString(value) {
22485
+ return value == null ? '' : baseToString(value);
22486
+ }
22487
+
22488
+ /**
22489
+ * Creates an array of the own enumerable property names of `object`.
22490
+ *
22491
+ * **Note:** Non-object values are coerced to objects. See the
22492
+ * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
22493
+ * for more details.
22494
+ *
22495
+ * @static
22496
+ * @since 0.1.0
22497
+ * @memberOf _
22498
+ * @category Object
22499
+ * @param {Object} object The object to query.
22500
+ * @returns {Array} Returns the array of property names.
22501
+ * @example
22502
+ *
22503
+ * function Foo() {
22504
+ * this.a = 1;
22505
+ * this.b = 2;
22506
+ * }
22507
+ *
22508
+ * Foo.prototype.c = 3;
22509
+ *
22510
+ * _.keys(new Foo);
22511
+ * // => ['a', 'b'] (iteration order is not guaranteed)
22512
+ *
22513
+ * _.keys('hi');
22514
+ * // => ['0', '1']
22515
+ */
22516
+ function keys(object) {
22517
+ return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
21339
22518
  }
21340
22519
 
21341
22520
  /**
@@ -21367,15 +22546,16 @@ function keysIn(object) {
21367
22546
 
21368
22547
  /**
21369
22548
  * The opposite of `_.pick`; this method creates an object composed of the
21370
- * own and inherited enumerable string keyed properties of `object` that are
21371
- * not omitted.
22549
+ * own and inherited enumerable property paths of `object` that are not omitted.
22550
+ *
22551
+ * **Note:** This method is considerably slower than `_.pick`.
21372
22552
  *
21373
22553
  * @static
21374
22554
  * @since 0.1.0
21375
22555
  * @memberOf _
21376
22556
  * @category Object
21377
22557
  * @param {Object} object The source object.
21378
- * @param {...(string|string[])} [props] The property identifiers to omit.
22558
+ * @param {...(string|string[])} [paths] The property paths to omit.
21379
22559
  * @returns {Object} Returns the new object.
21380
22560
  * @example
21381
22561
  *
@@ -21384,14 +22564,73 @@ function keysIn(object) {
21384
22564
  * _.omit(object, ['a', 'c']);
21385
22565
  * // => { 'b': '2' }
21386
22566
  */
21387
- var omit = baseRest(function(object, props) {
22567
+ var omit = flatRest(function(object, paths) {
22568
+ var result = {};
21388
22569
  if (object == null) {
21389
- return {};
22570
+ return result;
22571
+ }
22572
+ var isDeep = false;
22573
+ paths = arrayMap(paths, function(path) {
22574
+ path = castPath(path, object);
22575
+ isDeep || (isDeep = path.length > 1);
22576
+ return path;
22577
+ });
22578
+ copyObject(object, getAllKeysIn(object), result);
22579
+ if (isDeep) {
22580
+ result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);
22581
+ }
22582
+ var length = paths.length;
22583
+ while (length--) {
22584
+ baseUnset(result, paths[length]);
21390
22585
  }
21391
- props = arrayMap(baseFlatten(props, 1), toKey);
21392
- return basePick(object, baseDifference(getAllKeysIn(object), props));
22586
+ return result;
21393
22587
  });
21394
22588
 
22589
+ /**
22590
+ * Creates a function that returns `value`.
22591
+ *
22592
+ * @static
22593
+ * @memberOf _
22594
+ * @since 2.4.0
22595
+ * @category Util
22596
+ * @param {*} value The value to return from the new function.
22597
+ * @returns {Function} Returns the new constant function.
22598
+ * @example
22599
+ *
22600
+ * var objects = _.times(2, _.constant({ 'a': 1 }));
22601
+ *
22602
+ * console.log(objects);
22603
+ * // => [{ 'a': 1 }, { 'a': 1 }]
22604
+ *
22605
+ * console.log(objects[0] === objects[1]);
22606
+ * // => true
22607
+ */
22608
+ function constant(value) {
22609
+ return function() {
22610
+ return value;
22611
+ };
22612
+ }
22613
+
22614
+ /**
22615
+ * This method returns the first argument it receives.
22616
+ *
22617
+ * @static
22618
+ * @since 0.1.0
22619
+ * @memberOf _
22620
+ * @category Util
22621
+ * @param {*} value Any value.
22622
+ * @returns {*} Returns `value`.
22623
+ * @example
22624
+ *
22625
+ * var object = { 'a': 1 };
22626
+ *
22627
+ * console.log(_.identity(object) === object);
22628
+ * // => true
22629
+ */
22630
+ function identity(value) {
22631
+ return value;
22632
+ }
22633
+
21395
22634
  /**
21396
22635
  * This method returns a new empty array.
21397
22636
  *
@@ -21414,16 +22653,33 @@ function stubArray() {
21414
22653
  return [];
21415
22654
  }
21416
22655
 
22656
+ /**
22657
+ * This method returns `false`.
22658
+ *
22659
+ * @static
22660
+ * @memberOf _
22661
+ * @since 4.13.0
22662
+ * @category Util
22663
+ * @returns {boolean} Returns `false`.
22664
+ * @example
22665
+ *
22666
+ * _.times(2, _.stubFalse);
22667
+ * // => [false, false]
22668
+ */
22669
+ function stubFalse() {
22670
+ return false;
22671
+ }
22672
+
21417
22673
  module.exports = omit;
21418
22674
 
21419
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(45)))
22675
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(45), __webpack_require__(106)(module)))
21420
22676
 
21421
22677
  /***/ }),
21422
22678
  /* 17 */
21423
22679
  /***/ (function(module, exports, __webpack_require__) {
21424
22680
 
21425
22681
  var api = __webpack_require__(11);
21426
- var content = __webpack_require__(88);
22682
+ var content = __webpack_require__(89);
21427
22683
 
21428
22684
  content = content.__esModule ? content.default : content;
21429
22685
 
@@ -21447,7 +22703,7 @@ module.exports = content.locals || {};
21447
22703
  /***/ (function(module, exports, __webpack_require__) {
21448
22704
 
21449
22705
  var api = __webpack_require__(11);
21450
- var content = __webpack_require__(95);
22706
+ var content = __webpack_require__(96);
21451
22707
 
21452
22708
  content = content.__esModule ? content.default : content;
21453
22709
 
@@ -21483,7 +22739,7 @@ module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' stan
21483
22739
  /***/ (function(module, exports, __webpack_require__) {
21484
22740
 
21485
22741
  var api = __webpack_require__(11);
21486
- var content = __webpack_require__(102);
22742
+ var content = __webpack_require__(103);
21487
22743
 
21488
22744
  content = content.__esModule ? content.default : content;
21489
22745
 
@@ -21553,7 +22809,7 @@ module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E
21553
22809
  /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_0__);
21554
22810
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
21555
22811
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
21556
- /* harmony import */ var react_style_proptype__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(49);
22812
+ /* harmony import */ var react_style_proptype__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(50);
21557
22813
  /* harmony import */ var react_style_proptype__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_style_proptype__WEBPACK_IMPORTED_MODULE_2__);
21558
22814
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
21559
22815
  var _excluded = ["alignContent", "alignItems", "alignSelf", "basis", "children", "className", "componentRef", "direction", "element", "grow", "height", "justifyContent", "width", "wrap", "shrink", "style"];
@@ -21676,7 +22932,7 @@ Box.defaultProps = {
21676
22932
  style: {}
21677
22933
  };
21678
22934
  /* harmony default export */ __webpack_exports__["a"] = (Box);
21679
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(91)))
22935
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(92)))
21680
22936
 
21681
22937
  /***/ }),
21682
22938
  /* 30 */
@@ -21701,7 +22957,7 @@ module.exports = require("react-popover");
21701
22957
  /***/ (function(module, exports, __webpack_require__) {
21702
22958
 
21703
22959
  var api = __webpack_require__(11);
21704
- var content = __webpack_require__(89);
22960
+ var content = __webpack_require__(90);
21705
22961
 
21706
22962
  content = content.__esModule ? content.default : content;
21707
22963
 
@@ -21725,7 +22981,7 @@ module.exports = content.locals || {};
21725
22981
  /***/ (function(module, exports, __webpack_require__) {
21726
22982
 
21727
22983
  var api = __webpack_require__(11);
21728
- var content = __webpack_require__(90);
22984
+ var content = __webpack_require__(91);
21729
22985
 
21730
22986
  content = content.__esModule ? content.default : content;
21731
22987
 
@@ -21749,7 +23005,7 @@ module.exports = content.locals || {};
21749
23005
  /***/ (function(module, exports, __webpack_require__) {
21750
23006
 
21751
23007
  var api = __webpack_require__(11);
21752
- var content = __webpack_require__(96);
23008
+ var content = __webpack_require__(97);
21753
23009
 
21754
23010
  content = content.__esModule ? content.default : content;
21755
23011
 
@@ -21773,7 +23029,7 @@ module.exports = content.locals || {};
21773
23029
  /***/ (function(module, exports, __webpack_require__) {
21774
23030
 
21775
23031
  var api = __webpack_require__(11);
21776
- var content = __webpack_require__(97);
23032
+ var content = __webpack_require__(98);
21777
23033
 
21778
23034
  content = content.__esModule ? content.default : content;
21779
23035
 
@@ -21797,7 +23053,7 @@ module.exports = content.locals || {};
21797
23053
  /***/ (function(module, exports, __webpack_require__) {
21798
23054
 
21799
23055
  var api = __webpack_require__(11);
21800
- var content = __webpack_require__(100);
23056
+ var content = __webpack_require__(101);
21801
23057
 
21802
23058
  content = content.__esModule ? content.default : content;
21803
23059
 
@@ -21821,7 +23077,7 @@ module.exports = content.locals || {};
21821
23077
  /***/ (function(module, exports, __webpack_require__) {
21822
23078
 
21823
23079
  var api = __webpack_require__(11);
21824
- var content = __webpack_require__(103);
23080
+ var content = __webpack_require__(104);
21825
23081
 
21826
23082
  content = content.__esModule ? content.default : content;
21827
23083
 
@@ -21851,7 +23107,7 @@ module.exports = require("minilog");
21851
23107
  /***/ (function(module, exports, __webpack_require__) {
21852
23108
 
21853
23109
  var api = __webpack_require__(11);
21854
- var content = __webpack_require__(99);
23110
+ var content = __webpack_require__(100);
21855
23111
 
21856
23112
  content = content.__esModule ? content.default : content;
21857
23113
 
@@ -21922,10 +23178,16 @@ module.exports = g;
21922
23178
 
21923
23179
  /***/ }),
21924
23180
  /* 46 */
23181
+ /***/ (function(module, exports) {
23182
+
23183
+ module.exports = require("@scratch/scratch-svg-renderer");
23184
+
23185
+ /***/ }),
23186
+ /* 47 */
21925
23187
  /***/ (function(module, exports, __webpack_require__) {
21926
23188
 
21927
23189
  var api = __webpack_require__(11);
21928
- var content = __webpack_require__(87);
23190
+ var content = __webpack_require__(88);
21929
23191
 
21930
23192
  content = content.__esModule ? content.default : content;
21931
23193
 
@@ -21945,29 +23207,29 @@ var update = api(content, options);
21945
23207
  module.exports = content.locals || {};
21946
23208
 
21947
23209
  /***/ }),
21948
- /* 47 */
23210
+ /* 48 */
21949
23211
  /***/ (function(module, exports) {
21950
23212
 
21951
23213
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 49.3 (51167) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Efill%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='fill' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cpath d='M10.7000634,5.80137446 L9.29979614,5.80137446 L9.29979614,8.59994895 L7.89980891,8.59994895 L7.89980891,4.39998724 L6.49982167,4.39998724 L6.49982167,5.80137446 L5.09983443,5.80137446 L5.09983443,3 L9.29979614,3 L9.29979614,4.39998724 L10.7011834,4.39998724 L10.7011834,5.80123446 L12.1000506,5.80123446 L12.1000506,7.2012217 L10.7000634,7.2012217 L10.7000634,5.80137446 Z M5.10011443,8.60120894 L5.10011443,7.2012217 L6.50010167,7.2012217 L6.50010167,8.60120894 L5.10011443,8.60120894 Z M16.3000123,16.9997324 L16.3000123,10.0011962 L17.6999996,10.0011962 L17.6999996,16.9997324 L16.3000123,16.9997324 Z M12.1003306,7.20080171 L13.5003179,7.20080171 L13.5003179,8.60078894 L16.3002923,8.60078894 L16.3002923,10.0007762 L14.9003051,10.0007762 L14.9003051,11.3573638 L13.5003179,11.3573638 L13.5003179,12.758751 L12.1003306,12.758751 L12.1003306,14.1587383 L10.7003434,14.1587383 L10.7003434,15.5587255 L9.29895615,15.5587255 L9.29895615,16.9587128 L7.89896891,16.9587128 L7.89896891,15.5587255 L6.49898168,15.5587255 L6.49898168,14.1587383 L5.10039442,14.1587383 L5.10039442,12.758751 L3.70040719,12.758751 L3.70040719,11.3573638 L6.49898168,11.3573638 L6.49898168,11.3713637 L9.29895615,11.3713637 L9.29895615,10.0007762 L12.1003306,10.0007762 L12.1003306,7.20080171 Z M3.69998719,8.60064895 L5.09997443,8.60064895 L5.09997443,10.0006362 L3.69998719,10.0006362 L3.69998719,11.3572238 L2.29999995,11.3572238 L2.29999995,9.95723658 L3.69998719,9.95723658 L3.69998719,8.60064895 Z' id='Combined-Shape' fill='%23575E75'%3E%3C/path%3E %3C/g%3E %3C/svg%3E"
21952
23214
 
21953
23215
  /***/ }),
21954
- /* 48 */
23216
+ /* 49 */
21955
23217
  /***/ (function(module, exports) {
21956
23218
 
21957
23219
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 49.3 (51167) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Emarquee%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='marquee' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cpath d='M4.5,4.18186116 L4.5,3 L5.68186116,3 L5.68186116,4.18186116 L4.5,4.18186116 Z M11.591167,4.18186116 L11.591167,3 L12.7730281,3 L12.7730281,4.18186116 L11.591167,4.18186116 Z M4.5,13.6367504 L4.5,12.4537074 L5.68186116,12.4537074 L5.68186116,13.6367504 L4.5,13.6367504 Z M9.22697189,6.54570166 L10.4100149,6.54570166 L10.4100149,7.72756282 L11.5918761,7.72756282 L11.5918761,8.90942398 L12.7737372,8.90942398 L12.7737372,10.0912851 L13.9555984,10.0912851 L13.9555984,11.2731463 L15.1362777,11.2731463 L15.1362777,12.4538256 L16.3181388,12.4538256 L16.3181388,13.6368686 L17.5,13.6368686 L17.5,14.8187298 L12.7737372,14.8187298 L12.7737372,16.0005909 L11.5918761,16.0005909 L11.5918761,17.1824521 L10.4100149,17.1824521 L10.4100149,18.3643132 L9.22697189,18.3643132 L9.22697189,6.54570166 Z M13.9548893,8.90930579 L13.9548893,7.72744463 L15.1367504,7.72744463 L15.1367504,8.90930579 L13.9548893,8.90930579 Z M6.86372232,4.18186116 L6.86372232,3 L8.04558348,3 L8.04558348,4.18186116 L6.86372232,4.18186116 Z M4.5,11.2730281 L4.5,10.091167 L5.68186116,10.091167 L5.68186116,11.2730281 L4.5,11.2730281 Z M13.9548893,4.18186116 L13.9548893,3 L15.1367504,3 L15.1367504,4.18186116 L13.9548893,4.18186116 Z M9.22744463,4.18186116 L9.22744463,3 L10.4104877,3 L10.4104877,4.18186116 L9.22744463,4.18186116 Z M4.5,8.90930579 L4.5,7.72744463 L5.68186116,7.72744463 L5.68186116,8.90930579 L4.5,8.90930579 Z M4.5,6.54558348 L4.5,5.36372232 L5.68186116,5.36372232 L5.68186116,6.54558348 L4.5,6.54558348 Z M13.9548893,6.54558348 L13.9548893,5.36372232 L15.1367504,5.36372232 L15.1367504,6.54558348 L13.9548893,6.54558348 Z M6.86372232,13.6367504 L6.86372232,12.4537074 L8.04558348,12.4537074 L8.04558348,13.6367504 L6.86372232,13.6367504 Z' id='Combined-Shape' fill='%23575E75'%3E%3C/path%3E %3C/g%3E %3C/svg%3E"
21958
23220
 
21959
23221
  /***/ }),
21960
- /* 49 */
23222
+ /* 50 */
21961
23223
  /***/ (function(module, exports) {
21962
23224
 
21963
23225
  module.exports = require("react-style-proptype");
21964
23226
 
21965
23227
  /***/ }),
21966
- /* 50 */
23228
+ /* 51 */
21967
23229
  /***/ (function(module, exports, __webpack_require__) {
21968
23230
 
21969
23231
  var api = __webpack_require__(11);
21970
- var content = __webpack_require__(92);
23232
+ var content = __webpack_require__(93);
21971
23233
 
21972
23234
  content = content.__esModule ? content.default : content;
21973
23235
 
@@ -21987,59 +23249,59 @@ var update = api(content, options);
21987
23249
  module.exports = content.locals || {};
21988
23250
 
21989
23251
  /***/ }),
21990
- /* 51 */
23252
+ /* 52 */
21991
23253
  /***/ (function(module, exports) {
21992
23254
 
21993
23255
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eeye-dropper%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='eye-dropper' fill='%23575E75'%3E %3Cpath d='M9.15334605,12.4824962 C9.03394044,12.6188737 8.88041895,12.7041096 8.60749186,12.7722983 C7.90811618,12.925723 7.24285639,13.5564688 7.03816107,14.2554033 C6.9699293,14.4770167 6.74817603,14.7156773 6.50936483,14.8350076 L4.73533871,15.6703196 C4.650049,15.704414 4.58181722,15.7214612 4.54770134,15.7214612 L4.27477424,15.4657534 C4.27477424,15.4487062 4.27477424,15.3805175 4.32594807,15.2611872 L5.1617873,13.4712329 C5.26413496,13.2496195 5.50294617,13.0280061 5.74175737,12.9598174 C6.44113305,12.738204 7.07227696,12.090411 7.25991433,11.2380518 C7.29403022,11.1016743 7.37931994,10.9652968 7.49872554,10.8289193 L11.4391105,6.90806697 L13.093731,8.56164384 L9.15334605,12.4824962 Z M16.6076673,5.28858447 C16.8635365,5.03287671 17,4.67488584 17,4.33394216 C17,3.99299848 16.8635365,3.65205479 16.6076673,3.39634703 C16.0788711,2.86788432 15.2430318,2.86788432 14.7142356,3.39634703 L13.2301945,4.87945205 L13.0596151,4.70898021 L12.5137609,4.16347032 C12.172602,3.82252664 11.6096899,3.82252664 11.268531,4.16347032 L10.6032712,4.81126332 C10.2791703,5.152207 10.2621124,5.64657534 10.5520974,5.98751903 L6.59465454,9.92541857 C6.30466951,10.2322679 6.09997418,10.5902588 5.98056858,11.1016743 C5.92939475,11.357382 5.63940971,11.6471842 5.36648262,11.7324201 C4.80357049,11.9028919 4.2577163,12.3802131 4.00184715,12.9427702 L3.16600792,14.7156773 C2.89308083,15.3123288 2.9613126,15.9260274 3.33658736,16.3181126 L3.67774623,16.6590563 C3.89949949,16.8806697 4.20654247,17 4.54770134,17 C4.7694546,17 5.02532375,16.9318113 5.26413496,16.8295282 L7.05521901,15.9942161 C7.61813114,15.7214612 8.09575356,15.1929985 8.26633299,14.6304414 C8.33456477,14.3576865 8.64160775,14.0678843 9.05099839,13.9826484 C9.4092152,13.8974125 9.76743201,13.6928463 10.057417,13.385997 L14.0148599,9.44809741 C14.3560188,9.73789954 14.8677571,9.70380518 15.1748001,9.37990868 L15.8400599,8.73211568 C16.1812187,8.39117199 16.1812187,7.82861492 15.8400599,7.48767123 L15.2600898,6.90806697 L15.1236262,6.7716895 L16.6076673,5.28858447 Z' id='eye-dropper-icon'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
21994
23256
 
21995
23257
  /***/ }),
21996
- /* 52 */
23258
+ /* 53 */
21997
23259
  /***/ (function(module, exports) {
21998
23260
 
21999
23261
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Efill-horz-gradient-enabled%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E %3ClinearGradient x1='100%25' y1='50%25' x2='0%25' y2='50%25' id='linearGradient-1'%3E %3Cstop stop-color='%23FFFFFF' offset='0%25'%3E%3C/stop%3E %3Cstop stop-color='%23855CD6' offset='100%25'%3E%3C/stop%3E %3C/linearGradient%3E %3C/defs%3E %3Cg id='fill-horz-gradient-enabled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-opacity='0.15'%3E %3Crect id='Horizontal' stroke='%23000000' fill='url(%23linearGradient-1)' x='0.5' y='0.5' width='19' height='19' rx='4'%3E%3C/rect%3E %3C/g%3E %3C/svg%3E"
22000
23262
 
22001
23263
  /***/ }),
22002
- /* 53 */
23264
+ /* 54 */
22003
23265
  /***/ (function(module, exports) {
22004
23266
 
22005
23267
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 51 (57462) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Efill-radial-enabled%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E %3CradialGradient cx='50%25' cy='50%25' fx='50%25' fy='50%25' r='39.3896484%25' id='radialGradient-1'%3E %3Cstop stop-color='%23855CD6' offset='0%25'%3E%3C/stop%3E %3Cstop stop-color='%23FFFFFF' offset='100%25'%3E%3C/stop%3E %3C/radialGradient%3E %3C/defs%3E %3Cg id='fill-radial-enabled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-opacity='0.15'%3E %3Crect id='Radial' stroke='%23000000' fill='url(%23radialGradient-1)' x='0.5' y='0.5' width='19' height='19' rx='4'%3E%3C/rect%3E %3C/g%3E %3C/svg%3E"
22006
23268
 
22007
23269
  /***/ }),
22008
- /* 54 */
23270
+ /* 55 */
22009
23271
  /***/ (function(module, exports) {
22010
23272
 
22011
23273
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Efill-solid-enabled%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='fill-solid-enabled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-opacity='0.15'%3E %3Crect id='Solid' stroke='%23000000' fill='%23855CD6' x='0.5' y='0.5' width='19' height='19' rx='4'%3E%3C/rect%3E %3C/g%3E %3C/svg%3E"
22012
23274
 
22013
23275
  /***/ }),
22014
- /* 55 */
23276
+ /* 56 */
22015
23277
  /***/ (function(module, exports) {
22016
23278
 
22017
23279
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 51 (57462) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Efill-vert-gradient-enabled%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E %3ClinearGradient x1='50%25' y1='100%25' x2='50%25' y2='3.061617e-15%25' id='linearGradient-1'%3E %3Cstop stop-color='%23FFFFFF' offset='0%25'%3E%3C/stop%3E %3Cstop stop-color='%23855CD6' offset='100%25'%3E%3C/stop%3E %3C/linearGradient%3E %3C/defs%3E %3Cg id='fill-vert-gradient-enabled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-opacity='0.15'%3E %3Crect id='Vertical' stroke='%23000000' fill='url(%23linearGradient-1)' x='0.5' y='0.5' width='19' height='19' rx='4'%3E%3C/rect%3E %3C/g%3E %3C/svg%3E"
22018
23280
 
22019
23281
  /***/ }),
22020
- /* 56 */
23282
+ /* 57 */
22021
23283
  /***/ (function(module, exports) {
22022
23284
 
22023
23285
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eswap%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='swap' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='Swap-v2' transform='translate(2.000000, 2.000000)' fill='%23855CD6'%3E %3Cpath d='M3.69424597,2.00682151 L7.95663608,2.66498231 C8.44536222,2.73588913 8.7900887,3.24405473 8.7176525,3.79585529 C8.66179809,4.24129561 8.34150792,4.58764819 7.95663608,4.64128284 L3.69424597,5.30126176 L3.69424597,6.79666856 C3.69424597,7.22392764 3.23781067,7.42846657 2.97250219,7.13483958 L0.120436084,3.97403142 C-0.0401453614,3.78767373 -0.0401453614,3.48404706 0.120436084,3.30587093 L2.97250219,0.135972153 C3.23781067,-0.157654834 3.69424597,0.0559747078 3.69424597,0.474143173 L3.69424597,2.00682151 Z M12.305754,10.7340942 L12.305754,9.2014159 C12.305754,8.78324744 12.7621893,8.56961789 13.0274978,8.86324488 L15.8795639,12.0331437 C16.0401454,12.2113198 16.0401454,12.5149465 15.8795639,12.7013041 L13.0274978,15.8621123 C12.7621893,16.1557393 12.305754,15.9512004 12.305754,15.5239413 L12.305754,14.0285345 L8.04336392,13.3685556 C7.65849208,13.3149209 7.33820191,12.9685683 7.2823475,12.523128 C7.2099113,11.9713275 7.55463778,11.4631619 8.04336392,11.392255 L12.305754,10.7340942 Z' id='Swap-v1'%3E%3C/path%3E %3Cpath d='M11.2727273,1.45454545 L13.4545455,1.45454545 C14.0567273,1.45454545 14.5454545,1.94327273 14.5454545,2.54545455 L14.5454545,4.72727273 C14.5454545,5.33054545 14.0567273,5.81818182 13.4545455,5.81818182 L11.2727273,5.81818182 C10.6705455,5.81818182 10.1818182,5.33054545 10.1818182,4.72727273 L10.1818182,2.54545455 C10.1818182,1.94327273 10.6705455,1.45454545 11.2727273,1.45454545' id='Fill-6' fill-opacity='0.5'%3E%3C/path%3E %3Cpath d='M2.54545455,10.1818182 L4.72727273,10.1818182 C5.32945455,10.1818182 5.81818182,10.6705455 5.81818182,11.2727273 L5.81818182,13.4545455 C5.81818182,14.0578182 5.32945455,14.5454545 4.72727273,14.5454545 L2.54545455,14.5454545 C1.94327273,14.5454545 1.45454545,14.0578182 1.45454545,13.4545455 L1.45454545,11.2727273 C1.45454545,10.6705455 1.94327273,10.1818182 2.54545455,10.1818182' id='Fill-6-Copy' fill-opacity='0.5'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22024
23286
 
22025
23287
  /***/ }),
22026
- /* 57 */
23288
+ /* 58 */
22027
23289
  /***/ (function(module, exports) {
22028
23290
 
22029
23291
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 48.1 (47250) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Efill%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='fill' fill='%23575E75'%3E %3Cpath d='M14.0450969,9.69349504 L14.0306818,9.67916207 C13.4396629,9.36383682 12.5170968,8.69018743 11.4215496,7.60088203 C11.0900024,7.27122381 10.7872854,6.95589857 10.5422288,6.65490628 C10.71521,6.4399118 10.8881911,6.22491731 11.0611722,6.00992282 C11.3783043,6.26791621 11.7242666,6.58324146 12.084644,6.9415656 C12.3152855,7.17089305 12.5026817,7.37155458 12.690078,7.5722161 C12.7189081,7.61521499 12.7621534,7.65821389 12.8198138,7.70121279 C13.6270591,8.6185226 14.1027573,9.36383682 14.3189837,9.7938258 C14.3189837,9.80815877 14.3333988,9.82249173 14.3333988,9.8368247 C14.2469082,9.7938258 14.1460025,9.7508269 14.0450969,9.69349504 M10.5998892,10.0661521 C9.7349835,10.53914 8.91332309,10.983462 7.61596455,10.6824697 C6.17445506,10.3528115 5.4825305,9.76515987 5.19422861,9.42116869 L8.3078891,5.40793826 C8.52411553,5.83792723 8.84124762,6.28224917 9.1727948,6.69790518 C8.82683252,7.21389195 8.55294572,7.64388093 8.42320986,7.84454245 C8.27905891,8.08820287 8.35113439,8.41786108 8.6106061,8.5755237 C8.69709667,8.63285557 8.79800233,8.6615215 8.8844929,8.6615215 C9.07188913,8.6615215 9.24487027,8.56119074 9.34577594,8.40352811 C9.50434198,8.13120176 9.69173821,7.84454245 9.89354954,7.55788313 C10.1962665,7.90187431 10.4701533,8.17420066 10.6575496,8.36052922 C11.0755873,8.77618523 11.4936251,9.14884234 11.8972477,9.47850055 C11.4215496,9.60749724 11.0035119,9.85115766 10.5998892,10.0661521 M10.2106816,5.33627343 C10.0953609,5.49393605 9.96562502,5.65159868 9.85030426,5.79492834 C9.50434198,5.33627343 9.28811556,4.96361632 9.1727948,4.70562293 C9.41785141,4.80595369 9.76381369,5.02094818 10.2106816,5.33627343 M13.5117384,4.07497244 C13.6703044,4.07497244 13.8432855,4.10363837 13.8721157,4.1753032 C14.0450969,4.49062845 13.6270591,5.49393605 13.0648704,6.3969129 L12.848644,6.18191841 C12.6180025,5.95259096 12.2287949,5.59426681 11.781927,5.20727674 C12.4450213,4.53362734 13.0504553,4.07497244 13.5117384,4.07497244 M16.5533234,12.1587652 C16.337097,11.5997795 15.9911347,11.0981257 15.587512,10.6681367 C15.5442667,10.6108049 15.4866064,10.567806 15.428946,10.5248071 C15.6740026,9.99448732 15.2703799,9.23484013 14.9244177,8.69018743 C14.6505309,8.24586549 14.2757384,7.74421169 13.8288705,7.24255788 C14.3910592,6.38257993 15.3568705,4.676957 14.8379271,3.67364939 C14.679361,3.37265711 14.3189837,3 13.5117384,3 L13.4973233,3 C12.6756629,3 11.7675119,3.65931643 10.9458515,4.51929438 C10.0232854,3.84564498 9.01422875,3.31532525 8.40879477,3.65931643 C8.35113439,3.68798236 8.27905891,3.71664829 8.23581363,3.77398015 C8.22139853,3.78831312 8.19256835,3.80264609 8.17815325,3.83131202 C8.16373816,3.84564498 8.14932306,3.85997795 8.13490797,3.88864388 L8.12049287,3.91730981 L4.12751158,9.04851158 C4.11309649,9.04851158 4.11309649,9.04851158 4.09868139,9.06284454 L3.20494551,10.2238148 L3.16170023,10.2668137 C3.11845494,10.3098126 3.08962475,10.3671444 3.07520966,10.4101433 L3.07520966,10.4244763 C2.62834171,11.3417861 4.28607763,13.1334068 5.06449275,13.92172 C5.75641731,14.6097023 7.28441737,16 8.23581363,16 C8.43762496,16 8.596191,15.9426681 8.74034195,15.8136714 L14.2613233,11.5567806 C14.2901535,11.5424476 14.3045686,11.5137817 14.3333988,11.4851158 C14.362229,11.5137817 14.3766441,11.5567806 14.3910592,11.5854465 C14.5640403,11.9294377 14.679361,12.2877619 14.6937761,12.6747519 C14.7370214,13.061742 14.7081912,13.463065 14.6505309,13.8500551 L14.6505309,13.8643881 C14.6361158,13.9790518 14.6361158,14.0793826 14.6505309,14.1940463 C14.7514365,14.8390298 15.3568705,15.2833517 15.9911347,15.1830209 C16.639814,15.0826902 17.0866819,14.4807056 16.9857762,13.8357222 C16.8992857,13.2767365 16.7839649,12.7034179 16.5533234,12.1587652' id='Fill-1'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22030
23292
 
22031
23293
  /***/ }),
22032
- /* 58 */
23294
+ /* 59 */
22033
23295
  /***/ (function(module, exports) {
22034
23296
 
22035
23297
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eline%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='square'%3E %3Cg id='line' stroke='%23575E75' stroke-width='2'%3E %3Cpath d='M5,15 L15,5' id='Line'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22036
23298
 
22037
23299
  /***/ }),
22038
- /* 59 */
23300
+ /* 60 */
22039
23301
  /***/ (function(module, exports, __webpack_require__) {
22040
23302
 
22041
23303
  var api = __webpack_require__(11);
22042
- var content = __webpack_require__(101);
23304
+ var content = __webpack_require__(102);
22043
23305
 
22044
23306
  content = content.__esModule ? content.default : content;
22045
23307
 
@@ -22059,157 +23321,157 @@ var update = api(content, options);
22059
23321
  module.exports = content.locals || {};
22060
23322
 
22061
23323
  /***/ }),
22062
- /* 60 */
23324
+ /* 61 */
22063
23325
  /***/ (function(module, exports) {
22064
23326
 
22065
23327
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='8px' height='5px' viewBox='0 0 8 5' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Edropdown-caret%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='dropdown-caret' fill='%23855CD6'%3E %3Cpath d='M4,5 C3.72520708,5 3.45163006,4.89695045 3.24127973,4.68965311 L0.314613572,1.80666227 C-0.104871191,1.39326583 -0.104871191,0.724642023 0.314613572,0.310047331 C0.732882438,-0.10334911 7.26711756,-0.10334911 7.68538643,0.310047331 C8.10487119,0.723443772 8.10487119,1.39326583 7.68538643,1.80666227 L4.75993617,4.68965311 C4.54958583,4.89695045 4.27600882,5 4,5'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22066
23328
 
22067
23329
  /***/ }),
22068
- /* 61 */
23330
+ /* 62 */
22069
23331
  /***/ (function(module, exports) {
22070
23332
 
22071
23333
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Egroup%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='group' stroke-width='0.75'%3E %3Cg id='group-icon' transform='translate(2.000000, 2.000000)'%3E %3Crect id='Rectangle-2' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='0' y='0' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy-2' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='13' y='0' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='0' y='13' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy-3' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='13' y='13' width='3' height='3'%3E%3C/rect%3E %3Cpath d='M1.5,3 L1.5,13' id='Line' stroke='%23855CD6' stroke-linecap='square'%3E%3C/path%3E %3Cpath d='M14.5,3 L14.5,13' id='Line-Copy' stroke='%23855CD6' stroke-linecap='square'%3E%3C/path%3E %3Cpath d='M13,1.5 L3,1.5' id='Line-Copy-2' stroke='%23855CD6' stroke-linecap='square'%3E%3C/path%3E %3Cpath d='M13,14.5 L3,14.5' id='Line-Copy-3' stroke='%23855CD6' stroke-linecap='square'%3E%3C/path%3E %3Cg id='Group' transform='translate(8.000000, 8.000000) rotate(180.000000) translate(-8.000000, -8.000000) translate(4.000000, 4.000000)' stroke='%23575E75'%3E %3Crect id='Rectangle-3-Copy' fill='%23FFFFFF' transform='translate(5.500000, 5.500000) rotate(180.000000) translate(-5.500000, -5.500000) ' x='3' y='3' width='5' height='5' rx='0.5'%3E%3C/rect%3E %3Crect id='Rectangle-3' fill='%23575E75' transform='translate(2.500000, 2.500000) rotate(180.000000) translate(-2.500000, -2.500000) ' x='0' y='0' width='5' height='5' rx='0.5'%3E%3C/rect%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22072
23334
 
22073
23335
  /***/ }),
22074
- /* 62 */
23336
+ /* 63 */
22075
23337
  /***/ (function(module, exports) {
22076
23338
 
22077
23339
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eredo%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='redo' fill='%23855CD6'%3E %3Cpath d='M17.5581635,12.7700651 L13.8403972,16.4941315 C13.5610922,16.7671364 13.1830854,16.9211391 12.7903784,16.9211391 C12.3990715,16.9211391 12.0210647,16.7671364 11.7403597,16.4941315 L8.02399342,12.7700651 C7.5969858,12.3430574 7.47098355,11.7060461 7.70198767,11.1530362 C7.93299179,10.6000263 8.46500128,10.24302 9.06701202,10.24302 L10.4040359,10.24302 C10.3690352,9.92101423 10.2780336,9.55700774 10.1240309,9.17200087 C10.07573,9.05999887 10.0260291,8.94799688 9.97002813,8.83599488 C9.89302676,8.70999263 9.90072689,8.67499201 9.79502501,8.52098926 C9.62702201,8.26898476 9.47301926,8.07998139 9.29031601,7.86297752 C8.9200094,7.4639704 8.47200141,7.12096429 7.99599292,6.86895979 C7.5129843,6.6169553 7.00897531,6.46295255 6.56096732,6.37895105 C6.11995945,6.30194968 5.71395221,6.29494955 5.47594796,6.29494955 C5.35694584,6.28794943 5.2029431,6.31594993 5.12594172,6.32295005 C5.04194022,6.32995018 4.99293935,6.3369503 4.99293935,6.3369503 C4.49593048,6.38595117 4.04792249,6.02194468 3.99892162,5.52493582 C3.95692087,5.10492832 4.20192524,4.72692158 4.57293186,4.58691908 C4.57293186,4.58691908 4.62193273,4.56591871 4.6989341,4.53791821 C4.78993573,4.50991771 4.87393723,4.46091684 5.06994072,4.40491584 C5.46194772,4.28591371 5.95895658,4.15991147 6.60996819,4.09691034 C7.25397968,4.04090934 8.03099354,4.05490959 8.85070816,4.22291259 C9.66902276,4.39791571 10.5300381,4.72692158 11.3280524,5.20293007 C11.7060591,5.44793444 12.1120663,5.73493956 12.427072,6.01494456 C12.5670745,6.11994643 12.8050787,6.35795068 12.9450812,6.5049533 C13.1060841,6.67295629 13.2530867,6.84095929 13.4007893,7.01596241 C13.9670994,7.7159749 14.3871069,8.47198839 14.6601118,9.15800062 C14.8211147,9.55000762 14.9331167,9.92101423 15.0171182,10.24302 L16.5151449,10.24302 C17.1171556,10.24302 17.6491651,10.6000263 17.8801692,11.1530362 C18.1111734,11.7060461 17.9851711,12.3430574 17.5581635,12.7700651' id='Fill-1' transform='translate(10.994247, 10.494247) rotate(-45.000000) translate(-10.994247, -10.494247) '%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22078
23340
 
22079
23341
  /***/ }),
22080
- /* 63 */
23342
+ /* 64 */
22081
23343
  /***/ (function(module, exports) {
22082
23344
 
22083
23345
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Esend-backward%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='send-backward'%3E %3Cg id='send-forward' transform='translate(10.000000, 10.000000) rotate(180.000000) translate(-10.000000, -10.000000) translate(2.000000, 3.000000)'%3E %3Cpath d='M12.3476736,5.92549723 L10.2407376,5.92549723 L9.33601611,12.7635981 C9.23807603,13.5476661 8.54025295,14.1003698 7.78121732,13.9846876 C7.16909181,13.8947126 6.69163391,13.3805697 6.6169546,12.7635981 L5.7122331,5.92549723 L3.65426714,5.92549723 C3.0678509,5.92549723 2.78504892,5.19284356 3.190276,4.76867564 L7.53514286,0.192803597 C7.79223558,-0.0642678658 8.20970517,-0.0642678658 8.45333113,0.192803597 L12.812889,4.76867564 C13.2168918,5.19284356 12.9230716,5.92549723 12.3476736,5.92549723' id='Fill-1' fill='%23855CD6'%3E%3C/path%3E %3Cpath d='M12,8 L16,8' id='Stroke-6' stroke='%23575E75' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E %3Cpath d='M0,8 L4,8' id='Stroke-10' stroke='%23575E75' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22084
23346
 
22085
23347
  /***/ }),
22086
- /* 64 */
23348
+ /* 65 */
22087
23349
  /***/ (function(module, exports) {
22088
23350
 
22089
23351
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Esend-forward%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='send-forward'%3E %3Cg transform='translate(2.000000, 3.000000)'%3E %3Cpath d='M12.3476736,5.92549723 L10.2407376,5.92549723 L9.33601611,12.7635981 C9.23807603,13.5476661 8.54025295,14.1003698 7.78121732,13.9846876 C7.16909181,13.8947126 6.69163391,13.3805697 6.6169546,12.7635981 L5.7122331,5.92549723 L3.65426714,5.92549723 C3.0678509,5.92549723 2.78504892,5.19284356 3.190276,4.76867564 L7.53514286,0.192803597 C7.79223558,-0.0642678658 8.20970517,-0.0642678658 8.45333113,0.192803597 L12.812889,4.76867564 C13.2168918,5.19284356 12.9230716,5.92549723 12.3476736,5.92549723' id='Fill-1' fill='%23855CD6'%3E%3C/path%3E %3Cpath d='M12,8 L16,8' id='Stroke-6' stroke='%23575E75' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E %3Cpath d='M0,8 L4,8' id='Stroke-10' stroke='%23575E75' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22090
23352
 
22091
23353
  /***/ }),
22092
- /* 65 */
23354
+ /* 66 */
22093
23355
  /***/ (function(module, exports) {
22094
23356
 
22095
23357
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eundo%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='undo' fill='%23855CD6'%3E %3Cpath d='M15.5581635,12.7700651 L11.8403972,16.4941315 C11.5610922,16.7671364 11.1830854,16.9211391 10.7903784,16.9211391 C10.3990715,16.9211391 10.0210647,16.7671364 9.74035971,16.4941315 L6.02399342,12.7700651 C5.5969858,12.3430574 5.47098355,11.7060461 5.70198767,11.1530362 C5.93299179,10.6000263 6.46500128,10.24302 7.06701202,10.24302 L8.40403587,10.24302 C8.36903525,9.92101423 8.27803362,9.55700774 8.12403088,9.17200087 C8.07573002,9.05999887 8.02602913,8.94799688 7.97002813,8.83599488 C7.89302676,8.70999263 7.90072689,8.67499201 7.79502501,8.52098926 C7.62702201,8.26898476 7.47301926,8.07998139 7.29031601,7.86297752 C6.9200094,7.4639704 6.47200141,7.12096429 5.99599292,6.86895979 C5.5129843,6.6169553 5.00897531,6.46295255 4.56096732,6.37895105 C4.11995945,6.30194968 3.71395221,6.29494955 3.47594796,6.29494955 C3.35694584,6.28794943 3.2029431,6.31594993 3.12594172,6.32295005 C3.04194022,6.32995018 2.99293935,6.3369503 2.99293935,6.3369503 C2.49593048,6.38595117 2.04792249,6.02194468 1.99892162,5.52493582 C1.95692087,5.10492832 2.20192524,4.72692158 2.57293186,4.58691908 C2.57293186,4.58691908 2.62193273,4.56591871 2.6989341,4.53791821 C2.78993573,4.50991771 2.87393723,4.46091684 3.06994072,4.40491584 C3.46194772,4.28591371 3.95895658,4.15991147 4.60996819,4.09691034 C5.25397968,4.04090934 6.03099354,4.05490959 6.85070816,4.22291259 C7.66902276,4.39791571 8.53003812,4.72692158 9.32805235,5.20293007 C9.7060591,5.44793444 10.1120663,5.73493956 10.427072,6.01494456 C10.5670745,6.11994643 10.8050787,6.35795068 10.9450812,6.5049533 C11.1060841,6.67295629 11.2530867,6.84095929 11.4007893,7.01596241 C11.9670994,7.7159749 12.3871069,8.47198839 12.6601118,9.15800062 C12.8211147,9.55000762 12.9331167,9.92101423 13.0171182,10.24302 L14.5151449,10.24302 C15.1171556,10.24302 15.6491651,10.6000263 15.8801692,11.1530362 C16.1111734,11.7060461 15.9851711,12.3430574 15.5581635,12.7700651' id='Fill-1' transform='translate(8.994247, 10.494247) scale(-1, 1) rotate(-45.000000) translate(-8.994247, -10.494247) '%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22096
23358
 
22097
23359
  /***/ }),
22098
- /* 66 */
23360
+ /* 67 */
22099
23361
  /***/ (function(module, exports) {
22100
23362
 
22101
23363
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eungroup%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='ungroup' stroke-width='0.75'%3E %3Cg id='ungroup-icon' transform='translate(10.000000, 10.000000) rotate(180.000000) translate(-10.000000, -10.000000) translate(2.000000, 2.000000)'%3E %3Crect id='Rectangle-3-Copy' stroke='%23575E75' fill='%23FFFFFF' x='6.5' y='6.5' width='8' height='8' rx='0.5'%3E%3C/rect%3E %3Crect id='Rectangle-3' stroke='%23575E75' fill='%23575E75' x='1.5' y='1.5' width='8' height='8' rx='0.5'%3E%3C/rect%3E %3Crect id='Rectangle-2' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='0' y='0' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy-2' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='8' y='0' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='0' y='8' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy-3' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='8' y='8' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy-4' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='13' y='5' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy-5' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='13' y='13' width='3' height='3'%3E%3C/rect%3E %3Crect id='Rectangle-2-Copy-6' stroke='%23855CD6' fill='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' x='5' y='13' width='3' height='3'%3E%3C/rect%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22102
23364
 
22103
23365
  /***/ }),
22104
- /* 67 */
23366
+ /* 68 */
22105
23367
  /***/ (function(module, exports) {
22106
23368
 
22107
23369
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 48.2 (47327) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Ecopy v2%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='copy-v2'%3E %3Cg id='copy' transform='translate(3.000000, 2.000000)'%3E %3Cpolyline id='Path-3' stroke-opacity='0.5' stroke='%23575E75' stroke-linecap='round' stroke-linejoin='round' stroke-dasharray='1,2' points='0.503173828 3 0.503173828 15.5 13 15.5'%3E%3C/polyline%3E %3Cpath d='M2,1.00684547 C2,0.450780073 2.45303631,0 2.99703014,0 L10,0 L10,2.34995317 C10,3.26124887 10.7336617,4 11.6500468,4 L14,4 L14,13.0046024 C14,13.5543453 13.544239,14 12.9975267,14 L3.00247329,14 C2.44882258,14 2,13.5500512 2,12.9931545 L2,1.00684547 Z' id='Rectangle-4' fill='%23855CD6'%3E%3C/path%3E %3Cpath d='M11,0 L14,3 L11.9989566,3 C11.4472481,3 11,2.55733967 11,2.00104344 L11,0 Z' id='Rectangle-5' fill='%23855CD6'%3E%3C/path%3E %3Cpath d='M9.8115942,9.1884058 L8.6884058,9.1884058 L8.6884058,10.3115942 C8.6884058,10.6859903 8.38647343,11 8,11 C7.61352657,11 7.3115942,10.6859903 7.3115942,10.3115942 L7.3115942,9.1884058 L6.1884058,9.1884058 C5.81400966,9.1884058 5.5,8.88647343 5.5,8.5 C5.5,8.11352657 5.81400966,7.8115942 6.1884058,7.8115942 L7.3115942,7.8115942 L7.3115942,6.6884058 C7.3115942,6.31280193 7.61352657,6 8,6 C8.38647343,6 8.6884058,6.31280193 8.6884058,6.6884058 L8.6884058,7.8115942 L9.8115942,7.8115942 C10.1859903,7.8115942 10.5,8.11352657 10.5,8.5 C10.5,8.88647343 10.1859903,9.1884058 9.8115942,9.1884058 Z' id='Fill-1' stroke='%23FFFFFF' stroke-width='0.25' fill='%23FFFFFF'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22108
23370
 
22109
23371
  /***/ }),
22110
- /* 68 */
23372
+ /* 69 */
22111
23373
  /***/ (function(module, exports) {
22112
23374
 
22113
23375
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 48.2 (47327) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Epaste v2%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='paste-v2'%3E %3Cg id='paste' transform='translate(3.000000, 2.000000)'%3E %3Cpolyline id='Path-3' stroke-opacity='0.5' stroke='%23575E75' stroke-linecap='round' stroke-linejoin='round' stroke-dasharray='1,2' transform='translate(6.748413, 6.750000) scale(1, -1) translate(-6.748413, -6.750000) ' points='0.5 0.5 0.5 13 12.9968262 13'%3E%3C/polyline%3E %3Cpath d='M2,3.00684547 C2,2.45078007 2.45303631,2 2.99703014,2 L10,2 L10,4.34995317 C10,5.26124887 10.7336617,6 11.6500468,6 L14,6 L14,15.0046024 C14,15.5543453 13.544239,16 12.9975267,16 L3.00247329,16 C2.44882258,16 2,15.5500512 2,14.9931545 L2,3.00684547 Z' id='Rectangle-4' fill='%23855CD6'%3E%3C/path%3E %3Cpath d='M11,2 L14,5 L11.9989566,5 C11.4472481,5 11,4.55733967 11,4.00104344 L11,2 Z' id='Rectangle-5' fill='%23855CD6'%3E%3C/path%3E %3Cpath d='M8.34791833,12.8771885 C8.26180668,12.9633001 8.14699113,13.0063559 8.03217559,13.0063559 C7.9030081,13.0063559 7.78819256,12.9633001 7.70208091,12.8771885 L5.86503222,11.0401398 C5.73586474,10.8966203 5.69280891,10.7100451 5.76456862,10.5378218 C5.83632834,10.3655985 5.99419971,10.2651349 6.18077497,10.2651349 L6.92707599,10.2651349 L7.28587456,7.66743321 C7.31457845,7.46650601 7.41504205,7.27993075 7.57291342,7.16511521 C7.73078479,7.03594773 7.94606393,6.97853995 8.13263919,7.00724384 C8.47708582,7.06321642 8.74977273,7.33733852 8.79282856,7.66743321 L9.16597907,10.2651349 L9.86922427,10.2651349 C10.0557995,10.2651349 10.2136709,10.3799504 10.2854306,10.5521737 C10.3571903,10.7100451 10.3141345,10.9109723 10.184967,11.0401398 L8.34791833,12.8771885 Z' id='Fill-1' fill='%23FFFFFF'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22114
23376
 
22115
23377
  /***/ }),
22116
- /* 69 */
23378
+ /* 70 */
22117
23379
  /***/ (function(module, exports) {
22118
23380
 
22119
23381
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Ecurved-point%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='curved-point'%3E %3Cpath d='M2,15 C2,10.5818452 5.58151214,7 10.000744,7 C14.4184879,7 18,10.5818452 18,15' id='Stroke-3' stroke='%23855CD6' stroke-width='0.75' fill-opacity='0.25' fill='%23855CD6' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E %3Cpath d='M3,7 L17,7' id='Stroke-7' stroke='%23855CD6' stroke-width='0.75' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E %3Ccircle id='Oval-4' fill-opacity='0.25' fill='%23855CD6' cx='10' cy='7' r='3'%3E%3C/circle%3E %3Ccircle id='Oval-4' fill='%23855CD6' cx='10' cy='7' r='2'%3E%3C/circle%3E %3Ccircle id='Oval-5' fill='%23855CD6' cx='3' cy='7' r='1'%3E%3C/circle%3E %3Ccircle id='Oval-5-Copy' fill='%23855CD6' cx='17' cy='7' r='1'%3E%3C/circle%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22120
23382
 
22121
23383
  /***/ }),
22122
- /* 70 */
23384
+ /* 71 */
22123
23385
  /***/ (function(module, exports) {
22124
23386
 
22125
23387
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eflip-horizontal%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='flip-horizontal'%3E %3Cg transform='translate(2.000000, 3.000000)'%3E %3Ccircle id='Oval' fill='%23575E75' opacity='0.5' cx='8' cy='0.75' r='1'%3E%3C/circle%3E %3Ccircle id='Oval' fill='%23575E75' opacity='0.5' cx='8' cy='13.25' r='1'%3E%3C/circle%3E %3Ccircle id='Oval-Copy' fill='%23575E75' opacity='0.5' cx='8' cy='3.875' r='1'%3E%3C/circle%3E %3Ccircle id='Oval-Copy-2' fill='%23575E75' opacity='0.5' cx='8' cy='7' r='1'%3E%3C/circle%3E %3Ccircle id='Oval-Copy-3' fill='%23575E75' opacity='0.5' cx='8' cy='10.125' r='1'%3E%3C/circle%3E %3Cpath d='M16,3.08425423 L16,10.9157458 C16,11.4342626 15.2574491,11.6956996 14.8235798,11.3282353 L10.2019293,7.41103711 C9.93269025,7.18445835 9.93269025,6.81408922 10.2019293,6.58751046 L14.8235798,2.67176469 C15.2574491,2.30430042 16,2.56573745 16,3.08425423' id='Fill-11' fill='%23855CD6' opacity='0.5'%3E%3C/path%3E %3Cpath d='M0,10.9157458 L0,3.08425423 C0,2.56573745 0.742550911,2.30430042 1.17470525,2.67176469 L5.79807074,6.58896289 C6.06730975,6.81554165 6.06730975,7.18591078 5.79807074,7.41248954 L1.17470525,11.3282353 C0.742550911,11.6956996 0,11.4342626 0,10.9157458' id='Fill-14' fill='%23855CD6'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22126
23388
 
22127
23389
  /***/ }),
22128
- /* 71 */
23390
+ /* 72 */
22129
23391
  /***/ (function(module, exports) {
22130
23392
 
22131
23393
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eflip-vertical%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='flip-vertical'%3E %3Cg id='flip-horizontal' transform='translate(10.000000, 10.000000) rotate(90.000000) translate(-10.000000, -10.000000) translate(2.000000, 3.000000)'%3E %3Ccircle id='Oval' fill='%23575E75' opacity='0.5' cx='8' cy='0.75' r='1'%3E%3C/circle%3E %3Ccircle id='Oval' fill='%23575E75' opacity='0.5' cx='8' cy='13.25' r='1'%3E%3C/circle%3E %3Ccircle id='Oval-Copy' fill='%23575E75' opacity='0.5' cx='8' cy='3.875' r='1'%3E%3C/circle%3E %3Ccircle id='Oval-Copy-2' fill='%23575E75' opacity='0.5' cx='8' cy='7' r='1'%3E%3C/circle%3E %3Ccircle id='Oval-Copy-3' fill='%23575E75' opacity='0.5' cx='8' cy='10.125' r='1'%3E%3C/circle%3E %3Cpath d='M16,3.08425423 L16,10.9157458 C16,11.4342626 15.2574491,11.6956996 14.8235798,11.3282353 L10.2019293,7.41103711 C9.93269025,7.18445835 9.93269025,6.81408922 10.2019293,6.58751046 L14.8235798,2.67176469 C15.2574491,2.30430042 16,2.56573745 16,3.08425423' id='Fill-11' fill='%23855CD6' opacity='0.5'%3E%3C/path%3E %3Cpath d='M0,10.9157458 L0,3.08425423 C0,2.56573745 0.742550911,2.30430042 1.17470525,2.67176469 L5.79807074,6.58896289 C6.06730975,6.81554165 6.06730975,7.18591078 5.79807074,7.41248954 L1.17470525,11.3282353 C0.742550911,11.6956996 0,11.4342626 0,10.9157458' id='Fill-14' fill='%23855CD6'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22132
23394
 
22133
23395
  /***/ }),
22134
- /* 72 */
23396
+ /* 73 */
22135
23397
  /***/ (function(module, exports) {
22136
23398
 
22137
23399
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Estraight-point%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='straight-point' fill='%23855CD6'%3E %3Cpolyline id='Path-2' stroke='%23855CD6' stroke-width='0.75' fill-opacity='0.25' stroke-linecap='round' stroke-linejoin='round' points='2 15 10 7 18 15'%3E%3C/polyline%3E %3Ccircle id='Oval-4' fill-opacity='0.25' cx='10' cy='7' r='3'%3E%3C/circle%3E %3Ccircle id='Oval-4' cx='10' cy='7' r='2'%3E%3C/circle%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22138
23400
 
22139
23401
  /***/ }),
22140
- /* 73 */
23402
+ /* 74 */
22141
23403
  /***/ (function(module, exports) {
22142
23404
 
22143
23405
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eoval-outlined%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='oval-outlined' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='Group' transform='translate(4.000000, 4.000000)' fill='%23575E75'%3E %3Cpolygon id='Fill-1' points='0 9.33333333 1.33333333 9.33333333 1.33333333 2.66666667 0 2.66666667'%3E%3C/polygon%3E %3Cpolygon id='Fill-2' points='1.33333333 2.66666667 2.66666667 2.66666667 2.66666667 1.33333333 1.33333333 1.33333333'%3E%3C/polygon%3E %3Cpolygon id='Fill-3' points='1.33333333 10.6666667 2.66666667 10.6666667 2.66666667 9.33333333 1.33333333 9.33333333'%3E%3C/polygon%3E %3Cpolygon id='Fill-4' points='2.66666667 1.33333333 9.33333333 1.33333333 9.33333333 0 2.66666667 0'%3E%3C/polygon%3E %3Cpolygon id='Fill-5' points='9.33333333 2.66666667 10.6666667 2.66666667 10.6666667 1.33333333 9.33333333 1.33333333'%3E%3C/polygon%3E %3Cpolygon id='Fill-6' points='10.6666667 9.33333333 12 9.33333333 12 2.66666667 10.6666667 2.66666667'%3E%3C/polygon%3E %3Cpolygon id='Fill-7' points='9.33333333 10.6666667 10.6666667 10.6666667 10.6666667 9.33333333 9.33333333 9.33333333'%3E%3C/polygon%3E %3Cpolygon id='Fill-8' points='2.66666667 12 9.33333333 12 9.33333333 10.6666667 2.66666667 10.6666667'%3E%3C/polygon%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22144
23406
 
22145
23407
  /***/ }),
22146
- /* 74 */
23408
+ /* 75 */
22147
23409
  /***/ (function(module, exports) {
22148
23410
 
22149
23411
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Erectange-outlined%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='rectange-outlined' stroke='none' stroke-width='1.33333333' fill='none' fill-rule='evenodd'%3E %3Crect id='rectangle-icon' stroke='%23575E75' x='4.5' y='4.5' width='11' height='11'%3E%3C/rect%3E %3C/g%3E %3C/svg%3E"
22150
23412
 
22151
23413
  /***/ }),
22152
- /* 75 */
23414
+ /* 76 */
22153
23415
  /***/ (function(module, exports) {
22154
23416
 
22155
23417
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eoval%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='oval' stroke-width='1.5' stroke='%23575E75'%3E %3Ccircle id='oval-icon' cx='10' cy='10' r='5'%3E%3C/circle%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22156
23418
 
22157
23419
  /***/ }),
22158
- /* 76 */
23420
+ /* 77 */
22159
23421
  /***/ (function(module, exports) {
22160
23422
 
22161
23423
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Erectangle%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E %3Cg id='rectangle' stroke='%23575E75' stroke-width='1.5'%3E %3Crect id='rectangle-icon' x='5' y='5' width='10' height='10'%3E%3C/rect%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22162
23424
 
22163
23425
  /***/ }),
22164
- /* 77 */
23426
+ /* 78 */
22165
23427
  /***/ (function(module, exports) {
22166
23428
 
22167
23429
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Ereshape%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='reshape'%3E %3Cg id='reshape-icon' transform='translate(3.000000, 2.000000)'%3E %3Cpath d='M6.3718,4e-05 C6.3718,1.20298846 6.03840639,2.32811001 5.45898306,3.28804076 C5.31876362,3.52034235 4.30079812,3.15107034 3.82818604,3.61859131 C3.35557395,4.08611228 3.47873759,5.34529147 3.26181884,5.47482181 C2.30759304,6.04462589 1.19191205,6.37204 -0.0002,6.37204' id='Stroke-1' stroke='%23575E75' stroke-width='0.75'%3E%3C/path%3E %3Cpath d='M4,6.94999094 C2.85887984,6.71835578 2,5.70947896 2,4.5 C2,3.11928813 3.11928813,2 4.5,2 C5.88071187,2 7,3.11928813 7,4.5 C7,4.56854233 6.99724162,4.63644042 6.99182982,4.70358929 L6.68137747,4.42017327 C5.65792772,3.48493325 4,4.20484091 4,5.595932 L4,6.94999094 Z' id='Combined-Shape' fill='%23575E75'%3E%3C/path%3E %3Cpath d='M4,7.96455557 C2.30385293,7.72194074 1,6.26323595 1,4.5 C1,2.56700338 2.56700338,1 4.5,1 C6.43299662,1 8,2.56700338 8,4.5 C8,4.84508345 7.95005914,5.1785026 7.85701065,5.4934242 L6.68137747,4.42017327 C5.65792772,3.48493325 4,4.20484091 4,5.595932 L4,7.96455557 Z' id='Oval-2' fill-opacity='0.15' fill='%23575E75'%3E%3C/path%3E %3Cpath d='M7.87915329,13.1684522 L8.98467414,15.6316703 C9.20235954,16.1186581 9.76980913,16.3337238 10.2516521,16.1137141 C10.7334951,15.8924683 10.9462887,15.3189598 10.7286032,14.833208 L9.63583183,12.3973461 L12.3974628,12.3973461 C12.945512,12.3973461 13.207518,11.7313818 12.8048941,11.3644462 L6.00716065,5.15870674 C5.6225647,4.80725864 5,5.07769498 5,5.595932 L5,14.8026807 C5,15.3507015 5.68145595,15.608033 6.04802397,15.1994001 L7.87915329,13.1684522 Z' id='select-icon' fill='%23575E75'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22168
23430
 
22169
23431
  /***/ }),
22170
- /* 78 */
23432
+ /* 79 */
22171
23433
  /***/ (function(module, exports) {
22172
23434
 
22173
23435
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Eselect%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='select' fill='%23575E75'%3E %3Cpath d='M9.08480709,12.7519131 L10.2692937,15.3910753 C10.5025281,15.912848 11.1105098,16.1432755 11.6267701,15.9075508 C12.1430304,15.6705018 12.3710236,15.0560284 12.1377892,14.53558 L10.9669627,11.925728 L13.925853,11.925728 C14.5130486,11.925728 14.7937693,11.2121948 14.3623865,10.8190495 L7.0791007,4.17004294 C6.6670336,3.7934914 6,4.08324462 6,4.63849857 L6,14.5028722 C6,15.0900373 6.73013138,15.3657496 7.12288282,14.9279287 L9.08480709,12.7519131 Z' id='select-icon'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22174
23436
 
22175
23437
  /***/ }),
22176
- /* 79 */
23438
+ /* 80 */
22177
23439
  /***/ (function(module, exports) {
22178
23440
 
22179
23441
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8' standalone='no'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 43.2 (39069) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Etext%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='text' fill='%23575E75'%3E %3Cpath d='M16,4.35294118 L16,6.85176471 C16,7.04941176 15.8447059,7.20470588 15.6470588,7.20470588 L14.8988235,7.20470588 C14.7576471,7.20470588 14.6164706,7.12 14.5741176,6.99294118 L14.2070588,6.11764706 L11.0588235,6.11764706 L11.0588235,14.2917647 L11.92,14.6164706 C12.0611765,14.6729412 12.16,14.8 12.16,14.9552941 L12.16,15.6470588 C12.16,15.8447059 11.9905882,16 11.8070588,16 L8.20705882,16 C8.02352941,16 7.85411765,15.8447059 7.85411765,15.6470588 L7.85411765,14.9552941 C7.85411765,14.8 7.95294118,14.6729412 8.08,14.6164706 L8.94117647,14.2917647 L8.94117647,6.11764706 L5.80705882,6.11764706 L5.44,6.99294118 C5.38352941,7.12 5.25647059,7.20470588 5.11529412,7.20470588 L4.35294118,7.20470588 C4.16941176,7.20470588 4,7.04941176 4,6.85176471 L4,4.35294118 C4,4.15529412 4.16941176,4 4.35294118,4 L15.6470588,4 C15.8447059,4 16,4.15529412 16,4.35294118' id='text-icon'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E"
22180
23442
 
22181
23443
  /***/ }),
22182
- /* 80 */
23444
+ /* 81 */
22183
23445
  /***/ (function(module, exports) {
22184
23446
 
22185
23447
  module.exports = "data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='20px' height='20px' viewBox='0 0 20 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3C!-- Generator: Sketch 49.3 (51167) - http://www.bohemiancoding.com/sketch --%3E %3Ctitle%3Etext%3C/title%3E %3Cdesc%3ECreated with Sketch.%3C/desc%3E %3Cdefs%3E%3C/defs%3E %3Cg id='text' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cpolygon id='Page-1' fill='%23575E75' points='4 4 4 8 6 8 6 6 9 6 9 14 7 14 7 16 13 16 13 14 11 14 11 6 14 6 14 8 16 8 16 4'%3E%3C/polygon%3E %3C/g%3E %3C/svg%3E"
22186
23448
 
22187
23449
  /***/ }),
22188
- /* 81 */
23450
+ /* 82 */
22189
23451
  /***/ (function(module, exports) {
22190
23452
 
22191
23453
  module.exports = "data:image/svg+xml,%3C?xml version='1.0'?%3E %3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' data-name='Layer 1' viewBox='6 6 24 24'%3E %3Cdefs%3E %3Cstyle%3E .cls-4%7Bfill:none;stroke:%23575e75;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;%7D %3C/style%3E %3C/defs%3E %3Ctitle%3Ezoom-in%3C/title%3E %3Cg class='cls-3'%3E %3Ccircle class='cls-4' cx='18' cy='18' r='7'/%3E %3Cline class='cls-4' x1='23' y1='23' x2='26' y2='26'/%3E %3Cline class='cls-4' x1='16' y1='18' x2='20' y2='18'/%3E %3Cline class='cls-4' x1='18' y1='16' x2='18' y2='20'/%3E %3C/g%3E %3C/svg%3E"
22192
23454
 
22193
23455
  /***/ }),
22194
- /* 82 */
23456
+ /* 83 */
22195
23457
  /***/ (function(module, exports) {
22196
23458
 
22197
23459
  module.exports = "data:image/svg+xml,%3C?xml version='1.0'?%3E %3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' data-name='Layer 1' viewBox='6 6 24 24'%3E %3Cdefs%3E %3Cstyle%3E .cls-4%7Bfill:none;stroke:%23575e75;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;%7D %3C/style%3E %3C/defs%3E %3Ctitle%3Ezoom-out%3C/title%3E %3Cg class='cls-3'%3E %3Ccircle class='cls-4' cx='18' cy='18' r='7'/%3E %3Cline class='cls-4' x1='23' y1='23' x2='26' y2='26'/%3E %3Cline class='cls-4' x1='16' y1='18' x2='20' y2='18'/%3E %3C/g%3E %3C/svg%3E"
22198
23460
 
22199
23461
  /***/ }),
22200
- /* 83 */
23462
+ /* 84 */
22201
23463
  /***/ (function(module, exports) {
22202
23464
 
22203
23465
  module.exports = "data:image/svg+xml,%3C?xml version='1.0'?%3E %3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' data-name='Layer 1' viewBox='6 6 24 24'%3E %3Cdefs%3E %3Cstyle%3E .cls-4%7Bfill:%23575e75;%7D %3C/style%3E %3C/defs%3E %3Ctitle%3Ezoom-reset%3C/title%3E %3Cg class='cls-3'%3E %3Crect class='cls-4' x='13' y='14' width='10' height='2' rx='1' ry='1'/%3E %3Crect class='cls-4' x='13' y='20' width='10' height='2' rx='1' ry='1'/%3E %3C/g%3E %3C/svg%3E"
22204
23466
 
22205
23467
  /***/ }),
22206
- /* 84 */
23468
+ /* 85 */
22207
23469
  /***/ (function(module, exports) {
22208
23470
 
22209
23471
  /* (ignored) */
22210
23472
 
22211
23473
  /***/ }),
22212
- /* 85 */
23474
+ /* 86 */
22213
23475
  /***/ (function(__webpack_module__, __webpack_exports__, __webpack_require__) {
22214
23476
 
22215
23477
  "use strict";
@@ -28472,13 +29734,13 @@ function tokenizer(input, options) {
28472
29734
 
28473
29735
 
28474
29736
  /***/ }),
28475
- /* 86 */
29737
+ /* 87 */
28476
29738
  /***/ (function(module, exports) {
28477
29739
 
28478
29740
  /* (ignored) */
28479
29741
 
28480
29742
  /***/ }),
28481
- /* 87 */
29743
+ /* 88 */
28482
29744
  /***/ (function(module, exports, __webpack_require__) {
28483
29745
 
28484
29746
  // Imports
@@ -28495,7 +29757,7 @@ module.exports = exports;
28495
29757
 
28496
29758
 
28497
29759
  /***/ }),
28498
- /* 88 */
29760
+ /* 89 */
28499
29761
  /***/ (function(module, exports, __webpack_require__) {
28500
29762
 
28501
29763
  // Imports
@@ -28522,7 +29784,7 @@ module.exports = exports;
28522
29784
 
28523
29785
 
28524
29786
  /***/ }),
28525
- /* 89 */
29787
+ /* 90 */
28526
29788
  /***/ (function(module, exports, __webpack_require__) {
28527
29789
 
28528
29790
  // Imports
@@ -28541,7 +29803,7 @@ module.exports = exports;
28541
29803
 
28542
29804
 
28543
29805
  /***/ }),
28544
- /* 90 */
29806
+ /* 91 */
28545
29807
  /***/ (function(module, exports, __webpack_require__) {
28546
29808
 
28547
29809
  // Imports
@@ -28562,7 +29824,7 @@ module.exports = exports;
28562
29824
 
28563
29825
 
28564
29826
  /***/ }),
28565
- /* 91 */
29827
+ /* 92 */
28566
29828
  /***/ (function(module, exports) {
28567
29829
 
28568
29830
  // shim for using process in browser
@@ -28752,7 +30014,7 @@ process.umask = function() { return 0; };
28752
30014
 
28753
30015
 
28754
30016
  /***/ }),
28755
- /* 92 */
30017
+ /* 93 */
28756
30018
  /***/ (function(module, exports, __webpack_require__) {
28757
30019
 
28758
30020
  // Imports
@@ -28769,10 +30031,10 @@ module.exports = exports;
28769
30031
 
28770
30032
 
28771
30033
  /***/ }),
28772
- /* 93 */
30034
+ /* 94 */
28773
30035
  /***/ (function(module, exports, __webpack_require__) {
28774
30036
 
28775
- var conversions = __webpack_require__(94);
30037
+ var conversions = __webpack_require__(95);
28776
30038
 
28777
30039
  var convert = function() {
28778
30040
  return new Converter();
@@ -28866,7 +30128,7 @@ Converter.prototype.getValues = function(space) {
28866
30128
  module.exports = convert;
28867
30129
 
28868
30130
  /***/ }),
28869
- /* 94 */
30131
+ /* 95 */
28870
30132
  /***/ (function(module, exports) {
28871
30133
 
28872
30134
  /* MIT license */
@@ -29570,7 +30832,7 @@ for (var key in cssKeywords) {
29570
30832
 
29571
30833
 
29572
30834
  /***/ }),
29573
- /* 95 */
30835
+ /* 96 */
29574
30836
  /***/ (function(module, exports, __webpack_require__) {
29575
30837
 
29576
30838
  // Imports
@@ -29595,7 +30857,7 @@ module.exports = exports;
29595
30857
 
29596
30858
 
29597
30859
  /***/ }),
29598
- /* 96 */
30860
+ /* 97 */
29599
30861
  /***/ (function(module, exports, __webpack_require__) {
29600
30862
 
29601
30863
  // Imports
@@ -29613,7 +30875,7 @@ module.exports = exports;
29613
30875
 
29614
30876
 
29615
30877
  /***/ }),
29616
- /* 97 */
30878
+ /* 98 */
29617
30879
  /***/ (function(module, exports, __webpack_require__) {
29618
30880
 
29619
30881
  // Imports
@@ -29634,7 +30896,7 @@ module.exports = exports;
29634
30896
 
29635
30897
 
29636
30898
  /***/ }),
29637
- /* 98 */
30899
+ /* 99 */
29638
30900
  /***/ (function(module, exports, __webpack_require__) {
29639
30901
 
29640
30902
  // Imports
@@ -29677,7 +30939,7 @@ module.exports = exports;
29677
30939
 
29678
30940
 
29679
30941
  /***/ }),
29680
- /* 99 */
30942
+ /* 100 */
29681
30943
  /***/ (function(module, exports, __webpack_require__) {
29682
30944
 
29683
30945
  // Imports
@@ -29695,7 +30957,7 @@ module.exports = exports;
29695
30957
 
29696
30958
 
29697
30959
  /***/ }),
29698
- /* 100 */
30960
+ /* 101 */
29699
30961
  /***/ (function(module, exports, __webpack_require__) {
29700
30962
 
29701
30963
  // Imports
@@ -29717,7 +30979,7 @@ module.exports = exports;
29717
30979
 
29718
30980
 
29719
30981
  /***/ }),
29720
- /* 101 */
30982
+ /* 102 */
29721
30983
  /***/ (function(module, exports, __webpack_require__) {
29722
30984
 
29723
30985
  // Imports
@@ -29734,7 +30996,7 @@ module.exports = exports;
29734
30996
 
29735
30997
 
29736
30998
  /***/ }),
29737
- /* 102 */
30999
+ /* 103 */
29738
31000
  /***/ (function(module, exports, __webpack_require__) {
29739
31001
 
29740
31002
  // Imports
@@ -29756,7 +31018,7 @@ module.exports = exports;
29756
31018
 
29757
31019
 
29758
31020
  /***/ }),
29759
- /* 103 */
31021
+ /* 104 */
29760
31022
  /***/ (function(module, exports, __webpack_require__) {
29761
31023
 
29762
31024
  // Imports
@@ -29777,7 +31039,7 @@ module.exports = exports;
29777
31039
 
29778
31040
 
29779
31041
  /***/ }),
29780
- /* 104 */
31042
+ /* 105 */
29781
31043
  /***/ (function(module, exports, __webpack_require__) {
29782
31044
 
29783
31045
  // Imports
@@ -29817,7 +31079,35 @@ module.exports = exports;
29817
31079
 
29818
31080
 
29819
31081
  /***/ }),
29820
- /* 105 */
31082
+ /* 106 */
31083
+ /***/ (function(module, exports) {
31084
+
31085
+ module.exports = function(module) {
31086
+ if (!module.webpackPolyfill) {
31087
+ module.deprecate = function() {};
31088
+ module.paths = [];
31089
+ // module.parent = undefined by default
31090
+ if (!module.children) module.children = [];
31091
+ Object.defineProperty(module, "loaded", {
31092
+ enumerable: true,
31093
+ get: function() {
31094
+ return module.l;
31095
+ }
31096
+ });
31097
+ Object.defineProperty(module, "id", {
31098
+ enumerable: true,
31099
+ get: function() {
31100
+ return module.i;
31101
+ }
31102
+ });
31103
+ module.webpackPolyfill = 1;
31104
+ }
31105
+ return module;
31106
+ };
31107
+
31108
+
31109
+ /***/ }),
31110
+ /* 107 */
29821
31111
  /***/ (function(module, exports, __webpack_require__) {
29822
31112
 
29823
31113
  // Imports
@@ -29852,7 +31142,7 @@ module.exports = exports;
29852
31142
 
29853
31143
 
29854
31144
  /***/ }),
29855
- /* 106 */
31145
+ /* 108 */
29856
31146
  /***/ (function(module, exports, __webpack_require__) {
29857
31147
 
29858
31148
  // Imports
@@ -29875,7 +31165,7 @@ module.exports = exports;
29875
31165
 
29876
31166
 
29877
31167
  /***/ }),
29878
- /* 107 */
31168
+ /* 109 */
29879
31169
  /***/ (function(module, exports, __webpack_require__) {
29880
31170
 
29881
31171
  // Imports
@@ -29933,7 +31223,7 @@ module.exports = exports;
29933
31223
 
29934
31224
 
29935
31225
  /***/ }),
29936
- /* 108 */
31226
+ /* 110 */
29937
31227
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
29938
31228
 
29939
31229
  "use strict";
@@ -29978,6 +31268,9 @@ var external_react_intl_ = __webpack_require__(9);
29978
31268
  var lodash_bindall = __webpack_require__(3);
29979
31269
  var lodash_bindall_default = /*#__PURE__*/__webpack_require__.n(lodash_bindall);
29980
31270
 
31271
+ // EXTERNAL MODULE: external "@scratch/scratch-svg-renderer"
31272
+ var scratch_svg_renderer_ = __webpack_require__(46);
31273
+
29981
31274
  // EXTERNAL MODULE: ./node_modules/keymirror/index.js
29982
31275
  var keymirror = __webpack_require__(14);
29983
31276
  var keymirror_default = /*#__PURE__*/__webpack_require__.n(keymirror);
@@ -32935,7 +34228,7 @@ var zoom_levels_setZoomLevelId = function setZoomLevelId(zoomLevelId) {
32935
34228
  };
32936
34229
 
32937
34230
  // EXTERNAL MODULE: ./src/containers/paper-canvas.css
32938
- var paper_canvas = __webpack_require__(46);
34231
+ var paper_canvas = __webpack_require__(47);
32939
34232
  var paper_canvas_default = /*#__PURE__*/__webpack_require__.n(paper_canvas);
32940
34233
 
32941
34234
  // CONCATENATED MODULE: ./src/containers/paper-canvas.jsx
@@ -32974,6 +34267,7 @@ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf
32974
34267
 
32975
34268
 
32976
34269
 
34270
+
32977
34271
 
32978
34272
  var paper_canvas_PaperCanvas = /*#__PURE__*/function (_React$Component) {
32979
34273
  function PaperCanvas(props) {
@@ -33158,6 +34452,13 @@ var paper_canvas_PaperCanvas = /*#__PURE__*/function (_React$Component) {
33158
34452
  if (svgAttrs && svgAttrs[0].indexOf('xmlns=') === -1) {
33159
34453
  svg = svg.replace('<svg ', '<svg xmlns="http://www.w3.org/2000/svg" ');
33160
34454
  }
34455
+ // 3. Strip elements and attributes that fire on DOM-insertion. paper.js
34456
+ // calls importSVG -> appendChild internally, so anything dangerous left
34457
+ // in the SVG executes against the embedding origin. DOMPurify's SVG
34458
+ // profile drops <script>, <foreignObject>, <a>, event-handler attrs,
34459
+ // and similar. Run after the namespace fixups so DOMPurify sees a
34460
+ // well-formed document.
34461
+ svg = scratch_svg_renderer_["sanitizeSvg"].sanitizeSvgText(svg);
33161
34462
 
33162
34463
  // Get the origin which the viewBox is defined relative to. During import, Paper will translate
33163
34464
  // the viewBox to start at (0, 0), and we need to translate it back for some costumes to render
@@ -37241,7 +38542,7 @@ var bit_rect_mode_mapDispatchToProps = function mapDispatchToProps(dispatch) {
37241
38542
  };
37242
38543
  /* harmony default export */ var containers_bit_rect_mode = (Object(external_react_redux_["connect"])(bit_rect_mode_mapStateToProps, bit_rect_mode_mapDispatchToProps)(bit_rect_mode_BitRectMode));
37243
38544
  // EXTERNAL MODULE: ./src/components/bit-fill-mode/fill.svg
37244
- var fill = __webpack_require__(47);
38545
+ var fill = __webpack_require__(48);
37245
38546
  var fill_default = /*#__PURE__*/__webpack_require__.n(fill);
37246
38547
 
37247
38548
  // CONCATENATED MODULE: ./src/components/bit-fill-mode/bit-fill-mode.jsx
@@ -37998,7 +39299,7 @@ var select_tool_SelectTool = /*#__PURE__*/function (_paper$Tool) {
37998
39299
  }(paper_full_default.a.Tool);
37999
39300
  /* harmony default export */ var select_tool = (select_tool_SelectTool);
38000
39301
  // EXTERNAL MODULE: ./src/components/bit-select-mode/marquee.svg
38001
- var marquee = __webpack_require__(48);
39302
+ var marquee = __webpack_require__(49);
38002
39303
  var marquee_default = /*#__PURE__*/__webpack_require__.n(marquee);
38003
39304
 
38004
39305
  // CONCATENATED MODULE: ./src/components/bit-select-mode/bit-select-mode.jsx
@@ -38151,7 +39452,7 @@ var bit_select_mode_mapDispatchToProps = function mapDispatchToProps(dispatch) {
38151
39452
  var box = __webpack_require__(29);
38152
39453
 
38153
39454
  // EXTERNAL MODULE: ./src/components/button-group/button-group.css
38154
- var button_group = __webpack_require__(50);
39455
+ var button_group = __webpack_require__(51);
38155
39456
  var button_group_default = /*#__PURE__*/__webpack_require__.n(button_group);
38156
39457
 
38157
39458
  // CONCATENATED MODULE: ./src/components/button-group/button-group.jsx
@@ -39708,27 +41009,27 @@ var color_picker = __webpack_require__(6);
39708
41009
  var color_picker_default = /*#__PURE__*/__webpack_require__.n(color_picker);
39709
41010
 
39710
41011
  // EXTERNAL MODULE: ./src/components/color-picker/icons/eye-dropper.svg
39711
- var eye_dropper = __webpack_require__(51);
41012
+ var eye_dropper = __webpack_require__(52);
39712
41013
  var eye_dropper_default = /*#__PURE__*/__webpack_require__.n(eye_dropper);
39713
41014
 
39714
41015
  // EXTERNAL MODULE: ./src/components/color-picker/icons/fill-horz-gradient-enabled.svg
39715
- var fill_horz_gradient_enabled = __webpack_require__(52);
41016
+ var fill_horz_gradient_enabled = __webpack_require__(53);
39716
41017
  var fill_horz_gradient_enabled_default = /*#__PURE__*/__webpack_require__.n(fill_horz_gradient_enabled);
39717
41018
 
39718
41019
  // EXTERNAL MODULE: ./src/components/color-picker/icons/fill-radial-enabled.svg
39719
- var fill_radial_enabled = __webpack_require__(53);
41020
+ var fill_radial_enabled = __webpack_require__(54);
39720
41021
  var fill_radial_enabled_default = /*#__PURE__*/__webpack_require__.n(fill_radial_enabled);
39721
41022
 
39722
41023
  // EXTERNAL MODULE: ./src/components/color-picker/icons/fill-solid-enabled.svg
39723
- var fill_solid_enabled = __webpack_require__(54);
41024
+ var fill_solid_enabled = __webpack_require__(55);
39724
41025
  var fill_solid_enabled_default = /*#__PURE__*/__webpack_require__.n(fill_solid_enabled);
39725
41026
 
39726
41027
  // EXTERNAL MODULE: ./src/components/color-picker/icons/fill-vert-gradient-enabled.svg
39727
- var fill_vert_gradient_enabled = __webpack_require__(55);
41028
+ var fill_vert_gradient_enabled = __webpack_require__(56);
39728
41029
  var fill_vert_gradient_enabled_default = /*#__PURE__*/__webpack_require__.n(fill_vert_gradient_enabled);
39729
41030
 
39730
41031
  // EXTERNAL MODULE: ./src/components/color-picker/icons/swap.svg
39731
- var swap = __webpack_require__(56);
41032
+ var swap = __webpack_require__(57);
39732
41033
  var swap_default = /*#__PURE__*/__webpack_require__.n(swap);
39733
41034
 
39734
41035
  // CONCATENATED MODULE: ./src/components/color-picker/color-picker.jsx
@@ -40896,7 +42197,7 @@ var tools_fill_tool_FillTool = /*#__PURE__*/function (_paper$Tool) {
40896
42197
  }(paper_full_default.a.Tool);
40897
42198
  /* harmony default export */ var tools_fill_tool = (tools_fill_tool_FillTool);
40898
42199
  // EXTERNAL MODULE: ./src/components/fill-mode/fill.svg
40899
- var fill_mode_fill = __webpack_require__(57);
42200
+ var fill_mode_fill = __webpack_require__(58);
40900
42201
  var fill_mode_fill_default = /*#__PURE__*/__webpack_require__.n(fill_mode_fill);
40901
42202
 
40902
42203
  // CONCATENATED MODULE: ./src/components/fill-mode/fill-mode.jsx
@@ -41264,7 +42565,7 @@ var stroke_style_clearStrokeGradient = function clearStrokeGradient() {
41264
42565
  };
41265
42566
 
41266
42567
  // EXTERNAL MODULE: ./src/components/line-mode/line.svg
41267
- var line_mode_line = __webpack_require__(58);
42568
+ var line_mode_line = __webpack_require__(59);
41268
42569
  var line_mode_line_default = /*#__PURE__*/__webpack_require__.n(line_mode_line);
41269
42570
 
41270
42571
  // CONCATENATED MODULE: ./src/components/line-mode/line-mode.jsx
@@ -41745,7 +43046,7 @@ var eye_dropper_EyeDropperTool = /*#__PURE__*/function (_paper$Tool) {
41745
43046
  }(paper_full_default.a.Tool);
41746
43047
 
41747
43048
  // EXTERNAL MODULE: ./src/components/loupe/loupe.css
41748
- var loupe = __webpack_require__(59);
43049
+ var loupe = __webpack_require__(60);
41749
43050
  var loupe_default = /*#__PURE__*/__webpack_require__.n(loupe);
41750
43051
 
41751
43052
  // CONCATENATED MODULE: ./src/components/loupe/loupe.jsx
@@ -42055,7 +43356,7 @@ var dropdown = __webpack_require__(21);
42055
43356
  var dropdown_default = /*#__PURE__*/__webpack_require__.n(dropdown);
42056
43357
 
42057
43358
  // EXTERNAL MODULE: ./src/components/dropdown/dropdown-caret.svg
42058
- var dropdown_caret = __webpack_require__(60);
43359
+ var dropdown_caret = __webpack_require__(61);
42059
43360
  var dropdown_caret_default = /*#__PURE__*/__webpack_require__.n(dropdown_caret);
42060
43361
 
42061
43362
  // CONCATENATED MODULE: ./src/components/dropdown/dropdown.jsx
@@ -42201,11 +43502,11 @@ var fixed_tools = __webpack_require__(10);
42201
43502
  var fixed_tools_default = /*#__PURE__*/__webpack_require__.n(fixed_tools);
42202
43503
 
42203
43504
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/group.svg
42204
- var icons_group = __webpack_require__(61);
43505
+ var icons_group = __webpack_require__(62);
42205
43506
  var group_default = /*#__PURE__*/__webpack_require__.n(icons_group);
42206
43507
 
42207
43508
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/redo.svg
42208
- var icons_redo = __webpack_require__(62);
43509
+ var icons_redo = __webpack_require__(63);
42209
43510
  var redo_default = /*#__PURE__*/__webpack_require__.n(icons_redo);
42210
43511
 
42211
43512
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/send-back.svg
@@ -42213,11 +43514,11 @@ var send_back = __webpack_require__(41);
42213
43514
  var send_back_default = /*#__PURE__*/__webpack_require__.n(send_back);
42214
43515
 
42215
43516
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/send-backward.svg
42216
- var send_backward = __webpack_require__(63);
43517
+ var send_backward = __webpack_require__(64);
42217
43518
  var send_backward_default = /*#__PURE__*/__webpack_require__.n(send_backward);
42218
43519
 
42219
43520
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/send-forward.svg
42220
- var send_forward = __webpack_require__(64);
43521
+ var send_forward = __webpack_require__(65);
42221
43522
  var send_forward_default = /*#__PURE__*/__webpack_require__.n(send_forward);
42222
43523
 
42223
43524
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/send-front.svg
@@ -42225,11 +43526,11 @@ var send_front = __webpack_require__(42);
42225
43526
  var send_front_default = /*#__PURE__*/__webpack_require__.n(send_front);
42226
43527
 
42227
43528
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/undo.svg
42228
- var icons_undo = __webpack_require__(65);
43529
+ var icons_undo = __webpack_require__(66);
42229
43530
  var undo_default = /*#__PURE__*/__webpack_require__.n(icons_undo);
42230
43531
 
42231
43532
  // EXTERNAL MODULE: ./src/components/fixed-tools/icons/ungroup.svg
42232
- var ungroup = __webpack_require__(66);
43533
+ var ungroup = __webpack_require__(67);
42233
43534
  var ungroup_default = /*#__PURE__*/__webpack_require__.n(ungroup);
42234
43535
 
42235
43536
  // CONCATENATED MODULE: ./src/components/fixed-tools/fixed-tools.jsx
@@ -43419,11 +44720,11 @@ var mode_tools = __webpack_require__(13);
43419
44720
  var mode_tools_default = /*#__PURE__*/__webpack_require__.n(mode_tools);
43420
44721
 
43421
44722
  // EXTERNAL MODULE: ./src/components/mode-tools/icons/copy.svg
43422
- var copy = __webpack_require__(67);
44723
+ var copy = __webpack_require__(68);
43423
44724
  var copy_default = /*#__PURE__*/__webpack_require__.n(copy);
43424
44725
 
43425
44726
  // EXTERNAL MODULE: ./src/components/mode-tools/icons/paste.svg
43426
- var paste = __webpack_require__(68);
44727
+ var paste = __webpack_require__(69);
43427
44728
  var paste_default = /*#__PURE__*/__webpack_require__.n(paste);
43428
44729
 
43429
44730
  // EXTERNAL MODULE: ./src/components/mode-tools/icons/delete.svg
@@ -43431,27 +44732,27 @@ var icons_delete = __webpack_require__(43);
43431
44732
  var delete_default = /*#__PURE__*/__webpack_require__.n(icons_delete);
43432
44733
 
43433
44734
  // EXTERNAL MODULE: ./src/components/mode-tools/icons/curved-point.svg
43434
- var curved_point = __webpack_require__(69);
44735
+ var curved_point = __webpack_require__(70);
43435
44736
  var curved_point_default = /*#__PURE__*/__webpack_require__.n(curved_point);
43436
44737
 
43437
44738
  // EXTERNAL MODULE: ./src/components/mode-tools/icons/flip-horizontal.svg
43438
- var flip_horizontal = __webpack_require__(70);
44739
+ var flip_horizontal = __webpack_require__(71);
43439
44740
  var flip_horizontal_default = /*#__PURE__*/__webpack_require__.n(flip_horizontal);
43440
44741
 
43441
44742
  // EXTERNAL MODULE: ./src/components/mode-tools/icons/flip-vertical.svg
43442
- var flip_vertical = __webpack_require__(71);
44743
+ var flip_vertical = __webpack_require__(72);
43443
44744
  var flip_vertical_default = /*#__PURE__*/__webpack_require__.n(flip_vertical);
43444
44745
 
43445
44746
  // EXTERNAL MODULE: ./src/components/mode-tools/icons/straight-point.svg
43446
- var straight_point = __webpack_require__(72);
44747
+ var straight_point = __webpack_require__(73);
43447
44748
  var straight_point_default = /*#__PURE__*/__webpack_require__.n(straight_point);
43448
44749
 
43449
44750
  // EXTERNAL MODULE: ./src/components/bit-oval-mode/oval-outlined.svg
43450
- var oval_outlined = __webpack_require__(73);
44751
+ var oval_outlined = __webpack_require__(74);
43451
44752
  var oval_outlined_default = /*#__PURE__*/__webpack_require__.n(oval_outlined);
43452
44753
 
43453
44754
  // EXTERNAL MODULE: ./src/components/bit-rect-mode/rectangle-outlined.svg
43454
- var rectangle_outlined = __webpack_require__(74);
44755
+ var rectangle_outlined = __webpack_require__(75);
43455
44756
  var rectangle_outlined_default = /*#__PURE__*/__webpack_require__.n(rectangle_outlined);
43456
44757
 
43457
44758
  // CONCATENATED MODULE: ./src/components/mode-tools/mode-tools.jsx
@@ -44272,7 +45573,7 @@ var tools_oval_tool_OvalTool = /*#__PURE__*/function (_paper$Tool) {
44272
45573
  }(paper_full_default.a.Tool);
44273
45574
  /* harmony default export */ var tools_oval_tool = (tools_oval_tool_OvalTool);
44274
45575
  // EXTERNAL MODULE: ./src/components/oval-mode/oval.svg
44275
- var oval_mode_oval = __webpack_require__(75);
45576
+ var oval_mode_oval = __webpack_require__(76);
44276
45577
  var oval_mode_oval_default = /*#__PURE__*/__webpack_require__.n(oval_mode_oval);
44277
45578
 
44278
45579
  // CONCATENATED MODULE: ./src/components/oval-mode/oval-mode.jsx
@@ -44656,7 +45957,7 @@ var tools_rect_tool_RectTool = /*#__PURE__*/function (_paper$Tool) {
44656
45957
  }(paper_full_default.a.Tool);
44657
45958
  /* harmony default export */ var tools_rect_tool = (tools_rect_tool_RectTool);
44658
45959
  // EXTERNAL MODULE: ./src/components/rect-mode/rectangle.svg
44659
- var rect_mode_rectangle = __webpack_require__(76);
45960
+ var rect_mode_rectangle = __webpack_require__(77);
44660
45961
  var rect_mode_rectangle_default = /*#__PURE__*/__webpack_require__.n(rect_mode_rectangle);
44661
45962
 
44662
45963
  // CONCATENATED MODULE: ./src/components/rect-mode/rect-mode.jsx
@@ -45644,7 +46945,7 @@ var reshape_tool_ReshapeTool = /*#__PURE__*/function (_paper$Tool) {
45644
46945
  }(paper_full_default.a.Tool);
45645
46946
  /* harmony default export */ var reshape_tool = (reshape_tool_ReshapeTool);
45646
46947
  // EXTERNAL MODULE: ./src/components/reshape-mode/reshape.svg
45647
- var reshape = __webpack_require__(77);
46948
+ var reshape = __webpack_require__(78);
45648
46949
  var reshape_default = /*#__PURE__*/__webpack_require__.n(reshape);
45649
46950
 
45650
46951
  // CONCATENATED MODULE: ./src/components/reshape-mode/reshape-mode.jsx
@@ -46004,7 +47305,7 @@ var selection_tools_select_tool_SelectTool = /*#__PURE__*/function (_paper$Tool)
46004
47305
  }(paper_full_default.a.Tool);
46005
47306
  /* harmony default export */ var selection_tools_select_tool = (selection_tools_select_tool_SelectTool);
46006
47307
  // EXTERNAL MODULE: ./src/components/select-mode/select.svg
46007
- var select_mode_select = __webpack_require__(78);
47308
+ var select_mode_select = __webpack_require__(79);
46008
47309
  var select_default = /*#__PURE__*/__webpack_require__.n(select_mode_select);
46009
47310
 
46010
47311
  // CONCATENATED MODULE: ./src/components/select-mode/select-mode.jsx
@@ -46862,7 +48163,7 @@ var text_tool_TextTool = /*#__PURE__*/function (_paper$Tool) {
46862
48163
  }(paper_full_default.a.Tool);
46863
48164
  /* harmony default export */ var text_tool = (text_tool_TextTool);
46864
48165
  // EXTERNAL MODULE: ./src/components/text-mode/text.svg
46865
- var text_mode_text = __webpack_require__(79);
48166
+ var text_mode_text = __webpack_require__(80);
46866
48167
  var text_default = /*#__PURE__*/__webpack_require__.n(text_mode_text);
46867
48168
 
46868
48169
  // CONCATENATED MODULE: ./src/components/text-mode/text-mode.jsx
@@ -46885,7 +48186,7 @@ text_mode_TextModeComponent.propTypes = {
46885
48186
  };
46886
48187
  /* harmony default export */ var text_mode = (text_mode_TextModeComponent);
46887
48188
  // EXTERNAL MODULE: ./src/components/bit-text-mode/text.svg
46888
- var bit_text_mode_text = __webpack_require__(80);
48189
+ var bit_text_mode_text = __webpack_require__(81);
46889
48190
  var bit_text_mode_text_default = /*#__PURE__*/__webpack_require__.n(bit_text_mode_text);
46890
48191
 
46891
48192
  // CONCATENATED MODULE: ./src/components/bit-text-mode/bit-text-mode.jsx
@@ -47141,15 +48442,15 @@ var icons_bitmap = __webpack_require__(44);
47141
48442
  var bitmap_default = /*#__PURE__*/__webpack_require__.n(icons_bitmap);
47142
48443
 
47143
48444
  // EXTERNAL MODULE: ./src/components/paint-editor/icons/zoom-in.svg
47144
- var zoom_in = __webpack_require__(81);
48445
+ var zoom_in = __webpack_require__(82);
47145
48446
  var zoom_in_default = /*#__PURE__*/__webpack_require__.n(zoom_in);
47146
48447
 
47147
48448
  // EXTERNAL MODULE: ./src/components/paint-editor/icons/zoom-out.svg
47148
- var zoom_out = __webpack_require__(82);
48449
+ var zoom_out = __webpack_require__(83);
47149
48450
  var zoom_out_default = /*#__PURE__*/__webpack_require__.n(zoom_out);
47150
48451
 
47151
48452
  // EXTERNAL MODULE: ./src/components/paint-editor/icons/zoom-reset.svg
47152
- var zoom_reset = __webpack_require__(83);
48453
+ var zoom_reset = __webpack_require__(84);
47153
48454
  var zoom_reset_default = /*#__PURE__*/__webpack_require__.n(zoom_reset);
47154
48455
 
47155
48456
  // CONCATENATED MODULE: ./src/components/paint-editor/paint-editor.jsx